/**
 * Shared mobile event participation shortcut.
 * No theme-specific overrides or duplicated checkout/business logic.
 * --site-button / --site-button-text / --site-text / --site-border are
 * already provided per organizer/theme by the canonical public layout.
 */
.probpr-site .probpr-event-mobile-bar {
    display: none;
}

@media (max-width: 899.98px) {
    body.probpr-site-body.probpr-has-event-mobile-bar {
        padding-bottom: calc(92px + env(safe-area-inset-bottom, 0px));
    }

    .probpr-site .probpr-event-mobile-bar:not([hidden]) {
        position: fixed;
        z-index: 60;
        left: max(12px, env(safe-area-inset-left, 0px));
        right: max(12px, env(safe-area-inset-right, 0px));
        bottom: calc(12px + env(safe-area-inset-bottom, 0px));
        display: flex;
        align-items: center;
        justify-content: space-between;
        gap: 12px;
        max-width: 680px;
        margin-inline: auto;
        padding: 10px 10px 10px 16px;
        border: 1px solid var(--site-border, #dce6f0);
        border-radius: 16px;
        background: var(--site-card, #fff);
        color: var(--site-text, #173b66);
        box-shadow: 0 18px 40px -18px rgba(23, 59, 102, .38);
        box-sizing: border-box;
        transition: transform .25s ease, opacity .25s ease;
    }

    .probpr-site .probpr-event-mobile-bar.is-away {
        transform: translateY(calc(100% + 32px + env(safe-area-inset-bottom, 0px)));
        opacity: 0;
        pointer-events: none;
    }

    .probpr-site .probpr-event-mobile-bar__info {
        display: grid;
        flex: 1 1 auto;
        gap: 2px;
        min-width: 0;
    }

    .probpr-site .probpr-event-mobile-bar__price {
        display: block;
        min-width: 0;
        color: var(--site-text, #173b66);
        font: inherit;
        font-size: clamp(15px, 4.6vw, 19px);
        font-weight: 750;
        line-height: 1.2;
        white-space: nowrap;
        overflow: hidden;
        text-overflow: ellipsis;
        font-variant-numeric: lining-nums tabular-nums;
    }

    .probpr-site .probpr-event-mobile-bar__price[hidden] {
        display: none;
    }

    .probpr-site .probpr-event-mobile-bar__meta {
        display: block;
        min-width: 0;
        overflow: hidden;
        color: var(--site-muted, #64748b);
        font: inherit;
        font-size: 12px;
        font-weight: 600;
        line-height: 1.3;
        white-space: nowrap;
        text-overflow: ellipsis;
    }

    .probpr-site a.probpr-event-mobile-bar__cta {
        display: inline-flex;
        flex: 0 1 auto;
        align-items: center;
        justify-content: center;
        max-width: 55%;
        min-height: 46px;
        padding: 9px 14px;
        border: 0;
        border-radius: 12px;
        background: var(--site-button, #1647ff);
        color: var(--site-button-text, #fff);
        font: inherit;
        font-size: 14px;
        font-weight: 700;
        line-height: 1.2;
        text-align: center;
        text-decoration: none;
        box-sizing: border-box;
        white-space: normal;
        overflow-wrap: normal;
    }

    .probpr-site a.probpr-event-mobile-bar__cta:focus-visible {
        outline: 3px solid var(--site-primary, #2563eb);
        outline-offset: 3px;
    }
}

@media (prefers-reduced-motion: reduce) {
    .probpr-site .probpr-event-mobile-bar:not([hidden]) {
        transition: none;
    }
}
