.flow-booking-cart {
    margin-bottom: 30px;
}

.flow-booking-cart__items {
    display: grid;
    gap: 12px;
}

.flow-booking-cart__item {
    display: flex;
    justify-content: space-between;
    align-items: center;
    gap: 20px;
    padding: 16px;
    border: 1px solid var(--color-content-border);
    border-radius: 8px;
    background: var(--color-content-bg);
    transition: border-color 0.2s ease, box-shadow 0.2s ease;
}

.flow-booking-cart__content {
    min-width: 0;
}

.flow-booking-cart__content strong {
    display: inline-block;
    margin-bottom: 4px;
}

.flow-booking-cart__content a {
    color: inherit;
    text-decoration: none;
}

.flow-booking-cart__content a:hover {
    text-decoration: underline;
}

.flow-booking-cart__content span {
    display: inline-block;
    opacity: 0.8;
}

.flow-booking-cart__actions {
    display: flex;
    align-items: center;
    gap: 12px;
    flex-shrink: 0;
}

.flow-booking-cart__actions a,
.flow-remove-booking-artist {
    font-size: 14px;
}

.flow-remove-booking-artist {
    padding: 0;
    border: 0;
    background: none;
    color: inherit;
    cursor: pointer;
    text-decoration: underline;
}

.flow-remove-booking-artist:hover {
    opacity: 0.7;
}

.flow-booking-cart__empty,
.flow-booking-cart__notice {
    padding: 20px;
    border: 1px dashed var(--color-content-border);
    border-radius: 8px;
}

.flow-booking-cart__empty p,
.flow-booking-cart__notice p {
    margin-bottom: 16px;
}

.flow-booking-cart__notice p:last-child {
    margin-bottom: 0;
}

.flow-booking-cart__shared-notice {
    padding: 16px 18px;
    border: 1px solid rgba(0, 128, 0, 0.18);
    border-radius: 8px;
    background: rgba(0, 128, 0, 0.06);
}

.flow-booking-cart__shared-notice strong {
    display: block;
    margin-bottom: 4px;
    color: #1f7a1f;
}

.flow-booking-cart__shared-notice p {
    margin: 0;
}

#flow-booking-option {
    width: 100%;
}

.flow-booking-popup__artist {
    font-weight: 600;
}

.flow-booking-message {
    display: none;
    margin-top: 12px;
    padding: 12px 14px;
    border-radius: 8px;
    background: rgba(0, 128, 0, 0.08);
    color: #1f7a1f;
    font-weight: 600;
}

.flow-booking-message.is-visible {
    display: block;
}

.flow-view-booking-cart-link {
    display: none !important;
    margin-top: 12px;
}

.flow-view-booking-cart-link.is-visible {
    display: inline-block !important;
}

.flow-add-selected-artist.is-added {
    pointer-events: none;
    opacity: 0.8;
}

.flow-add-selected-artist.is-hidden {
    display: none !important;
}

.selected-artists-field.gf-hidden {
    display: none !important;
}

.single-artiest .flow-open-booking-popup {
    width: 100%;
}

.single-artiest #offerte-aanvragen {
    display: none;
}

/* Deelbare link */
.flow-booking-cart__share {
    margin-top: 12px;
}

.flow-share-booking-cart.is-hidden {
    display: none !important;
}

.flow-booking-cart__share.is-hidden {
    display: none;
}

.flow-booking-cart__share-result {
    margin-top: 12px;
}

.flow-booking-cart__share-result p {
    margin-bottom: 10px;
}

.flow-booking-cart__share-box,
.flow-booking-cart__share-error {
    padding: 16px 18px;
    border-radius: 8px;
}

.flow-booking-cart__share-box {
    border: 1px solid var(--color-content-border);
    background: var(--color-content-bg);
}

.flow-booking-cart__share-error {
    border: 1px solid rgba(180, 0, 0, 0.2);
    background: rgba(180, 0, 0, 0.06);
}

.flow-booking-cart__share-box strong {
    display: block;
    margin-bottom: 4px;
}

.flow-booking-cart__share-box p,
.flow-booking-cart__share-error p {
    margin-bottom: 12px;
}

.flow-booking-cart__share-box p:last-child,
.flow-booking-cart__share-error p:last-child {
    margin-bottom: 0;
}

.flow-booking-cart__share-field {
    display: flex;
    align-items: center;
    gap: 10px;
}

.flow-booking-cart__share-input {
    width: 100%;
    min-height: 44px;
}

.flow-share-booking-cart.is-loading {
    opacity: 0.7;
    pointer-events: none;
}

.flow-copy-booking-cart-link {
    flex-shrink: 0;
}

@media (max-width: 767px) {
    .flow-booking-cart__item {
        align-items: flex-start;
        flex-direction: column;
    }

    .flow-booking-cart__actions {
        width: 100%;
        justify-content: space-between;
    }

    .flow-booking-cart__share-field {
        align-items: stretch;
        flex-direction: column;
    }

    .flow-copy-booking-cart-link {
        width: 100%;
    }
}