/* Checkout page custom fixes */
.checkout-card,
.checkout-summary,
.checkout-success-card {
    background: var(--bs-body-bg, #fff);
}

.checkout-card input,
.checkout-card select,
.checkout-card textarea {
    width: 100%;
}

.checkout-summary {
    position: relative;
}

.checkout-item:first-child {
    border-top: 0 !important;
    padding-top: 0 !important;
}

.checkout-submit-btn.is-loading {
    opacity: .75;
    pointer-events: none;
}

.checkout-success-icon {
    width: 74px;
    height: 74px;
    background: #e9f8ef;
    color: #198754;
    font-size: 38px;
}

.alert {
    padding: 14px 18px;
    border-radius: 8px;
}
.alert-danger {
    background: #fff1f1;
    color: #bb2d3b;
    border: 1px solid #f5c2c7;
}
.alert-warning {
    background: #fff8e6;
    color: #8a6500;
    border: 1px solid #ffe08a;
}

@media (max-width: 767px) {
    .checkout-item-img {
        width: 72px !important;
    }
    .checkout-item-info {
        width: calc(100% - 72px) !important;
    }
}

/* Delivery options */
.checkout-delivery-option {
    cursor: pointer;
    transition: border-color .18s ease, box-shadow .18s ease, transform .18s ease;
}
.checkout-delivery-option input[type="radio"] {
    width: auto;
    margin-top: 4px;
}
.checkout-delivery-option.is-selected {
    border-color: var(--bs-primary, #111) !important;
    box-shadow: 0 8px 22px rgba(0,0,0,.06);
}
.checkout-delivery-option:hover {
    transform: translateY(-1px);
}


/* Gift card checkout */
.gift-card-message.text-success { color: #198754 !important; }
.gift-card-message.text-danger { color: #dc3545 !important; }
.gift-card-input { text-transform: uppercase; }
.gift-card-check-btn { min-width: 110px; }

/* Checkout saved address auto-fill */
.checkout-address-option {
    cursor: pointer;
    transition: all .2s ease;
}
.checkout-address-option:hover,
.checkout-address-option.is-selected {
    border-color: currentColor;
    box-shadow: 0 8px 24px rgba(0,0,0,.06);
}
.checkout-small-badge {
    display: inline-flex;
    align-items: center;
    padding: 2px 8px;
    border-radius: 999px;
    font-size: 11px;
    line-height: 1.3;
    background: rgba(25,135,84,.12);
    color: #198754;
    font-weight: 600;
}
.checkout-new-address-fields.d-none,
.checkout-selected-note.d-none {
    display: none !important;
}

/* Checkout account/login options */
.checkout-auth-card {
    background: var(--bs-body-bg, #fff);
}
.checkout-auth-card-success {
    background: rgba(25, 135, 84, .06);
}
.checkout-login-form input {
    width: 100%;
}
.checkout-choice-box {
    cursor: pointer;
    transition: border-color .18s ease, box-shadow .18s ease, transform .18s ease;
}
.checkout-choice-box input[type="radio"] {
    width: auto;
    margin-top: 4px;
}
.checkout-choice-box.is-selected,
.checkout-choice-box:hover {
    border-color: currentColor;
    box-shadow: 0 8px 24px rgba(0,0,0,.06);
}
.checkout-create-account-card.d-none {
    display: none !important;
}
.gap-10 { gap: 10px; }

/* Simple checkout UX */
.checkout-top-note {
    background: var(--bs-body-bg, #fff);
}
.checkout-top-note-logged {
    background: rgba(25, 135, 84, .06);
}
.checkout-create-inline {
    padding-top: 14px;
    border-top: 1px solid rgba(0,0,0,.08);
}
.checkout-create-label {
    align-items: flex-start;
}
.checkout-create-account-inline {
    padding: 18px;
    border: 1px solid rgba(0,0,0,.08);
    border-radius: 10px;
    background: rgba(0,0,0,.015);
}
.checkout-create-account-inline.d-none {
    display: none !important;
}
.font-13 { font-size: 13px; }
