.booking-step > .booking-refresh {
    grid-column: 2;
    justify-self: stretch;
    width: 100%;
    min-width: 0;
    min-height: 50px;
    margin: 2px 0 0;
    padding: 14px 20px;
    border: 0 !important;
    border-radius: 13px;
    background: var(--business-accent, #fa6b59) !important;
    color: #fff !important;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 10px;
    font-size: 13px !important;
    font-weight: 800 !important;
    line-height: 1.2;
    letter-spacing: .01em;
    text-align: center;
    white-space: nowrap;
    cursor: pointer;
    box-shadow: 0 12px 28px rgba(242, 111, 91, .24);
    transition: transform .18s ease, box-shadow .18s ease, filter .18s ease;
}

.booking-step > .booking-refresh::before { content: "◷"; font-size: 18px; line-height: 1; }
.booking-step > .booking-refresh::after { content: "→"; margin-left: 2px; font-size: 17px; line-height: 1; transition: transform .18s ease; }
.booking-step > .booking-refresh:hover { filter: brightness(.96); transform: translateY(-1px); box-shadow: 0 15px 32px rgba(242, 111, 91, .32); }
.booking-step > .booking-refresh:hover::after { transform: translateX(3px); }
.booking-step > .booking-refresh:active { transform: translateY(0); }
.booking-step > .booking-refresh:focus-visible { outline: 3px solid rgba(242, 111, 91, .25); outline-offset: 3px; }
.booking-step > .booking-refresh:disabled { cursor: wait; opacity: .68; transform: none; }

@media (max-width: 520px) {
    .booking-step > .booking-refresh { min-height: 52px; font-size: 14px !important; }
}
