@import '_content/Blazor.Bootstrap/Blazor.Bootstrap.bundle.scp.css';
@import '_content/BlazorFlags/BlazorFlags.bundle.scp.css';
@import '_content/Havit.Blazor.Components.Web.Bootstrap/Havit.Blazor.Components.Web.Bootstrap.bundle.scp.css';
@import '_content/PSC.Blazor.Components.Icons/PSC.Blazor.Components.Icons.bundle.scp.css';

/* _content/Apps.TicketPulse/Components/Layout/Dashbaord/MainLayout.razor.rz.scp.css */


#blazor-error-ui[b-eth5v64x80] {
    background: lightyellow;
    bottom: 0;
    box-shadow: 0 -1px 2px rgba(0, 0, 0, 0.2);
    display: none;
    left: 0;
    padding: 0.6rem 1.25rem 0.7rem 1.25rem;
    position: fixed;
    width: 100%;
    z-index: 1000;
}

    #blazor-error-ui .dismiss[b-eth5v64x80] {
        cursor: pointer;
        position: absolute;
        right: 0.75rem;
        top: 0.5rem;
    }
/* _content/Apps.TicketPulse/Components/Layout/MainLayout.razor.rz.scp.css */


#blazor-error-ui[b-408cy2s5a1] {
    background: lightyellow;
    bottom: 0;
    box-shadow: 0 -1px 2px rgba(0, 0, 0, 0.2);
    display: none;
    left: 0;
    padding: 0.6rem 1.25rem 0.7rem 1.25rem;
    position: fixed;
    width: 100%;
    z-index: 1000;
}

    #blazor-error-ui .dismiss[b-408cy2s5a1] {
        cursor: pointer;
        position: absolute;
        right: 0.75rem;
        top: 0.5rem;
    }
/* _content/Apps.TicketPulse/Components/Layout/NavMenu.razor.rz.scp.css */
.navbar-brand[b-0wcbjgmhcu] {
    font-size: 1.1rem;
}

.nav-item[b-0wcbjgmhcu] {
    font-size: 1rem;
    padding-bottom: 0;
}

    .nav-item[b-0wcbjgmhcu]  .nav-link {
        color: #39364f;
        background: none;
        border: none;
        border-radius: 4px;
        display: flex;
        align-items: center;
        padding: 0.5rem 0.7rem;
    }

.nav-item[b-0wcbjgmhcu]  a.active {
    color: #440099;
    font-weight: 500;
}

.nav-item[b-0wcbjgmhcu]  .nav-link:hover {
    color: #440099;
}

[b-0wcbjgmhcu] .nav-icon-link {
    color: #39364f;
    font-size: 1.25rem;
    text-decoration: none;
    transition: color 0.2s;
    display: flex;
    align-items: center;
}

[b-0wcbjgmhcu] .nav-icon-link:hover,
[b-0wcbjgmhcu] .nav-icon-link.active {
    color: #440099;
}

@media (max-width: 991px) {
    .nav-item[b-0wcbjgmhcu] {
        padding-bottom: 0.25rem;
    }

    .nav-item:first-of-type[b-0wcbjgmhcu] {
        padding-top: 0.5rem;
    }

    .nav-item:last-of-type[b-0wcbjgmhcu] {
        padding-bottom: 0.5rem;
    }
}
/* _content/Apps.TicketPulse/Components/Pages/Account/Login.razor.rz.scp.css */
[b-gqrz4eoy5w] .account-page {
    min-height: 100vh;
    background-color: #f8f7fa;
    padding: 100px 0 60px;
}

[b-gqrz4eoy5w] .login-card {
    background: #fff;
    border-radius: 16px;
    padding: 40px;
    box-shadow: 0 4px 24px rgba(68, 0, 153, 0.08);
    border: 1px solid #eeedf2;
}

[b-gqrz4eoy5w] .login-title {
    font-size: 1.6rem;
    font-weight: 800;
    color: #39364f;
}

[b-gqrz4eoy5w] .login-subtitle {
    color: #6f7287;
    font-size: 0.95rem;
}

[b-gqrz4eoy5w] .login-form .form-control {
    border-color: #eeedf2;
    font-size: 1rem;
    padding: 12px 16px;
}

[b-gqrz4eoy5w] .login-form .form-control:focus {
    border-color: #440099;
    box-shadow: 0 0 0 0.2rem rgba(68, 0, 153, 0.15);
}

[b-gqrz4eoy5w] .login-form .input-group-text {
    background: #f8f7fa;
    border-color: #eeedf2;
    color: #440099;
}

[b-gqrz4eoy5w] .login-btn {
    background: #440099;
    border-color: #440099;
    font-weight: 600;
    padding: 12px;
    border-radius: 10px;
}

[b-gqrz4eoy5w] .login-btn:hover {
    background: #350077;
    border-color: #350077;
}

[b-gqrz4eoy5w] .divider {
    display: flex;
    align-items: center;
    text-align: center;
    color: #6f7287;
    font-size: 0.85rem;
}

[b-gqrz4eoy5w] .divider::before,
[b-gqrz4eoy5w] .divider::after {
    content: "";
    flex: 1;
    border-bottom: 1px solid #eeedf2;
}

[b-gqrz4eoy5w] .divider span {
    padding: 0 16px;
}

[b-gqrz4eoy5w] .magic-link-sent .sent-icon {
    font-size: 3rem;
    color: #440099;
}

[b-gqrz4eoy5w] .verification-input {
    font-size: 1.5rem;
    font-weight: 700;
    letter-spacing: 8px;
    color: #440099;
}

[b-gqrz4eoy5w] .btn-link {
    color: #440099;
    text-decoration: none;
}

[b-gqrz4eoy5w] .btn-link:hover {
    color: #350077;
    text-decoration: underline;
}

@media (max-width: 767px) {
    [b-gqrz4eoy5w] .login-card {
        padding: 24px;
        margin: 0 8px;
    }
}
/* _content/Apps.TicketPulse/Components/Pages/Account/MyAccount.razor.rz.scp.css */
[b-1dn5x0z4a6] .account-page {
    min-height: 100vh;
    background-color: #f8f7fa;
}

[b-1dn5x0z4a6] .account-header {
    background: linear-gradient(135deg, #440099 0%, #764ba2 100%);
    padding: 100px 0 32px;
    color: #fff;
}

[b-1dn5x0z4a6] .account-header h1 {
    font-size: 1.8rem;
    font-weight: 800;
}

[b-1dn5x0z4a6] .account-sidebar {
    background: #fff;
    border-radius: 12px;
    padding: 8px;
    box-shadow: 0 2px 12px rgba(68, 0, 153, 0.06);
    border: 1px solid #eeedf2;
}

[b-1dn5x0z4a6] .account-nav-item {
    display: flex;
    align-items: center;
    padding: 12px 16px;
    border-radius: 8px;
    color: #39364f;
    text-decoration: none;
    font-weight: 500;
    cursor: pointer;
    transition: all 0.2s;
}

[b-1dn5x0z4a6] .account-nav-item:hover {
    background: #f8f7fa;
    color: #440099;
}

[b-1dn5x0z4a6] .account-nav-item.active {
    background: rgba(68, 0, 153, 0.08);
    color: #440099;
    font-weight: 600;
}

[b-1dn5x0z4a6] .content-card {
    background: #fff;
    border-radius: 12px;
    box-shadow: 0 2px 12px rgba(68, 0, 153, 0.06);
    border: 1px solid #eeedf2;
    overflow: hidden;
}

[b-1dn5x0z4a6] .content-card-header {
    padding: 20px 24px;
    border-bottom: 1px solid #eeedf2;
    background: #faf9fc;
}

[b-1dn5x0z4a6] .content-card-header h4,
[b-1dn5x0z4a6] .content-card-header h5 {
    color: #39364f;
    font-weight: 700;
}

[b-1dn5x0z4a6] .content-card-body {
    padding: 24px;
}

[b-1dn5x0z4a6] .order-card {
    padding: 16px 20px;
    border: 1px solid #eeedf2;
    border-radius: 10px;
    margin-bottom: 12px;
    cursor: pointer;
    transition: all 0.2s;
}

[b-1dn5x0z4a6] .order-card:hover {
    border-color: #440099;
    box-shadow: 0 2px 8px rgba(68, 0, 153, 0.1);
}

[b-1dn5x0z4a6] .order-title {
    font-weight: 700;
    color: #39364f;
    display: block;
    font-size: 0.95rem;
}

[b-1dn5x0z4a6] .order-date {
    font-size: 0.82rem;
    color: #6f7287;
    display: block;
}

[b-1dn5x0z4a6] .order-items-count {
    color: #6f7287;
    font-size: 0.9rem;
}

[b-1dn5x0z4a6] .order-total {
    font-weight: 700;
    color: #39364f;
}

[b-1dn5x0z4a6] .order-status {
    display: inline-block;
    padding: 4px 12px;
    border-radius: 20px;
    font-size: 0.78rem;
    font-weight: 600;
}

[b-1dn5x0z4a6] .status-pending {
    background: #fff3cd;
    color: #856404;
}

[b-1dn5x0z4a6] .status-processing {
    background: #cce5ff;
    color: #004085;
}

[b-1dn5x0z4a6] .status-complete {
    background: #d4edda;
    color: #155724;
}

[b-1dn5x0z4a6] .status-cancelled {
    background: #f8d7da;
    color: #721c24;
}

[b-1dn5x0z4a6] .empty-state {
    text-align: center;
    padding: 48px 24px;
}

[b-1dn5x0z4a6] .empty-state i {
    font-size: 3rem;
    color: #eeedf2;
    display: block;
    margin-bottom: 16px;
}

[b-1dn5x0z4a6] .empty-state h5 {
    color: #39364f;
    font-weight: 700;
}

[b-1dn5x0z4a6] .empty-state .btn-primary {
    background: #440099;
    border-color: #440099;
}

[b-1dn5x0z4a6] .payment-plan-card {
    padding: 16px 20px;
    border: 1px solid #eeedf2;
    border-radius: 10px;
    margin-bottom: 12px;
    background: #faf9fc;
}

[b-1dn5x0z4a6] .plan-title {
    font-weight: 700;
    color: #39364f;
    display: block;
}

[b-1dn5x0z4a6] .plan-date {
    font-size: 0.82rem;
    color: #6f7287;
    display: block;
}

[b-1dn5x0z4a6] .plan-total {
    font-weight: 600;
    color: #39364f;
}

[b-1dn5x0z4a6] .plan-status {
    display: inline-block;
    padding: 4px 12px;
    border-radius: 20px;
    font-size: 0.78rem;
    font-weight: 600;
}

[b-1dn5x0z4a6] .contact-form .form-control {
    border-color: #eeedf2;
    padding: 10px 14px;
}

[b-1dn5x0z4a6] .contact-form .form-control:focus {
    border-color: #440099;
    box-shadow: 0 0 0 0.2rem rgba(68, 0, 153, 0.15);
}

[b-1dn5x0z4a6] .contact-form .btn-primary {
    background: #440099;
    border-color: #440099;
    font-weight: 600;
    padding: 10px 24px;
    border-radius: 8px;
}

[b-1dn5x0z4a6] .contact-form .btn-primary:hover {
    background: #350077;
}

[b-1dn5x0z4a6] .btn-outline-light:hover {
    background: rgba(255, 255, 255, 0.15);
}

@media (max-width: 991px) {
    [b-1dn5x0z4a6] .account-sidebar {
        margin-bottom: 20px;
    }

    [b-1dn5x0z4a6] .account-nav {
        display: flex;
        gap: 4px;
    }

    [b-1dn5x0z4a6] .account-nav-item {
        flex: 1;
        justify-content: center;
        font-size: 0.85rem;
        padding: 10px 8px;
    }
}

@media (max-width: 767px) {
    [b-1dn5x0z4a6] .order-card .row > div {
        margin-bottom: 8px;
    }
}
/* _content/Apps.TicketPulse/Components/Pages/Account/OrderDetail.razor.rz.scp.css */
[b-6kf2o0ciqp] .account-page {
    min-height: 100vh;
    background-color: #f8f7fa;
}

[b-6kf2o0ciqp] .account-header {
    background: linear-gradient(135deg, #440099 0%, #764ba2 100%);
    padding: 100px 0 32px;
    color: #fff;
}

[b-6kf2o0ciqp] .account-header h1 {
    font-size: 1.5rem;
    font-weight: 800;
}

[b-6kf2o0ciqp] .content-card {
    background: #fff;
    border-radius: 12px;
    box-shadow: 0 2px 12px rgba(68, 0, 153, 0.06);
    border: 1px solid #eeedf2;
    overflow: hidden;
}

[b-6kf2o0ciqp] .content-card-header {
    padding: 20px 24px;
    border-bottom: 1px solid #eeedf2;
    background: #faf9fc;
}

[b-6kf2o0ciqp] .content-card-header h4,
[b-6kf2o0ciqp] .content-card-header h5 {
    color: #39364f;
    font-weight: 700;
}

[b-6kf2o0ciqp] .content-card-body {
    padding: 24px;
}

[b-6kf2o0ciqp] .order-item-row {
    padding: 14px 0;
    border-bottom: 1px solid #f0f0f0;
}

[b-6kf2o0ciqp] .order-item-row:last-child {
    border-bottom: none;
}

[b-6kf2o0ciqp] .item-name {
    font-weight: 600;
    color: #39364f;
    display: block;
}

[b-6kf2o0ciqp] .item-attr {
    font-size: 0.85rem;
    color: #6f7287;
    display: block;
    margin-top: 2px;
}

[b-6kf2o0ciqp] .item-qty {
    color: #4b415f;
    font-weight: 700;
    background: #f2eaff;
    border-radius: 999px;
    padding: 4px 10px;
    display: inline-block;
}

[b-6kf2o0ciqp] .item-price {
    font-weight: 700;
    color: #39364f;
}

[b-6kf2o0ciqp] .summary-row {
    display: flex;
    justify-content: space-between;
    padding: 8px 0;
    color: #6f7287;
}

[b-6kf2o0ciqp] .summary-row.total {
    font-weight: 800;
    color: #39364f;
    font-size: 1.1rem;
}

[b-6kf2o0ciqp] .detail-row {
    display: flex;
    justify-content: space-between;
    gap: 16px;
    padding: 8px 0;
    border-bottom: 1px solid #f8f7fa;
}

[b-6kf2o0ciqp] .detail-row span:last-child {
    text-align: right;
    overflow-wrap: anywhere;
}

[b-6kf2o0ciqp] .detail-row:last-child {
    border-bottom: none;
}

[b-6kf2o0ciqp] .detail-label {
    color: #6f7287;
    font-size: 0.9rem;
}

[b-6kf2o0ciqp] .order-status {
    display: inline-block;
    padding: 4px 12px;
    border-radius: 20px;
    font-size: 0.78rem;
    font-weight: 600;
}

[b-6kf2o0ciqp] .status-pending {
    background: #fff3cd;
    color: #856404;
}

[b-6kf2o0ciqp] .status-processing {
    background: #cce5ff;
    color: #004085;
}

[b-6kf2o0ciqp] .status-complete {
    background: #d4edda;
    color: #155724;
}

[b-6kf2o0ciqp] .status-cancelled {
    background: #f8d7da;
    color: #721c24;
}

[b-6kf2o0ciqp] .stripe-portal-section {
    padding: 20px;
    background: #f8f7fa;
    border-radius: 10px;
    border: 1px solid #eeedf2;
}

[b-6kf2o0ciqp] .stripe-icon {
    width: 48px;
    height: 48px;
    background: linear-gradient(135deg, #635bff, #7a73ff);
    border-radius: 10px;
    display: flex;
    align-items: center;
    justify-content: center;
    color: #fff;
    font-size: 1.4rem;
}

[b-6kf2o0ciqp] .stripe-portal-section .btn-primary {
    background: #440099;
    border-color: #440099;
    font-weight: 600;
    border-radius: 8px;
    white-space: nowrap;
}

[b-6kf2o0ciqp] .stripe-portal-section .btn-primary:hover {
    background: #350077;
}

[b-6kf2o0ciqp] .btn-outline-light:hover {
    background: rgba(255, 255, 255, 0.15);
}

[b-6kf2o0ciqp] .empty-order-icon {
    font-size: 3rem;
    color: #8b5cf6;
}

[b-6kf2o0ciqp] .ticket-count {
    color: #440099;
    background: #f2eaff;
    border-radius: 999px;
    padding: 4px 10px;
    font-size: 0.78rem;
    font-weight: 700;
}

[b-6kf2o0ciqp] .ticket-link-list {
    display: grid;
    gap: 10px;
}

[b-6kf2o0ciqp] .ticket-link-row {
    display: flex;
    justify-content: space-between;
    align-items: center;
    color: #39364f;
    background: #fbfaff;
    border: 1px solid #eee7ff;
    border-radius: 10px;
    padding: 12px 14px;
    text-decoration: none;
    font-weight: 700;
}

[b-6kf2o0ciqp] .ticket-link-row:hover {
    color: #440099;
    border-color: #d8c5ff;
}

[b-6kf2o0ciqp] .tickets-empty {
    display: flex;
    align-items: center;
    gap: 14px;
    color: #6f7287;
}

[b-6kf2o0ciqp] .tickets-empty > i {
    width: 44px;
    height: 44px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    border-radius: 12px;
    background: #f2eaff;
    color: #440099;
    font-size: 1.2rem;
}

[b-6kf2o0ciqp] .tickets-empty h6 {
    color: #39364f;
    font-weight: 700;
    margin: 0 0 2px;
}

[b-6kf2o0ciqp] .tickets-empty p {
    margin: 0;
    font-size: 0.92rem;
}

@media (max-width: 767px) {
    [b-6kf2o0ciqp] .order-item-row .row > div {
        margin-bottom: 6px;
    }

    [b-6kf2o0ciqp] .tickets-empty {
        align-items: flex-start;
    }
}
/* _content/Apps.TicketPulse/Components/Pages/ActivitiesLanding.razor.rz.scp.css */
[b-4cb5w7509r] .tp-activities-landing {
    font-family: var(--bs-font-sans-serif, 'Wix Madefor Display', sans-serif);
    color: var(--text-color, #39364f);
}

[b-4cb5w7509r] .tp-act-hero {
    background: var(--gradient-primary, linear-gradient(135deg, #440099 0%, #764ba2 100%));
    padding: 60px 0 50px;
    color: #fff;
}

[b-4cb5w7509r] .tp-act-hero h1 {
    font-size: 2.4rem;
    font-weight: 900;
    margin-bottom: 8px;
}

[b-4cb5w7509r] .tp-act-hero-sub {
    font-size: 1.05rem;
    opacity: 0.85;
    margin-bottom: 32px;
}

[b-4cb5w7509r] .tp-act-search-panel {
    max-width: 1080px;
    margin: 0;
    background: #fff;
    border-radius: 10px;
    padding: 6px;
    box-shadow: 0 20px 50px rgba(20, 16, 48, 0.22), 0 2px 6px rgba(20, 16, 48, 0.08);
}

[b-4cb5w7509r] .tp-act-search-bar {
    display: grid;
    grid-template-columns: minmax(0, 2fr) minmax(0, 1.2fr) minmax(0, 1fr) minmax(0, 1fr) auto;
    align-items: stretch;
    gap: 0;
}

[b-4cb5w7509r] .tp-act-search-field {
    position: relative;
    display: flex;
    flex-direction: column;
    justify-content: center;
    gap: 4px;
    min-width: 0;
    height: 64px;
    padding: 10px 18px;
    border-radius: 6px;
    background: transparent;
    cursor: text;
    transition: background 0.18s ease;
}

[b-4cb5w7509r] .tp-act-search-field + .tp-act-search-field::before {
    content: "";
    position: absolute;
    left: 0;
    top: 20%;
    bottom: 20%;
    width: 1px;
    background: var(--medium-gray, #eeedf2);
    transition: opacity 0.18s ease;
}

[b-4cb5w7509r] .tp-act-search-field:hover {
    background: #f6f3fb;
}

[b-4cb5w7509r] .tp-act-search-field:hover::before,
[b-4cb5w7509r] .tp-act-search-field:hover + .tp-act-search-field::before,
[b-4cb5w7509r] .tp-act-search-field:focus-within::before,
[b-4cb5w7509r] .tp-act-search-field:focus-within + .tp-act-search-field::before {
    opacity: 0;
}

[b-4cb5w7509r] .tp-act-search-field:focus-within {
    background: #fff;
    box-shadow: 0 0 0 2px var(--primary-color, #440099) inset;
}

[b-4cb5w7509r] .tp-act-search-label {
    display: flex;
    align-items: center;
    gap: 6px;
    font-size: 0.7rem;
    font-weight: 700;
    line-height: 1;
    letter-spacing: 0.04em;
    color: var(--secondary-color, #39364f);
    text-transform: uppercase;
}

[b-4cb5w7509r] .tp-act-search-label i {
    color: var(--primary-color, #440099);
    font-size: 0.85rem;
}

[b-4cb5w7509r] .tp-act-search-input {
    display: block;
    width: 100%;
    min-width: 0;
    height: 22px;
    line-height: 22px;
    border: none;
    outline: none;
    background: transparent;
    font-size: 0.95rem;
    font-weight: 500;
    color: var(--text-color, #39364f);
    padding: 0;
    margin: 0;
}

[b-4cb5w7509r] .tp-act-search-input::placeholder {
    color: var(--dark-gray, #6f7287);
    font-weight: 400;
}

[b-4cb5w7509r] .tp-act-select-shell {
    position: relative;
    display: flex;
    align-items: center;
    min-width: 0;
}

[b-4cb5w7509r] .tp-act-select-shell select.tp-act-search-input {
    appearance: none;
    -webkit-appearance: none;
    padding-right: 20px;
    cursor: pointer;
}

[b-4cb5w7509r] .tp-act-select-shell > i {
    position: absolute;
    right: 0;
    top: 50%;
    transform: translateY(-50%);
    color: var(--dark-gray, #6f7287);
    font-size: 0.78rem;
    pointer-events: none;
}

[b-4cb5w7509r] .tp-act-date-field .tp-act-search-input {
    cursor: pointer;
    font-variant-numeric: tabular-nums;
}

[b-4cb5w7509r] .tp-act-date-field input[type="date"]::-webkit-calendar-picker-indicator {
    opacity: 0.55;
    cursor: pointer;
}

[b-4cb5w7509r] .tp-act-search-btn {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
    height: 64px;
    padding: 0 24px;
    min-width: 130px;
    background: var(--primary-color, #440099);
    color: #fff;
    border: none;
    font-weight: 700;
    font-size: 0.95rem;
    cursor: pointer;
    white-space: nowrap;
    border-radius: 6px;
    transition: background 0.2s ease, transform 0.15s ease, box-shadow 0.2s ease;
}

[b-4cb5w7509r] .tp-act-search-btn i {
    font-size: 1.05rem;
}

[b-4cb5w7509r] .tp-act-search-btn:hover {
    background: var(--primary-hover, #5a17b8);
    transform: translateY(-1px);
}

[b-4cb5w7509r] .tp-act-search-btn:active {
    transform: translateY(0);
}

[b-4cb5w7509r] .tp-act-search-btn:focus-visible {
    outline: 3px solid rgba(255, 255, 255, 0.6);
    outline-offset: 2px;
}

[b-4cb5w7509r] .tp-act-listing {
    padding: 40px 0;
    background: #fff;
}

[b-4cb5w7509r] .tp-act-listing h2 {
    font-size: 1.5rem;
    font-weight: 800;
    color: var(--secondary-color, #39364f);
    margin-bottom: 0;
}

[b-4cb5w7509r] .tp-act-free-toggle-wrap {
    margin-left: auto;
}

[b-4cb5w7509r] .tp-act-free-toggle {
    width: 2.5rem;
    height: 1.3rem;
    cursor: pointer;
}

[b-4cb5w7509r] .tp-act-free-toggle-label {
    font-size: 0.9rem;
    margin-bottom: 0;
    white-space: nowrap;
}

[b-4cb5w7509r] .tp-act-pagination {
    display: flex;
    justify-content: center;
    margin: 8px 0 4px;
}

[b-4cb5w7509r] .tp-act-empty {
    padding: 40px 0;
    text-align: center;
    border: 1px dashed var(--medium-gray, #eeedf2);
    border-radius: 8px;
    background: #fbfbfd;
}

[b-4cb5w7509r] .tp-act-see-all {
    color: var(--primary-color, #440099);
    font-weight: 600;
    font-size: 0.9rem;
    text-decoration: none;
    white-space: nowrap;
}

[b-4cb5w7509r] .tp-act-see-all:hover {
    text-decoration: underline;
    color: var(--primary-hover, #007bff);
}

[b-4cb5w7509r] .tp-act-card-scroll {
    display: flex;
    gap: 16px;
    overflow-x: auto;
    padding-bottom: 8px;
    scroll-snap-type: x mandatory;
}

[b-4cb5w7509r] .tp-act-card-scroll::-webkit-scrollbar {
    height: 6px;
}

[b-4cb5w7509r] .tp-act-card-scroll::-webkit-scrollbar-track {
    background: var(--light-gray, #f8f7fa);
    border-radius: 3px;
}

[b-4cb5w7509r] .tp-act-card-scroll::-webkit-scrollbar-thumb {
    background: var(--medium-gray, #eeedf2);
    border-radius: 3px;
}

[b-4cb5w7509r] .tp-act-card {
    flex: 0 0 240px;
    scroll-snap-align: start;
    border-radius: 12px;
    overflow: hidden;
    text-decoration: none;
    color: inherit;
    transition: transform 0.2s, box-shadow 0.2s;
    border: 1px solid var(--medium-gray, #eeedf2);
    background: #fff;
}

[b-4cb5w7509r] .tp-act-card:hover {
    transform: translateY(-4px);
    box-shadow: var(--shadow-lg, 0 1rem 3rem rgba(0, 0, 0, 0.175));
    color: inherit;
}

[b-4cb5w7509r] .tp-act-card-img {
    height: 180px;
    overflow: hidden;
    position: relative;
}

[b-4cb5w7509r] .tp-act-card-img img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

[b-4cb5w7509r] .tp-act-card-placeholder {
    width: 100%;
    height: 100%;
    display: flex;
    align-items: center;
    justify-content: center;
    background: var(--light-gray, #f8f7fa);
    color: var(--dark-gray, #6f7287);
    font-size: 2rem;
}

[b-4cb5w7509r] .tp-act-card-body {
    padding: 14px;
}

[b-4cb5w7509r] .tp-act-card-body h4 {
    font-size: 0.9rem;
    font-weight: 700;
    color: var(--secondary-color, #39364f);
    margin-bottom: 6px;
    line-height: 1.3;
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    overflow: hidden;
}

[b-4cb5w7509r] .tp-act-card-price {
    font-size: 0.82rem;
    font-weight: 700;
    color: var(--primary-color, #440099);
}

[b-4cb5w7509r] .tp-act-destinations {
    padding: 40px 0;
    background: var(--light-gray, #f8f7fa);
}

[b-4cb5w7509r] .tp-act-destinations h2 {
    font-size: 1.5rem;
    font-weight: 800;
    color: var(--secondary-color, #39364f);
    margin-bottom: 4px;
}

[b-4cb5w7509r] .tp-act-dest-grid {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 16px;
    margin-top: 20px;
}

[b-4cb5w7509r] .tp-act-dest-loading,
[b-4cb5w7509r] .tp-act-dest-empty {
    grid-column: 1 / -1;
}

[b-4cb5w7509r] .tp-act-dest-card {
    border-radius: 12px;
    overflow: hidden;
    cursor: pointer;
    text-decoration: none;
}

[b-4cb5w7509r] .tp-act-dest-img {
    height: 200px;
    background-size: cover;
    background-position: center;
    position: relative;
    transition: transform 0.3s;
}

[b-4cb5w7509r] .tp-act-dest-placeholder {
    background: linear-gradient(135deg, #440099 0%, #0EA5E9 100%);
}

[b-4cb5w7509r] .tp-act-dest-card:hover .tp-act-dest-img {
    transform: scale(1.03);
}

[b-4cb5w7509r] .tp-act-dest-overlay {
    position: absolute;
    bottom: 0;
    left: 0;
    right: 0;
    padding: 20px 16px 16px;
    background: linear-gradient(transparent, rgba(0,0,0,0.7));
    color: #fff;
}

[b-4cb5w7509r] .tp-act-dest-overlay h3 {
    font-size: 1.1rem;
    font-weight: 800;
    margin-bottom: 2px;
}

[b-4cb5w7509r] .tp-act-dest-overlay span {
    font-size: 0.78rem;
    opacity: 0.85;
}

[b-4cb5w7509r] .tp-act-covered {
    padding: 50px 0;
    background: #fff;
}

[b-4cb5w7509r] .tp-act-covered h2 {
    font-size: 1.5rem;
    font-weight: 800;
    color: var(--secondary-color, #39364f);
    margin-bottom: 24px;
}

[b-4cb5w7509r] .tp-act-covered-grid {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 24px;
}

[b-4cb5w7509r] .tp-act-covered-item {
    text-align: left;
}

[b-4cb5w7509r] .tp-act-covered-icon {
    font-size: 1.5rem;
    color: var(--primary-color, #440099);
    margin-bottom: 10px;
}

[b-4cb5w7509r] .tp-act-covered-item h4 {
    font-size: 1rem;
    font-weight: 800;
    color: var(--secondary-color, #39364f);
    margin-bottom: 6px;
}

[b-4cb5w7509r] .tp-act-covered-item p {
    font-size: 0.88rem;
    color: var(--dark-gray, #6f7287);
    margin: 0;
    line-height: 1.5;
}

[b-4cb5w7509r] .tp-act-cta {
    padding: 50px 0;
    background: var(--light-gray, #f8f7fa);
    border-top: 1px solid var(--medium-gray, #eeedf2);
}

[b-4cb5w7509r] .tp-act-cta h2 {
    font-size: 1.6rem;
    font-weight: 800;
    color: var(--secondary-color, #39364f);
    margin-bottom: 8px;
}

[b-4cb5w7509r] .tp-act-cta p {
    color: var(--dark-gray, #6f7287);
    margin-bottom: 20px;
}

[b-4cb5w7509r] .tp-act-cta-btn {
    background: var(--primary-color, #440099);
    border-color: var(--primary-color, #440099);
    border-radius: 8px;
    padding: 12px 32px;
    font-weight: 700;
}

[b-4cb5w7509r] .tp-act-cta-btn:hover {
    background: var(--primary-hover, #007bff);
    border-color: var(--primary-hover, #007bff);
}

@media (max-width: 992px) {
    [b-4cb5w7509r] .tp-act-dest-grid {
        grid-template-columns: repeat(2, 1fr);
    }

    [b-4cb5w7509r] .tp-act-covered-grid {
        grid-template-columns: 1fr;
        gap: 20px;
    }

    [b-4cb5w7509r] .tp-act-search-panel {
        border-radius: 8px;
        padding: 10px;
    }

    [b-4cb5w7509r] .tp-act-search-bar {
        grid-template-columns: 1fr 1fr;
        gap: 8px;
    }

    [b-4cb5w7509r] .tp-act-search-field {
        border-radius: 6px;
        height: 60px;
        padding: 10px 14px;
        border: 1px solid var(--medium-gray, #eeedf2);
        background: #fbfbfd;
    }

    [b-4cb5w7509r] .tp-act-search-field + .tp-act-search-field::before {
        display: none;
    }

    [b-4cb5w7509r] .tp-act-search-field:hover {
        background: #fbfbfd;
    }

    [b-4cb5w7509r] .tp-act-search-field:focus-within {
        background: #fff;
        box-shadow: 0 0 0 2px var(--primary-color, #440099) inset;
    }

    [b-4cb5w7509r] .tp-act-search-dest {
        grid-column: 1 / -1;
    }

    [b-4cb5w7509r] .tp-act-search-btn {
        grid-column: 1 / -1;
        width: 100%;
        height: 52px;
        margin: 4px 0 0;
        border-radius: 6px;
    }
}

@media (max-width: 576px) {
    [b-4cb5w7509r] .tp-act-hero {
        padding: 40px 0 36px;
    }

    [b-4cb5w7509r] .tp-act-hero h1 {
        font-size: 1.6rem;
    }

    [b-4cb5w7509r] .tp-act-hero-sub {
        font-size: 0.95rem;
        margin-bottom: 24px;
    }

    [b-4cb5w7509r] .tp-act-dest-grid {
        grid-template-columns: 1fr 1fr;
    }

    [b-4cb5w7509r] .tp-act-search-panel {
        padding: 8px;
        border-radius: 8px;
    }

    [b-4cb5w7509r] .tp-act-search-bar {
        grid-template-columns: 1fr;
        gap: 6px;
    }

    [b-4cb5w7509r] .tp-act-search-dest,
    [b-4cb5w7509r] .tp-act-search-btn {
        grid-column: auto;
    }

    [b-4cb5w7509r] .tp-act-search-field {
        padding: 10px 14px;
        height: 56px;
    }

    [b-4cb5w7509r] .tp-act-search-label {
        font-size: 0.66rem;
    }

    [b-4cb5w7509r] .tp-act-search-input {
        font-size: 0.95rem;
    }

    [b-4cb5w7509r] .tp-act-search-btn {
        height: 50px;
        font-size: 1rem;
    }

    [b-4cb5w7509r] .tp-act-listing .d-flex.justify-content-between {
        align-items: flex-start !important;
        flex-direction: column;
        gap: 12px;
    }

    [b-4cb5w7509r] .tp-act-free-toggle-wrap {
        margin-left: 0;
    }

    [b-4cb5w7509r] .tp-act-dest-img {
        height: 150px;
    }
}
/* _content/Apps.TicketPulse/Components/Pages/Contact.razor.rz.scp.css */
.tp-contact[b-usxfbqzgxr] {
    background: #f7f7fb;
    color: #1c1730;
    min-height: 100vh;
}

.tp-contact-loading[b-usxfbqzgxr] {
    align-items: center;
    color: #77728a;
    display: flex;
    flex-direction: column;
    gap: 1rem;
    justify-content: center;
    min-height: 60vh;
    padding: 4rem 1rem;
    text-align: center;
}

/* Hero */
.tp-contact-hero[b-usxfbqzgxr] {
    background: linear-gradient(135deg, #2a1645 0%, #6c2bd9 55%, #4b168f 100%);
    color: #fff;
    padding: 3.75rem 0 4rem;
}

.tp-contact-hero-grid[b-usxfbqzgxr] {
    align-items: center;
    display: grid;
    gap: 2.5rem;
    grid-template-columns: minmax(0, 1fr) minmax(300px, 380px);
}

.tp-contact-eyebrow[b-usxfbqzgxr] {
    color: #d8c6ff;
    display: block;
    font-size: 0.74rem;
    font-weight: 700;
    letter-spacing: 0.07em;
    margin-bottom: 0.85rem;
    text-transform: uppercase;
}

.tp-contact-eyebrow--dark[b-usxfbqzgxr] {
    color: #6c2bd9;
}

.tp-contact-hero-copy h1[b-usxfbqzgxr] {
    font-size: clamp(2.2rem, 5vw, 3.6rem);
    font-weight: 800;
    letter-spacing: -0.02em;
    line-height: 1.04;
    margin: 0;
}

.tp-contact-accent[b-usxfbqzgxr] {
    color: #d8c6ff;
}

.tp-contact-lead[b-usxfbqzgxr] {
    color: rgba(255, 255, 255, 0.82);
    font-size: 1.05rem;
    line-height: 1.65;
    margin: 1.1rem 0 0;
    max-width: 540px;
}

.tp-contact-lead :deep(p)[b-usxfbqzgxr] {
    margin: 0;
}

/* Body */
.tp-contact-body[b-usxfbqzgxr] {
    padding: 3.5rem 0 5rem;
}

.tp-contact-form-card[b-usxfbqzgxr] {
    background: #fff;
    border: 1px solid #ececf2;
    border-radius: 18px;
    padding: 2.25rem;
}

.tp-contact-form-head[b-usxfbqzgxr] {
    border-bottom: 1px solid #f0eef6;
    margin-bottom: 2rem;
    padding-bottom: 1.5rem;
}

.tp-contact-form-head h2[b-usxfbqzgxr] {
    font-size: clamp(1.6rem, 3vw, 2.2rem);
    font-weight: 800;
    letter-spacing: -0.015em;
    margin: 0;
}

.tp-contact-form-head p[b-usxfbqzgxr] {
    color: #77728a;
    margin: 0.5rem 0 0;
}

@media (max-width: 991px) {
    .tp-contact-hero-grid[b-usxfbqzgxr] {
        grid-template-columns: 1fr;
    }

    .tp-contact-hero-aside[b-usxfbqzgxr] {
        max-width: 460px;
    }
}

@media (max-width: 640px) {
    .tp-contact-form-card[b-usxfbqzgxr] {
        padding: 1.5rem;
    }
}
/* _content/Apps.TicketPulse/Components/Pages/CookiePolicy.razor.rz.scp.css */
.tp-legal[b-l37a7d90fw] {
    background: #f7f7fb;
    color: #1c1730;
    min-height: 100vh;
}

/* Hero */
.tp-legal-hero[b-l37a7d90fw] {
    background: linear-gradient(135deg, #2a1645 0%, #6c2bd9 55%, #4b168f 100%);
    color: #fff;
    padding: 3.75rem 0 4rem;
}

.tp-legal-hero-grid[b-l37a7d90fw] {
    align-items: center;
    display: grid;
    gap: 2.5rem;
    grid-template-columns: minmax(0, 1fr) minmax(300px, 380px);
}

.tp-legal-eyebrow[b-l37a7d90fw] {
    color: #d8c6ff;
    display: block;
    font-size: 0.74rem;
    font-weight: 700;
    letter-spacing: 0.07em;
    margin-bottom: 0.85rem;
    text-transform: uppercase;
}

.tp-legal-hero-copy h1[b-l37a7d90fw] {
    font-size: clamp(2.2rem, 5vw, 3.6rem);
    font-weight: 800;
    letter-spacing: -0.02em;
    line-height: 1.04;
    margin: 0;
}

.tp-legal-accent[b-l37a7d90fw] {
    color: #d8c6ff;
    display: block;
    font-size: 0.42em;
    font-weight: 700;
    letter-spacing: 0;
    margin-top: 0.6rem;
}

.tp-legal-lead[b-l37a7d90fw] {
    color: rgba(255, 255, 255, 0.82);
    font-size: 1.05rem;
    line-height: 1.65;
    margin: 1.1rem 0 0;
    max-width: 540px;
}

/* Body */
.tp-legal-body[b-l37a7d90fw] {
    padding: 3.5rem 0 5rem;
}

.tp-legal-doc[b-l37a7d90fw] {
    background: #fff;
    border: 1px solid #ececf2;
    border-radius: 18px;
    color: #4b455c;
    margin: 0 auto;
    max-width: 820px;
    padding: 3rem 3.25rem;
}

.tp-legal-doc h2[b-l37a7d90fw] {
    color: #1c1730;
    font-size: 1.3rem;
    font-weight: 800;
    letter-spacing: -0.01em;
    margin: 2.25rem 0 0.75rem;
}

.tp-legal-doc h2:first-child[b-l37a7d90fw] {
    margin-top: 0;
}

.tp-legal-doc p[b-l37a7d90fw] {
    font-size: 1rem;
    line-height: 1.75;
    margin: 0 0 1rem;
}

.tp-legal-intro[b-l37a7d90fw] {
    color: #1c1730;
    font-size: 1.1rem !important;
    font-weight: 500;
    line-height: 1.7 !important;
}

.tp-legal-doc ul[b-l37a7d90fw] {
    margin: 0 0 1rem;
    padding-left: 1.25rem;
}

.tp-legal-doc li[b-l37a7d90fw] {
    font-size: 1rem;
    line-height: 1.7;
    margin-bottom: 0.5rem;
    padding-left: 0.25rem;
}

.tp-legal-doc li[b-l37a7d90fw]::marker {
    color: #6c2bd9;
}

.tp-legal-doc a[b-l37a7d90fw] {
    color: #6c2bd9;
    font-weight: 600;
    text-decoration: none;
}

.tp-legal-doc a:hover[b-l37a7d90fw] {
    text-decoration: underline;
}

@media (max-width: 991px) {
    .tp-legal-hero-grid[b-l37a7d90fw] {
        grid-template-columns: 1fr;
    }

    .tp-legal-hero-aside[b-l37a7d90fw] {
        max-width: 460px;
    }
}

@media (max-width: 640px) {
    .tp-legal-doc[b-l37a7d90fw] {
        padding: 1.75rem 1.5rem;
    }
}
/* _content/Apps.TicketPulse/Components/Pages/Event.razor.rz.scp.css */
.tp-ev[b-i9w36izfu3] {
    background: #f7f7fb;
    color: #1c1730;
    min-height: 100vh;
    padding-bottom: 5rem;
}

/* ---------- State (loading / error) ---------- */
.tp-ev-state[b-i9w36izfu3] {
    align-items: center;
    display: flex;
    flex-direction: column;
    gap: 1rem;
    justify-content: center;
    min-height: 70vh;
    padding: 4rem 1.25rem;
    text-align: center;
}

.tp-ev-state-icon[b-i9w36izfu3] {
    align-items: center;
    background: #f1ecfb;
    border-radius: 18px;
    color: #6c2bd9;
    display: inline-flex;
    font-size: 1.7rem;
    height: 66px;
    justify-content: center;
    width: 66px;
}

.tp-ev-state h1[b-i9w36izfu3] {
    font-size: clamp(1.6rem, 3vw, 2.2rem);
    font-weight: 800;
    letter-spacing: -0.015em;
    margin: 0.4rem 0 0;
}

.tp-ev-state p[b-i9w36izfu3] {
    color: #77728a;
    margin: 0;
    max-width: 440px;
}

.tp-ev-state-btn[b-i9w36izfu3] {
    align-items: center;
    background: #6c2bd9;
    border-radius: 999px;
    color: #fff;
    display: inline-flex;
    font-weight: 700;
    gap: 0.5rem;
    margin-top: 0.5rem;
    padding: 0.8rem 1.4rem;
    text-decoration: none;
    transition: background 0.18s ease, transform 0.18s ease;
}

.tp-ev-state-btn:hover[b-i9w36izfu3] {
    background: #4c1d95;
    color: #fff;
    transform: translateY(-1px);
}

/* ---------- Hero ---------- */
.tp-ev-hero[b-i9w36izfu3] {
    color: #fff;
    overflow: hidden;
    position: relative;
}

.tp-ev-hero-media[b-i9w36izfu3] {
    inset: 0;
    position: absolute;
}

.tp-ev-hero-media img[b-i9w36izfu3] {
    height: 100%;
    object-fit: cover;
    width: 100%;
}

.tp-ev-hero-scrim[b-i9w36izfu3] {
    inset: 0;
    position: absolute;
    background:
        linear-gradient(180deg, rgba(20, 11, 38, 0.35) 0%, rgba(20, 11, 38, 0) 35%),
        linear-gradient(90deg, rgba(16, 8, 32, 0.92) 0%, rgba(16, 8, 32, 0.55) 55%, rgba(16, 8, 32, 0.25) 100%),
        linear-gradient(0deg, rgba(13, 6, 26, 0.9) 0%, rgba(13, 6, 26, 0) 60%);
}

.tp-ev-hero-inner[b-i9w36izfu3] {
    align-items: flex-start;
    display: flex;
    flex-direction: column;
    justify-content: flex-end;
    min-height: clamp(440px, 60vh, 640px);
    padding-bottom: 4rem;
    padding-top: 2.25rem;
    position: relative;
}

.tp-ev-back[b-i9w36izfu3] {
    align-items: center;
    color: rgba(255, 255, 255, 0.82);
    display: inline-flex;
    font-size: 0.92rem;
    font-weight: 600;
    gap: 0.45rem;
    margin-bottom: auto;
    text-decoration: none;
}

.tp-ev-back:hover[b-i9w36izfu3] {
    color: #fff;
}

.tp-ev-hero-grid[b-i9w36izfu3] {
    align-items: end;
    display: grid;
    gap: 2rem;
    grid-template-columns: minmax(0, 1fr) minmax(280px, 340px);
    width: 100%;
}

.tp-ev-vendor-chip[b-i9w36izfu3] {
    align-items: center;
    backdrop-filter: blur(6px);
    background: rgba(255, 255, 255, 0.16);
    border: 1px solid rgba(255, 255, 255, 0.28);
    border-radius: 999px;
    color: #fff;
    display: inline-flex;
    font-size: 0.82rem;
    font-weight: 700;
    gap: 0.45rem;
    padding: 0.4rem 0.85rem;
}

.tp-ev-vendor-chip i[b-i9w36izfu3] {
    color: #e9b3ff;
}

.tp-ev-hero-copy h1[b-i9w36izfu3] {
    font-size: clamp(2.2rem, 5.5vw, 4.4rem);
    font-weight: 800;
    letter-spacing: -0.025em;
    line-height: 1.02;
    margin: 1rem 0 0;
    max-width: 16ch;
    text-shadow: 0 2px 24px rgba(0, 0, 0, 0.25);
}

.tp-ev-hero-meta[b-i9w36izfu3] {
    display: flex;
    flex-wrap: wrap;
    gap: 0.6rem 1.4rem;
    margin-top: 1.25rem;
}

.tp-ev-hero-meta span[b-i9w36izfu3] {
    align-items: center;
    color: rgba(255, 255, 255, 0.92);
    display: inline-flex;
    font-size: 0.98rem;
    font-weight: 600;
    gap: 0.5rem;
}

.tp-ev-hero-meta i[b-i9w36izfu3] {
    color: #d8c6ff;
    font-size: 1.05rem;
}

/* Buybox */
.tp-ev-buybox[b-i9w36izfu3] {
    background: #fff;
    border-radius: 18px;
    box-shadow: 0 20px 50px rgba(13, 6, 26, 0.3);
    color: #1c1730;
    padding: 1.5rem;
}

.tp-ev-buybox-label[b-i9w36izfu3] {
    color: #8a839b;
    font-size: 0.74rem;
    font-weight: 700;
    letter-spacing: 0.06em;
    text-transform: uppercase;
}

.tp-ev-buybox-price[b-i9w36izfu3] {
    color: #6c2bd9;
    font-size: 1.5rem;
    font-weight: 800;
    line-height: 1.2;
    margin: 0.35rem 0 1.1rem;
}

.tp-ev-buybox-price :deep(b)[b-i9w36izfu3] {
    font-weight: 800;
}

.tp-ev-buybox-cta[b-i9w36izfu3] {
    align-items: center;
    background: #6c2bd9;
    border: 0;
    border-radius: 12px;
    color: #fff;
    cursor: pointer;
    display: flex;
    font-size: 1rem;
    font-weight: 700;
    gap: 0.5rem;
    justify-content: center;
    padding: 0.9rem 1rem;
    transition: background 0.18s ease, transform 0.18s ease;
    width: 100%;
}

.tp-ev-buybox-cta:hover[b-i9w36izfu3] {
    background: #4c1d95;
    transform: translateY(-1px);
}

.tp-ev-buybox-trust[b-i9w36izfu3] {
    display: flex;
    flex-wrap: wrap;
    gap: 0.4rem 1rem;
    justify-content: center;
    margin-top: 1rem;
}

.tp-ev-buybox-trust span[b-i9w36izfu3] {
    align-items: center;
    color: #77728a;
    display: inline-flex;
    font-size: 0.8rem;
    font-weight: 600;
    gap: 0.35rem;
}

.tp-ev-buybox-trust i[b-i9w36izfu3] {
    color: #2faa6a;
}

/* ---------- Facts strip ---------- */
.tp-ev-facts[b-i9w36izfu3] {
    background: #fff;
    border: 1px solid #ececf2;
    border-radius: 16px;
    display: grid;
    gap: 1px;
    grid-template-columns: repeat(4, 1fr);
    margin-top: -1.75rem;
    overflow: hidden;
    position: relative;
    z-index: 2;
}

.tp-ev-fact[b-i9w36izfu3] {
    align-items: center;
    background: #fff;
    display: flex;
    gap: 0.8rem;
    padding: 1.15rem 1.25rem;
}

.tp-ev-fact + .tp-ev-fact[b-i9w36izfu3] {
    box-shadow: -1px 0 0 #f0eef6;
}

.tp-ev-fact-ico[b-i9w36izfu3] {
    align-items: center;
    background: #f1ecfb;
    border-radius: 11px;
    color: #6c2bd9;
    display: inline-flex;
    flex: 0 0 auto;
    font-size: 1.05rem;
    height: 42px;
    justify-content: center;
    width: 42px;
}

.tp-ev-fact small[b-i9w36izfu3] {
    color: #8a839b;
    display: block;
    font-size: 0.72rem;
    font-weight: 700;
    letter-spacing: 0.04em;
    text-transform: uppercase;
}

.tp-ev-fact strong[b-i9w36izfu3] {
    color: #1c1730;
    display: block;
    font-size: 0.95rem;
    font-weight: 700;
    line-height: 1.3;
    margin-top: 0.15rem;
}

/* ---------- Generic section ---------- */
.tp-ev-section[b-i9w36izfu3] {
    margin-top: 3.25rem;
}

.tp-ev-section-head[b-i9w36izfu3] {
    margin-bottom: 1.6rem;
    max-width: 620px;
}

.tp-ev-eyebrow[b-i9w36izfu3] {
    color: #6c2bd9;
    display: block;
    font-size: 0.74rem;
    font-weight: 700;
    letter-spacing: 0.07em;
    margin-bottom: 0.5rem;
    text-transform: uppercase;
}

.tp-ev-section-head h2[b-i9w36izfu3] {
    font-size: clamp(1.6rem, 3vw, 2.4rem);
    font-weight: 800;
    letter-spacing: -0.02em;
    line-height: 1.05;
    margin: 0;
}

.tp-ev-section-head p[b-i9w36izfu3] {
    color: #77728a;
    font-size: 1rem;
    margin: 0.6rem 0 0;
}

/* keep the shared ProductItem grid breathing room */
.tp-ev-section .ticket-quick-select[b-i9w36izfu3] {
    margin: 0;
    gap: 1.25rem;
}

/* ───────── Ticket / product card reskin (event page only, via ::deep) ───────── */
.ticket-quick-select[b-i9w36izfu3]  .ticket-card {
    position: relative;
    display: flex;
    flex-direction: column;
    background: #fff;
    border: 1px solid #ececf2;
    border-radius: 16px;
    padding: 1.25rem;
    box-shadow: none;
    transition: border-color 0.18s ease, transform 0.18s ease, box-shadow 0.18s ease;
}

.ticket-quick-select[b-i9w36izfu3]  .ticket-card:hover {
    border-color: #c7b6ff;
    box-shadow: none;
    transform: translateY(-2px);
}

.ticket-quick-select[b-i9w36izfu3]  .ticket-card.selected {
    border-color: #6c2bd9;
    background: #faf7ff;
    box-shadow: 0 0 0 1px #6c2bd9;
    transform: none;
}

/* Featured badge */
.ticket-quick-select[b-i9w36izfu3]  .ticket-card .popularity-badge {
    position: absolute;
    top: 0.9rem;
    right: 0.9rem;
    left: auto;
    background: #6c2bd9;
    color: #fff;
    font-size: 0.64rem;
    font-weight: 800;
    letter-spacing: 0.05em;
    text-transform: uppercase;
    padding: 0.3rem 0.6rem;
    border-radius: 999px;
}

/* Title */
.ticket-quick-select[b-i9w36izfu3]  .ticket-card h5 {
    font-size: 1.1rem;
    font-weight: 800;
    letter-spacing: -0.01em;
    line-height: 1.3;
    color: #1c1730;
    margin: 0;
    padding-right: 4.75rem;
}

/* Image */
.ticket-quick-select[b-i9w36izfu3]  .ticket-card .product-thumb {
    height: 168px;
    max-height: 168px;
    border-radius: 12px;
    overflow: hidden;
    background: #f1ecfb;
}

.ticket-quick-select[b-i9w36izfu3]  .ticket-card .product-thumb img {
    border-radius: 12px;
}

/* Price block */
.ticket-quick-select[b-i9w36izfu3]  .ticket-card h6.text-primary {
    margin: 0;
}

.ticket-quick-select[b-i9w36izfu3]  .ticket-card .text-success-emphasis {
    color: #1c1730 !important;
    font-size: 1.4rem;
    font-weight: 800;
    letter-spacing: -0.02em;
}

.ticket-quick-select[b-i9w36izfu3]  .ticket-card .fs-10.text-muted {
    color: #8a839b !important;
    font-weight: 600;
}

.ticket-quick-select[b-i9w36izfu3]  .ticket-card small.text-muted {
    color: #8a839b !important;
}

.ticket-quick-select[b-i9w36izfu3]  .ticket-card small.text-danger {
    font-weight: 700;
}

/* Dividers → soft lines */
.ticket-quick-select[b-i9w36izfu3]  .ticket-card hr {
    border: 0;
    border-top: 1px solid #f0eef6;
    margin: 1rem 0;
    opacity: 1;
}

/* Section labels (Description / Options) */
.ticket-quick-select[b-i9w36izfu3]  .ticket-card .row.mb-3 > h6 {
    font-size: 0.72rem;
    font-weight: 800;
    text-transform: uppercase;
    letter-spacing: 0.06em;
    color: #8a839b;
    margin-bottom: 0.45rem;
}

.ticket-quick-select[b-i9w36izfu3]  .ticket-card .row.mb-3 p.small {
    color: #5f5972 !important;
    line-height: 1.55;
}

/* Options selects */
.ticket-quick-select[b-i9w36izfu3]  .ticket-card .p-2 > span {
    display: block;
    font-size: 0.8rem;
    font-weight: 700;
    color: #1c1730;
    margin-bottom: 0.3rem;
}

.ticket-quick-select[b-i9w36izfu3]  .ticket-card .form-select {
    border: 1px solid #ececf2;
    border-radius: 10px;
    font-size: 0.9rem;
    padding: 0.55rem 0.75rem;
    color: #1c1730;
}

.ticket-quick-select[b-i9w36izfu3]  .ticket-card .form-select:focus {
    border-color: #c7b6ff;
    box-shadow: 0 0 0 3px rgba(108, 43, 217, 0.12);
}

/* CTA pinned to the bottom for even card heights */
.ticket-quick-select[b-i9w36izfu3]  .ticket-card > .d-flex.justify-content-between.align-items-center {
    margin-top: auto;
}

.ticket-quick-select[b-i9w36izfu3]  .ticket-card .btn {
    border-radius: 11px;
    font-weight: 700;
    font-size: 0.95rem;
    padding: 0.72rem 1rem;
    transition: background 0.18s ease, border-color 0.18s ease, color 0.18s ease;
}

.ticket-quick-select[b-i9w36izfu3]  .ticket-card .btn-outline-primary {
    background: #fff;
    border: 1px solid #d8ccf3;
    color: #6c2bd9;
}

.ticket-quick-select[b-i9w36izfu3]  .ticket-card .btn-outline-primary:hover {
    background: #6c2bd9;
    border-color: #6c2bd9;
    color: #fff;
}

.ticket-quick-select[b-i9w36izfu3]  .ticket-card .btn-primary {
    background: #6c2bd9;
    border-color: #6c2bd9;
    color: #fff;
}

.ticket-quick-select[b-i9w36izfu3]  .ticket-card .btn-primary:hover {
    background: #4c1d95;
    border-color: #4c1d95;
    color: #fff;
}

/* ---------- Empty state ---------- */
.tp-ev-empty[b-i9w36izfu3] {
    align-items: center;
    background: #fbfafe;
    border: 1px solid #ececf2;
    border-radius: 14px;
    column-gap: 1.1rem;
    display: flex;
    flex-wrap: wrap;
    padding: 1.5rem 1.6rem;
    row-gap: 0.75rem;
}

.tp-ev-empty-icon[b-i9w36izfu3] {
    align-items: center;
    background: #f1ecfb;
    border-radius: 12px;
    color: #6c2bd9;
    display: inline-flex;
    flex: 0 0 auto;
    font-size: 1.2rem;
    height: 44px;
    justify-content: center;
    width: 44px;
}

.tp-ev-empty-title[b-i9w36izfu3] {
    color: #1c1730;
    font-size: 0.98rem;
    font-weight: 700;
    margin: 0;
}

.tp-ev-empty-sub[b-i9w36izfu3] {
    color: #8a839b;
    font-size: 0.88rem;
    margin: 0.2rem 0 0;
}

/* ---------- Stays ---------- */
.tp-ev-stay-list[b-i9w36izfu3] {
    display: grid;
    gap: 1rem;
    grid-template-columns: repeat(auto-fill, minmax(260px, 1fr));
}

.tp-ev-stay[b-i9w36izfu3] {
    align-items: center;
    background: #fff;
    border: 1px solid #ececf2;
    border-radius: 14px;
    display: grid;
    gap: 0.9rem;
    grid-template-columns: 72px minmax(0, 1fr);
    overflow: hidden;
    padding: 0.7rem;
    transition: border-color 0.18s ease, transform 0.18s ease;
}

.tp-ev-stay:hover[b-i9w36izfu3] {
    border-color: #c7b6ff;
    transform: translateY(-2px);
}

.tp-ev-stay-media[b-i9w36izfu3] {
    border-radius: 10px;
    height: 64px;
    overflow: hidden;
    width: 72px;
}

.tp-ev-stay-media img[b-i9w36izfu3] {
    height: 100%;
    object-fit: cover;
    width: 100%;
}

.tp-ev-stay-body[b-i9w36izfu3] {
    min-width: 0;
}

.tp-ev-stay-body strong[b-i9w36izfu3] {
    color: #1c1730;
    display: block;
    font-size: 0.96rem;
    font-weight: 700;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.tp-ev-stay-loc[b-i9w36izfu3] {
    align-items: center;
    color: #77728a;
    display: flex;
    font-size: 0.84rem;
    gap: 0.35rem;
    margin-top: 0.25rem;
    min-width: 0;
}

.tp-ev-stay-loc i[b-i9w36izfu3] {
    color: #6c2bd9;
    flex: 0 0 auto;
}

/* ---------- About / Location cards ---------- */
.tp-ev-info-grid[b-i9w36izfu3] {
    display: grid;
    gap: 1.5rem;
    grid-template-columns: minmax(0, 1.7fr) minmax(0, 1fr);
    margin-top: 3.25rem;
}

.tp-ev-card[b-i9w36izfu3] {
    background: #fff;
    border: 1px solid #ececf2;
    border-radius: 18px;
    margin-top: 0;
    padding: 1.9rem;
}

.tp-ev-card-head[b-i9w36izfu3] {
    align-items: center;
    display: flex;
    gap: 0.7rem;
    margin-bottom: 1.1rem;
}

.tp-ev-card-ico[b-i9w36izfu3] {
    align-items: center;
    background: #f1ecfb;
    border-radius: 11px;
    color: #6c2bd9;
    display: inline-flex;
    flex: 0 0 auto;
    font-size: 1.05rem;
    height: 42px;
    justify-content: center;
    width: 42px;
}

.tp-ev-card-head h2[b-i9w36izfu3] {
    font-size: 1.3rem;
    font-weight: 800;
    letter-spacing: -0.01em;
    margin: 0;
}

.tp-ev-prose[b-i9w36izfu3] {
    color: #4b455c;
    font-size: 1rem;
    line-height: 1.75;
}

.tp-ev-prose[b-i9w36izfu3] (p) {
    margin: 0 0 1rem;
}

.tp-ev-prose[b-i9w36izfu3] (p:last-child) {
    margin-bottom: 0;
}

.tp-ev-prose[b-i9w36izfu3] (h1),
.tp-ev-prose[b-i9w36izfu3] (h2),
.tp-ev-prose[b-i9w36izfu3] (h3),
.tp-ev-prose[b-i9w36izfu3] (h4) {
    color: #1c1730;
    font-weight: 800;
    letter-spacing: -0.01em;
    margin: 1.6rem 0 0.6rem;
}

.tp-ev-prose[b-i9w36izfu3] (ul),
.tp-ev-prose[b-i9w36izfu3] (ol) {
    margin: 0 0 1rem;
    padding-left: 1.25rem;
}

.tp-ev-prose[b-i9w36izfu3] (li) {
    margin-bottom: 0.4rem;
}

.tp-ev-prose[b-i9w36izfu3] (img) {
    border-radius: 12px;
    height: auto;
    max-width: 100%;
}

.tp-ev-prose[b-i9w36izfu3] (a) {
    color: #6c2bd9;
    font-weight: 600;
}

.tp-ev-location h3[b-i9w36izfu3] {
    color: #1c1730;
    font-size: 1.1rem;
    font-weight: 800;
    margin: 0;
}

.tp-ev-location-addr[b-i9w36izfu3] {
    color: #5f5972;
    line-height: 1.6;
    margin: 0.5rem 0 0;
}

.tp-ev-tags[b-i9w36izfu3] {
    display: flex;
    flex-wrap: wrap;
    gap: 0.45rem;
    margin-top: 1.1rem;
}

.tp-ev-tags span[b-i9w36izfu3] {
    background: #f1ecfb;
    border-radius: 999px;
    color: #5c20b6;
    font-size: 0.8rem;
    font-weight: 600;
    padding: 0.35rem 0.7rem;
}

/* ---------- Floating ticket bar ---------- */
.tp-ev-floatbar[b-i9w36izfu3] {
    background: rgba(255, 255, 255, 0.92);
    backdrop-filter: blur(12px);
    border-top: 1px solid #ececf2;
    bottom: 0;
    box-shadow: 0 -10px 40px rgba(28, 23, 48, 0.12);
    left: 0;
    opacity: 0;
    position: fixed;
    right: 0;
    transform: translateY(110%);
    transition: transform 0.32s cubic-bezier(0.22, 1, 0.36, 1), opacity 0.32s ease;
    z-index: 1080;
}

.tp-ev-floatbar.is-visible[b-i9w36izfu3] {
    opacity: 1;
    transform: translateY(0);
}

.tp-ev-floatbar-inner[b-i9w36izfu3] {
    align-items: center;
    display: flex;
    gap: 1.25rem;
    padding-bottom: 0.9rem;
    padding-top: 0.9rem;
}

.tp-ev-floatbar-info[b-i9w36izfu3] {
    display: flex;
    flex: 1;
    flex-direction: column;
    min-width: 0;
}

.tp-ev-floatbar-info strong[b-i9w36izfu3] {
    color: #1c1730;
    font-size: 1rem;
    font-weight: 800;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.tp-ev-floatbar-attr[b-i9w36izfu3] {
    color: #6c2bd9;
    font-size: 0.82rem;
    font-weight: 600;
}

.tp-ev-floatbar-sub[b-i9w36izfu3] {
    color: #8a839b;
    font-size: 0.82rem;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.tp-ev-floatbar-price[b-i9w36izfu3] {
    flex: 0 0 auto;
    text-align: right;
}

.tp-ev-floatbar-price strong[b-i9w36izfu3] {
    color: #1c1730;
    display: block;
    font-size: 1.1rem;
    font-weight: 800;
}

.tp-ev-floatbar-price span[b-i9w36izfu3] {
    color: #8a839b;
    font-size: 0.72rem;
}

.tp-ev-floatbar-actions[b-i9w36izfu3] {
    display: flex;
    flex: 0 0 auto;
    gap: 0.55rem;
}

.tp-ev-btn[b-i9w36izfu3] {
    align-items: center;
    border: 1px solid transparent;
    border-radius: 11px;
    cursor: pointer;
    display: inline-flex;
    font-size: 0.92rem;
    font-weight: 700;
    gap: 0.45rem;
    justify-content: center;
    padding: 0.7rem 1.1rem;
    transition: background 0.18s ease, border-color 0.18s ease, transform 0.18s ease;
    white-space: nowrap;
}

.tp-ev-btn:hover[b-i9w36izfu3] {
    transform: translateY(-1px);
}

.tp-ev-btn--primary[b-i9w36izfu3] {
    background: #6c2bd9;
    color: #fff;
}

.tp-ev-btn--primary:hover[b-i9w36izfu3] {
    background: #4c1d95;
}

.tp-ev-btn--secondary[b-i9w36izfu3] {
    background: #f1ecfb;
    color: #5c20b6;
}

.tp-ev-btn--secondary:hover[b-i9w36izfu3] {
    background: #e7dcfb;
}

.tp-ev-btn--ghost[b-i9w36izfu3] {
    background: #fff;
    border-color: #ececf2;
    color: #6c2bd9;
    padding: 0.7rem 0.85rem;
}

.tp-ev-btn--ghost:hover[b-i9w36izfu3] {
    border-color: #c7b6ff;
}

/* ---------- Responsive ---------- */
@media (max-width: 991px) {
    .tp-ev-hero-grid[b-i9w36izfu3] {
        grid-template-columns: 1fr;
    }

    .tp-ev-buybox[b-i9w36izfu3] {
        max-width: 420px;
    }

    .tp-ev-facts[b-i9w36izfu3] {
        grid-template-columns: repeat(2, 1fr);
        margin-top: 1.5rem;
    }

    .tp-ev-fact:nth-child(odd)[b-i9w36izfu3] {
        box-shadow: none;
    }

    .tp-ev-info-grid[b-i9w36izfu3] {
        grid-template-columns: 1fr;
    }
}

@media (max-width: 768px) {
    .tp-ev[b-i9w36izfu3] {
        padding-bottom: 9rem;
    }

    .tp-ev-floatbar-inner[b-i9w36izfu3] {
        align-items: stretch;
        flex-wrap: wrap;
        gap: 0.75rem;
    }

    .tp-ev-floatbar-info[b-i9w36izfu3] {
        flex: 1 1 60%;
    }

    .tp-ev-floatbar-price[b-i9w36izfu3] {
        flex: 1 1 30%;
    }

    .tp-ev-floatbar-actions[b-i9w36izfu3] {
        flex: 1 1 100%;
    }

    .tp-ev-floatbar-actions .tp-ev-btn--secondary[b-i9w36izfu3],
    .tp-ev-floatbar-actions .tp-ev-btn--primary[b-i9w36izfu3] {
        flex: 1;
    }
}

@media (max-width: 560px) {
    .tp-ev-facts[b-i9w36izfu3] {
        grid-template-columns: 1fr;
    }

    .tp-ev-fact[b-i9w36izfu3] {
        box-shadow: none !important;
    }

    .tp-ev-fact + .tp-ev-fact[b-i9w36izfu3] {
        border-top: 1px solid #f0eef6;
    }

    .tp-ev-hero-meta[b-i9w36izfu3] {
        gap: 0.4rem;
    }
}
/* _content/Apps.TicketPulse/Components/Pages/Explore.razor.rz.scp.css */
.explore-hero[b-xdppbf5737] {
    background: var(--gradient-primary, linear-gradient(135deg, #440099 0%, #764ba2 100%));
    color: #fff;
    padding: 60px 0 50px;
}

.explore-hero h1[b-xdppbf5737] {
    font-size: 2.4rem;
    font-weight: 900;
    margin-bottom: 8px;
}

.explore-hero-sub[b-xdppbf5737] {
    max-width: 620px;
    margin: 0 0 32px;
    font-size: 1.05rem;
    opacity: 0.85;
}

.explore-search-card[b-xdppbf5737] {
    max-width: 1080px;
    margin: 0;
    box-shadow: 0 20px 50px rgba(20, 16, 48, 0.22), 0 2px 6px rgba(20, 16, 48, 0.08);
}

.explore-results-header[b-xdppbf5737] {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 1rem;
    margin-bottom: 1.5rem;
    padding-bottom: 1rem;
    border-bottom: 1px solid #eeedf2;
}

.explore-results-kicker[b-xdppbf5737] {
    display: inline-flex;
    align-items: center;
    margin-bottom: 0.25rem;
    color: #6c2bd9;
    font-size: 0.76rem;
    font-weight: 800;
    letter-spacing: 0.04em;
    text-transform: uppercase;
}

.explore-results-header h2[b-xdppbf5737] {
    color: #39364f;
    font-size: 1.65rem;
    font-weight: 850;
}

.explore-results-summary[b-xdppbf5737] {
    margin: 0.35rem 0 0;
    color: #6f7287;
    font-size: 0.95rem;
}

[b-xdppbf5737] .explore-toolbar {
    overflow: visible;
}

[b-xdppbf5737] .explore-toolbar .form-select {
    min-height: 48px;
    border-color: #eeedf2;
    border-radius: 6px;
    color: #39364f;
}

[b-xdppbf5737] .explore-toolbar .form-select:focus {
    border-color: #440099;
    box-shadow: 0 0 0 3px rgba(68, 0, 153, 0.12);
}

[b-xdppbf5737] .explore-toolbar .btn,
[b-xdppbf5737] .explore-toolbar .form-control {
    min-height: 48px;
    border-radius: 6px;
}

[b-xdppbf5737] .explore-toolbar .dropdown-menu {
    max-height: 320px;
    overflow: auto;
}

[b-xdppbf5737] .global-search-title {
    font-size: 1.8rem;
    font-weight: 800;
    color: #39364f;
}

[b-xdppbf5737] .global-search-title .text-primary {
    color: #440099 !important;
}

[b-xdppbf5737] .bg-light {
    background-color: #f8f7fa !important;
}

[b-xdppbf5737] .btn-outline-secondary {
    border-color: #eeedf2;
    color: #39364f;
}

[b-xdppbf5737] .btn-outline-secondary:hover {
    background-color: #f8f7fa;
    border-color: #440099;
    color: #440099;
}

[b-xdppbf5737] .text-primary {
    color: #440099 !important;
}

[b-xdppbf5737] .spinner-border.text-primary {
    color: #440099 !important;
}

[b-xdppbf5737] .fw-bold.text-dark {
    color: #39364f !important;
}

@media (max-width: 767.98px) {
    .explore-hero[b-xdppbf5737] {
        padding: 42px 0 34px;
    }

    .explore-hero h1[b-xdppbf5737] {
        font-size: 2rem;
    }

    .explore-hero-sub[b-xdppbf5737] {
        margin-bottom: 22px;
    }

    .explore-results-header[b-xdppbf5737] {
        flex-direction: column;
        align-items: stretch;
    }
}
/* _content/Apps.TicketPulse/Components/Pages/ListWithUs.razor.rz.scp.css */
.tp-list-request-page[b-tlj4kjrokt] {
    background: #F7F7FA;
    min-height: 100vh;
}

.tp-list-request-hero[b-tlj4kjrokt] {
    background: linear-gradient(135deg, #6C2BD9 0%, #4A1A9E 100%);
    color: white;
    padding: 3rem 0 4rem;
}

.tp-list-request-back[b-tlj4kjrokt] {
    display: inline-flex;
    align-items: center;
    gap: 0.45rem;
    color: rgba(255,255,255,0.78);
    font-weight: 700;
    text-decoration: none;
    margin-bottom: 2rem;
}

.tp-list-request-back:hover[b-tlj4kjrokt] {
    color: white;
}

.tp-list-request-hero-grid[b-tlj4kjrokt] {
    display: grid;
    grid-template-columns: minmax(0, 1fr) 360px;
    gap: 2rem;
    align-items: end;
}

.tp-list-request-eyebrow[b-tlj4kjrokt] {
    margin: 0 0 0.7rem;
    color: rgba(255,255,255,0.7);
    font-size: 0.78rem;
    font-weight: 800;
    letter-spacing: 0.12em;
    text-transform: uppercase;
}

.tp-list-request-hero h1[b-tlj4kjrokt] {
    font-family: 'Outfit', sans-serif;
    font-weight: 900;
    font-size: clamp(2.15rem, 5vw, 4rem);
    line-height: 1;
    margin: 0 0 1rem;
    letter-spacing: 0;
}

.tp-list-request-lead[b-tlj4kjrokt] {
    max-width: 720px;
    margin: 0;
    color: rgba(255,255,255,0.78);
    font-size: 1.05rem;
    line-height: 1.6;
}

.tp-list-request-contact[b-tlj4kjrokt] {
    background: rgba(255,255,255,0.1);
    border: 1px solid rgba(255,255,255,0.18);
    border-radius: 8px;
    padding: 1.25rem;
}

.tp-list-request-contact-label[b-tlj4kjrokt] {
    display: block;
    color: rgba(255,255,255,0.64);
    font-size: 0.76rem;
    font-weight: 800;
    text-transform: uppercase;
    letter-spacing: 0.08em;
    margin-bottom: 0.65rem;
}

.tp-list-request-contact a[b-tlj4kjrokt] {
    display: inline-flex;
    align-items: center;
    gap: 0.5rem;
    color: white;
    font-family: 'Outfit', sans-serif;
    font-size: 1.35rem;
    font-weight: 800;
    text-decoration: none;
}

.tp-list-request-contact p[b-tlj4kjrokt] {
    margin: 0.85rem 0 0;
    color: rgba(255,255,255,0.72);
    font-size: 0.9rem;
    line-height: 1.45;
}

.tp-list-request-content[b-tlj4kjrokt] {
    padding: 2.25rem 0 4rem;
}

.tp-list-request-layout[b-tlj4kjrokt] {
    display: grid;
    grid-template-columns: 330px minmax(0, 1fr);
    gap: 1.5rem;
    align-items: start;
}

.tp-list-request-summary[b-tlj4kjrokt],
.tp-list-request-form-card[b-tlj4kjrokt] {
    background: white;
    border: 1px solid #E8ECF1;
    border-radius: 8px;
    box-shadow: 0 1px 3px rgba(0,0,0,0.04);
}

.tp-list-request-summary[b-tlj4kjrokt] {
    padding: 1.5rem;
    position: sticky;
    top: 1rem;
}

.tp-list-request-summary h2[b-tlj4kjrokt],
.tp-list-request-form-header h2[b-tlj4kjrokt],
.tp-list-request-success h2[b-tlj4kjrokt] {
    font-family: 'Outfit', sans-serif;
    font-weight: 850;
    color: #1A1D23;
    margin: 0 0 0.5rem;
    letter-spacing: 0;
}

.tp-list-request-summary p[b-tlj4kjrokt],
.tp-list-request-form-header p[b-tlj4kjrokt] {
    color: #6B7280;
    line-height: 1.55;
    margin: 0;
}

.tp-list-request-list[b-tlj4kjrokt] {
    display: grid;
    gap: 0.7rem;
    margin-top: 1.25rem;
}

.tp-list-request-list span[b-tlj4kjrokt] {
    display: flex;
    align-items: center;
    gap: 0.6rem;
    color: #39364F;
    font-weight: 700;
}

.tp-list-request-list i[b-tlj4kjrokt] {
    color: #6C2BD9;
}

.tp-list-request-form-card[b-tlj4kjrokt] {
    padding: 1.5rem;
}

.tp-list-request-form-header[b-tlj4kjrokt] {
    border-bottom: 1px solid #EEF0F4;
    margin-bottom: 1.25rem;
    padding-bottom: 1rem;
}

.tp-list-request-grid[b-tlj4kjrokt] {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 1rem;
}

.tp-list-request-field[b-tlj4kjrokt] {
    display: grid;
    gap: 0.4rem;
    margin-bottom: 1rem;
}

.tp-list-request-field label[b-tlj4kjrokt] {
    color: #39364F;
    font-size: 0.86rem;
    font-weight: 800;
}

.tp-list-request-input[b-tlj4kjrokt] {
    width: 100%;
    border: 1px solid #DFE3EA;
    border-radius: 8px;
    background: #FAFAFB;
    color: #1A1D23;
    font-size: 0.95rem;
    padding: 0.82rem 0.95rem;
    outline: none;
    transition: border-color 0.2s ease, box-shadow 0.2s ease, background 0.2s ease;
}

.tp-list-request-input:focus[b-tlj4kjrokt] {
    background: white;
    border-color: #8B5CF6;
    box-shadow: 0 0 0 3px rgba(108,43,217,0.1);
}

.tp-list-request-textarea[b-tlj4kjrokt] {
    min-height: 150px;
    resize: vertical;
}

.tp-list-request-consent[b-tlj4kjrokt] {
    display: flex;
    gap: 0.65rem;
    align-items: flex-start;
    color: #5F6577;
    font-weight: 600;
    margin: 0.5rem 0 1.25rem;
}

.tp-list-request-consent input[b-tlj4kjrokt] {
    margin-top: 0.2rem;
}

.tp-list-request-submit[b-tlj4kjrokt],
.tp-list-request-primary[b-tlj4kjrokt] {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 0.55rem;
    border: 0;
    border-radius: 8px;
    background: #6C2BD9;
    color: white;
    font-weight: 850;
    padding: 0.9rem 1.25rem;
    text-decoration: none;
    transition: transform 0.2s ease, background 0.2s ease, box-shadow 0.2s ease;
}

.tp-list-request-submit:hover[b-tlj4kjrokt],
.tp-list-request-primary:hover[b-tlj4kjrokt] {
    background: #4A1A9E;
    color: white;
    box-shadow: 0 8px 22px rgba(74,26,158,0.18);
    transform: translateY(-1px);
}

.tp-list-request-submit:disabled[b-tlj4kjrokt] {
    cursor: wait;
    opacity: 0.74;
    transform: none;
    box-shadow: none;
}

.tp-list-request-alert[b-tlj4kjrokt] {
    background: #FEF2F2;
    border: 1px solid #FECACA;
    border-radius: 8px;
    color: #991B1B;
    font-weight: 700;
    margin-bottom: 1rem;
    padding: 0.9rem 1rem;
}

.tp-list-request-success[b-tlj4kjrokt] {
    text-align: center;
    padding: 2rem 1rem;
}

.tp-list-request-success i[b-tlj4kjrokt] {
    color: #10B981;
    font-size: 2.6rem;
    margin-bottom: 1rem;
}

.tp-list-request-success p[b-tlj4kjrokt] {
    color: #6B7280;
    margin: 0 auto 1.5rem;
    max-width: 480px;
}

@media (max-width: 992px) {
    .tp-list-request-hero-grid[b-tlj4kjrokt],
    .tp-list-request-layout[b-tlj4kjrokt] {
        grid-template-columns: 1fr;
    }

    .tp-list-request-summary[b-tlj4kjrokt] {
        position: static;
    }
}

@media (max-width: 640px) {
    .tp-list-request-hero[b-tlj4kjrokt] {
        padding: 2rem 0 2.5rem;
    }

    .tp-list-request-grid[b-tlj4kjrokt] {
        grid-template-columns: 1fr;
        gap: 0;
    }

    .tp-list-request-contact a[b-tlj4kjrokt] {
        font-size: 1.1rem;
    }
}
/* _content/Apps.TicketPulse/Components/Pages/PrivacyPolicy.razor.rz.scp.css */
.tp-legal[b-3hwrniigxh] {
    background: #f7f7fb;
    color: #1c1730;
    min-height: 100vh;
}

/* Hero */
.tp-legal-hero[b-3hwrniigxh] {
    background: linear-gradient(135deg, #2a1645 0%, #6c2bd9 55%, #4b168f 100%);
    color: #fff;
    padding: 3.75rem 0 4rem;
}

.tp-legal-hero-grid[b-3hwrniigxh] {
    align-items: center;
    display: grid;
    gap: 2.5rem;
    grid-template-columns: minmax(0, 1fr) minmax(300px, 380px);
}

.tp-legal-eyebrow[b-3hwrniigxh] {
    color: #d8c6ff;
    display: block;
    font-size: 0.74rem;
    font-weight: 700;
    letter-spacing: 0.07em;
    margin-bottom: 0.85rem;
    text-transform: uppercase;
}

.tp-legal-hero-copy h1[b-3hwrniigxh] {
    font-size: clamp(2.2rem, 5vw, 3.6rem);
    font-weight: 800;
    letter-spacing: -0.02em;
    line-height: 1.04;
    margin: 0;
}

.tp-legal-accent[b-3hwrniigxh] {
    color: #d8c6ff;
    display: block;
    font-size: 0.42em;
    font-weight: 700;
    letter-spacing: 0;
    margin-top: 0.6rem;
}

.tp-legal-lead[b-3hwrniigxh] {
    color: rgba(255, 255, 255, 0.82);
    font-size: 1.05rem;
    line-height: 1.65;
    margin: 1.1rem 0 0;
    max-width: 540px;
}

/* Body */
.tp-legal-body[b-3hwrniigxh] {
    padding: 3.5rem 0 5rem;
}

.tp-legal-doc[b-3hwrniigxh] {
    background: #fff;
    border: 1px solid #ececf2;
    border-radius: 18px;
    color: #4b455c;
    margin: 0 auto;
    max-width: 900px;
    padding: 3rem 3.25rem;
}

/* The terms body is a generator export with heavy inline styles;
   these rules tidy the container and the parts we can reach. */
.tp-legal-doc--terms[b-3hwrniigxh] {
    font-size: 0.97rem;
    line-height: 1.7;
}

.tp-legal-doc--terms :deep(a)[b-3hwrniigxh] {
    color: #6c2bd9;
    text-decoration: none;
}

.tp-legal-doc--terms :deep(a:hover)[b-3hwrniigxh] {
    text-decoration: underline;
}

.tp-legal-doc--terms :deep([data-custom-class="title"])[b-3hwrniigxh] {
    color: #1c1730;
}

.tp-legal-doc--terms :deep([data-custom-class="heading_1"])[b-3hwrniigxh] {
    color: #1c1730;
    display: block;
    margin-top: 0.75rem;
}

.tp-legal-doc--terms :deep([data-custom-class="heading_2"])[b-3hwrniigxh] {
    color: #1c1730;
}

.tp-legal-doc--terms :deep(ul)[b-3hwrniigxh] {
    padding-left: 1.25rem;
}

.tp-legal-doc--terms :deep(li)[b-3hwrniigxh] {
    margin-bottom: 0.4rem;
}

@media (max-width: 991px) {
    .tp-legal-hero-grid[b-3hwrniigxh] {
        grid-template-columns: 1fr;
    }

    .tp-legal-hero-aside[b-3hwrniigxh] {
        max-width: 460px;
    }
}

@media (max-width: 640px) {
    .tp-legal-doc[b-3hwrniigxh] {
        padding: 1.75rem 1.4rem;
    }
}
/* _content/Apps.TicketPulse/Components/Pages/PromoterProfile.razor.rz.scp.css */
.tp-pp[b-jgimp6hzbk] {
    background: #f7f7fb;
    color: #1c1730;
    min-height: 100vh;
}

.tp-pp-loading[b-jgimp6hzbk] {
    align-items: center;
    display: flex;
    flex-direction: column;
    gap: 1rem;
    justify-content: center;
    min-height: 62vh;
    padding: 4rem 1rem;
    text-align: center;
}

.tp-pp-loading p[b-jgimp6hzbk] {
    color: #77728a;
    margin: 0;
}

/* Hero */
.tp-pp-hero[b-jgimp6hzbk] {
    background: linear-gradient(135deg, #2a1645 0%, #6c2bd9 55%, #4b168f 100%);
    color: #fff;
    padding: 3.25rem 0 3.5rem;
}

.tp-pp-back[b-jgimp6hzbk] {
    align-items: center;
    color: rgba(255, 255, 255, 0.8);
    display: inline-flex;
    font-size: 0.92rem;
    font-weight: 600;
    gap: 0.45rem;
    margin-bottom: 2.25rem;
    text-decoration: none;
}

.tp-pp-back:hover[b-jgimp6hzbk] {
    color: #fff;
}

.tp-pp-hero-grid[b-jgimp6hzbk] {
    align-items: center;
    display: grid;
    gap: 2rem;
    grid-template-columns: minmax(0, 1fr) minmax(260px, 340px);
}

.tp-pp-identity[b-jgimp6hzbk] {
    align-items: center;
    display: flex;
    gap: 1.1rem;
    margin-bottom: 1.25rem;
}

.tp-pp-avatar[b-jgimp6hzbk] {
    background: rgba(255, 255, 255, 0.12);
    border: 1px solid rgba(255, 255, 255, 0.28);
    border-radius: 18px;
    flex: 0 0 auto;
    height: 84px;
    overflow: hidden;
    width: 84px;
}

.tp-pp-avatar img[b-jgimp6hzbk] {
    height: 100%;
    object-fit: cover;
    width: 100%;
}

.tp-pp-eyebrow[b-jgimp6hzbk] {
    align-items: center;
    color: #d8c6ff;
    display: inline-flex;
    font-size: 0.74rem;
    font-weight: 700;
    gap: 0.35rem;
    letter-spacing: 0.07em;
    margin-bottom: 0.5rem;
    text-transform: uppercase;
}

.tp-pp-identity-text h1[b-jgimp6hzbk] {
    font-size: clamp(1.9rem, 4vw, 3rem);
    font-weight: 800;
    letter-spacing: -0.015em;
    line-height: 1.02;
    margin: 0;
}

.tp-pp-lead[b-jgimp6hzbk] {
    color: rgba(255, 255, 255, 0.82);
    font-size: 1.02rem;
    line-height: 1.65;
    margin: 0;
    max-width: 620px;
}

.tp-pp-socials[b-jgimp6hzbk] {
    display: flex;
    flex-wrap: wrap;
    gap: 0.55rem;
    margin-top: 1.4rem;
}

.tp-pp-socials a[b-jgimp6hzbk] {
    align-items: center;
    border: 1px solid rgba(255, 255, 255, 0.32);
    border-radius: 999px;
    color: #fff;
    display: inline-flex;
    font-size: 0.85rem;
    font-weight: 600;
    gap: 0.4rem;
    padding: 0.45rem 0.85rem;
    text-decoration: none;
    transition: background 0.18s ease, border-color 0.18s ease;
}

.tp-pp-socials a:hover[b-jgimp6hzbk] {
    background: rgba(255, 255, 255, 0.14);
    border-color: rgba(255, 255, 255, 0.5);
}

.tp-pp-snapshot[b-jgimp6hzbk] {
    background: rgba(255, 255, 255, 0.1);
    border: 1px solid rgba(255, 255, 255, 0.22);
    border-radius: 18px;
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    overflow: hidden;
}

.tp-pp-snapshot div[b-jgimp6hzbk] {
    padding: 1.25rem 0.75rem;
    text-align: center;
}

.tp-pp-snapshot div + div[b-jgimp6hzbk] {
    border-left: 1px solid rgba(255, 255, 255, 0.18);
}

.tp-pp-snapshot strong[b-jgimp6hzbk] {
    display: block;
    font-size: 1.85rem;
    font-weight: 800;
    line-height: 1;
}

.tp-pp-snapshot span[b-jgimp6hzbk] {
    color: rgba(255, 255, 255, 0.76);
    display: block;
    font-size: 0.72rem;
    font-weight: 700;
    letter-spacing: 0.05em;
    margin-top: 0.45rem;
    text-transform: uppercase;
}

/* Body */
.tp-pp-body[b-jgimp6hzbk] {
    padding: 3.5rem 0 5rem;
}

.tp-pp-section-heading[b-jgimp6hzbk] {
    margin-bottom: 1.75rem;
    max-width: 640px;
}

.tp-pp-section-heading span[b-jgimp6hzbk] {
    color: #6c2bd9;
    display: block;
    font-size: 0.74rem;
    font-weight: 700;
    letter-spacing: 0.07em;
    margin-bottom: 0.5rem;
    text-transform: uppercase;
}

.tp-pp-section-heading h2[b-jgimp6hzbk] {
    font-size: clamp(1.7rem, 3.5vw, 2.6rem);
    font-weight: 800;
    letter-spacing: -0.015em;
    line-height: 1.05;
    margin: 0;
}

.tp-pp-section-heading p[b-jgimp6hzbk] {
    color: #77728a;
    font-size: 1rem;
    margin: 0.7rem 0 0;
}

/* Tabs */
.tp-pp-tabs[b-jgimp6hzbk] {
    border-bottom: 1px solid #ececf2;
    display: flex;
    flex-wrap: wrap;
    gap: 0.4rem;
    list-style: none;
    margin: 0 0 1.75rem;
    padding: 0;
}

.tp-pp-tab[b-jgimp6hzbk] {
    align-items: center;
    background: transparent;
    border: 0;
    border-bottom: 2px solid transparent;
    color: #77728a;
    cursor: pointer;
    display: inline-flex;
    font-size: 0.95rem;
    font-weight: 700;
    gap: 0.5rem;
    margin-bottom: -1px;
    padding: 0.75rem 0.9rem;
    transition: color 0.18s ease, border-color 0.18s ease;
}

.tp-pp-tab i[b-jgimp6hzbk] {
    font-size: 1rem;
}

.tp-pp-tab span[b-jgimp6hzbk] {
    background: #f1ecfb;
    border-radius: 999px;
    color: #6c2bd9;
    font-size: 0.78rem;
    font-weight: 700;
    min-width: 1.5rem;
    padding: 0.05rem 0.45rem;
    text-align: center;
}

.tp-pp-tab:hover[b-jgimp6hzbk] {
    color: #1c1730;
}

.tp-pp-tab.active[b-jgimp6hzbk] {
    border-bottom-color: #6c2bd9;
    color: #6c2bd9;
}

.tp-pp-tab.active span[b-jgimp6hzbk] {
    background: #6c2bd9;
    color: #fff;
}

/* Tab head */
.tp-pp-tab-head[b-jgimp6hzbk] {
    align-items: center;
    display: flex;
    gap: 1rem;
    justify-content: space-between;
    margin-bottom: 1.4rem;
}

.tp-pp-tab-head h3[b-jgimp6hzbk] {
    color: #1c1730;
    font-size: 1.25rem;
    font-weight: 800;
    letter-spacing: -0.01em;
    margin: 0;
}

.tp-pp-sort[b-jgimp6hzbk] {
    background: #fff;
    border: 1px solid #ececf2;
    border-radius: 10px;
    color: #1c1730;
    font-size: 0.9rem;
    font-weight: 600;
    outline: 0;
    padding: 0.5rem 0.75rem;
}

.tp-pp-sort:focus[b-jgimp6hzbk] {
    border-color: #c7b6ff;
}

/* Event cards */
.tp-pp-card-grid[b-jgimp6hzbk] {
    display: grid;
    gap: 1.25rem;
    grid-template-columns: repeat(2, minmax(0, 1fr));
}

.tp-pp-event-card[b-jgimp6hzbk] {
    background: #fff;
    border: 1px solid #ececf2;
    border-radius: 16px;
    color: inherit;
    display: flex;
    flex-direction: column;
    overflow: hidden;
    text-decoration: none;
    transition: border-color 0.18s ease, transform 0.18s ease;
}

.tp-pp-event-card:hover[b-jgimp6hzbk] {
    border-color: #c7b6ff;
    color: inherit;
    transform: translateY(-2px);
}

.tp-pp-event-media[b-jgimp6hzbk] {
    aspect-ratio: 16 / 9;
    background: #ece8f6;
    overflow: hidden;
    position: relative;
}

.tp-pp-event-media img[b-jgimp6hzbk] {
    height: 100%;
    object-fit: cover;
    width: 100%;
}

.tp-pp-event-date[b-jgimp6hzbk] {
    background: #fff;
    border-radius: 12px;
    left: 0.85rem;
    line-height: 1;
    padding: 0.5rem 0.65rem;
    position: absolute;
    text-align: center;
    top: 0.85rem;
}

.tp-pp-event-date strong[b-jgimp6hzbk] {
    color: #1c1730;
    display: block;
    font-size: 1.15rem;
    font-weight: 800;
}

.tp-pp-event-date span[b-jgimp6hzbk] {
    color: #6c2bd9;
    display: block;
    font-size: 0.68rem;
    font-weight: 700;
    letter-spacing: 0.05em;
    margin-top: 0.15rem;
}

.tp-pp-event-date--activity[b-jgimp6hzbk] {
    align-items: center;
    display: inline-flex;
    height: 44px;
    justify-content: center;
    padding: 0;
    width: 44px;
}

.tp-pp-event-date--activity i[b-jgimp6hzbk] {
    color: #6c2bd9;
    font-size: 1.1rem;
}

.tp-pp-event-body[b-jgimp6hzbk] {
    display: flex;
    flex: 1;
    flex-direction: column;
    padding: 1.15rem;
}

.tp-pp-event-body h4[b-jgimp6hzbk] {
    color: #1c1730;
    font-size: 1.05rem;
    font-weight: 800;
    letter-spacing: -0.01em;
    line-height: 1.3;
    margin: 0;
}

.tp-pp-event-meta[b-jgimp6hzbk] {
    align-items: center;
    color: #77728a;
    display: flex;
    font-size: 0.88rem;
    gap: 0.4rem;
    margin: 0.6rem 0 0;
}

.tp-pp-event-link[b-jgimp6hzbk] {
    align-items: center;
    color: #6c2bd9;
    display: inline-flex;
    font-size: 0.9rem;
    font-weight: 700;
    gap: 0.35rem;
    margin-top: auto;
    padding-top: 1.1rem;
}

.tp-pp-event-link i[b-jgimp6hzbk] {
    font-size: 0.8rem;
    transition: transform 0.18s ease;
}

.tp-pp-event-card:hover .tp-pp-event-link i[b-jgimp6hzbk] {
    transform: translateX(3px);
}

/* Empty state */
.tp-pp-empty[b-jgimp6hzbk] {
    align-items: center;
    background: #fbfafe;
    border: 1px solid #ececf2;
    border-radius: 14px;
    column-gap: 1.1rem;
    display: flex;
    flex-wrap: wrap;
    padding: 1.5rem 1.6rem;
    row-gap: 1rem;
}

.tp-pp-empty-icon[b-jgimp6hzbk] {
    align-items: center;
    background: #f1ecfb;
    border-radius: 12px;
    color: #6c2bd9;
    display: inline-flex;
    flex: 0 0 auto;
    font-size: 1.2rem;
    height: 44px;
    justify-content: center;
    width: 44px;
}

.tp-pp-empty-title[b-jgimp6hzbk] {
    color: #1c1730;
    font-size: 0.98rem;
    font-weight: 700;
    margin: 0;
}

.tp-pp-empty-sub[b-jgimp6hzbk] {
    color: #8a839b;
    font-size: 0.88rem;
    line-height: 1.5;
    margin: 0.2rem 0 0;
}

/* About */
.tp-pp-about[b-jgimp6hzbk] {
    background: #fff;
    border: 1px solid #ececf2;
    border-radius: 16px;
    padding: 1.75rem 1.9rem;
}

.tp-pp-about h3[b-jgimp6hzbk] {
    color: #1c1730;
    font-size: 1.25rem;
    font-weight: 800;
    letter-spacing: -0.01em;
    margin: 0 0 0.85rem;
}

.tp-pp-about-text[b-jgimp6hzbk] {
    color: #5f5972;
    font-size: 1rem;
    line-height: 1.7;
    margin: 0;
}

.tp-pp-specialties[b-jgimp6hzbk] {
    border-top: 1px solid #f0eef6;
    margin-top: 1.5rem;
    padding-top: 1.5rem;
}

.tp-pp-specialties h4[b-jgimp6hzbk] {
    color: #1c1730;
    font-size: 0.95rem;
    font-weight: 800;
    margin: 0 0 0.75rem;
}

.tp-pp-tags[b-jgimp6hzbk] {
    display: flex;
    flex-wrap: wrap;
    gap: 0.45rem;
}

.tp-pp-tags span[b-jgimp6hzbk] {
    background: #f1ecfb;
    border-radius: 999px;
    color: #5c20b6;
    font-size: 0.82rem;
    font-weight: 600;
    padding: 0.4rem 0.75rem;
}

.tp-pp-stats[b-jgimp6hzbk] {
    border-top: 1px solid #f0eef6;
    display: grid;
    gap: 1rem;
    grid-template-columns: repeat(3, 1fr);
    margin-top: 1.5rem;
    padding-top: 1.5rem;
}

.tp-pp-stats div[b-jgimp6hzbk] {
    text-align: center;
}

.tp-pp-stats strong[b-jgimp6hzbk] {
    color: #6c2bd9;
    display: block;
    font-size: 1.8rem;
    font-weight: 800;
    line-height: 1;
}

.tp-pp-stats span[b-jgimp6hzbk] {
    color: #8a839b;
    display: block;
    font-size: 0.82rem;
    font-weight: 600;
    margin-top: 0.4rem;
}

@media (max-width: 991px) {
    .tp-pp-hero-grid[b-jgimp6hzbk] {
        grid-template-columns: 1fr;
    }

    .tp-pp-snapshot[b-jgimp6hzbk] {
        max-width: 560px;
    }
}

@media (max-width: 640px) {
    .tp-pp-card-grid[b-jgimp6hzbk] {
        grid-template-columns: 1fr;
    }

    .tp-pp-snapshot[b-jgimp6hzbk] {
        grid-template-columns: 1fr;
    }

    .tp-pp-snapshot div + div[b-jgimp6hzbk] {
        border-left: 0;
        border-top: 1px solid rgba(255, 255, 255, 0.18);
    }

    .tp-pp-identity[b-jgimp6hzbk] {
        align-items: flex-start;
        flex-direction: column;
    }

    .tp-pp-stats[b-jgimp6hzbk] {
        grid-template-columns: 1fr;
    }

    .tp-pp-tabs[b-jgimp6hzbk] {
        flex-wrap: nowrap;
        overflow-x: auto;
    }
}
/* _content/Apps.TicketPulse/Components/Pages/Promotors.razor.rz.scp.css */
.tp-promoters-page[b-f5p26eu31t] {
    background: #f7f7fb;
    color: #241f35;
    min-height: 100vh;
}

.tp-promoters-loading[b-f5p26eu31t],
.tp-promoters-empty-page[b-f5p26eu31t] {
    align-items: center;
    display: flex;
    flex-direction: column;
    gap: 1rem;
    justify-content: center;
    min-height: 62vh;
    padding: 4rem 1rem;
    text-align: center;
}

.tp-promoters-empty-page--contained[b-f5p26eu31t] {
    background: #fff;
    border: 1px solid #ececf2;
    border-radius: 18px;
    min-height: 360px;
}

.tp-promoters-empty-page i[b-f5p26eu31t] {
    align-items: center;
    background: #f0e8ff;
    border-radius: 50%;
    color: #6c2bd9;
    display: inline-flex;
    font-size: 2rem;
    height: 72px;
    justify-content: center;
    width: 72px;
}

.tp-promoters-empty-page h1[b-f5p26eu31t] {
    font-size: clamp(2rem, 4vw, 3rem);
    font-weight: 900;
    letter-spacing: 0;
    margin: 0;
}

.tp-promoters-empty-page p[b-f5p26eu31t],
.tp-promoters-loading p[b-f5p26eu31t] {
    color: #77728a;
    margin: 0;
}

.tp-promoters-empty-page button[b-f5p26eu31t],
.tp-promoters-empty-page a[b-f5p26eu31t] {
    align-items: center;
    background: #6c2bd9;
    border: 0;
    border-radius: 999px;
    color: #fff;
    display: inline-flex;
    font-weight: 900;
    min-height: 44px;
    padding: 0.75rem 1.15rem;
    text-decoration: none;
}

.tp-promoters-hero[b-f5p26eu31t] {
    background: linear-gradient(135deg, #2a1645 0%, #6c2bd9 55%, #4b168f 100%);
    color: #fff;
    padding: 5rem 0 4.5rem;
}

.tp-promoters-hero-grid[b-f5p26eu31t] {
    align-items: end;
    display: grid;
    gap: 2rem;
    grid-template-columns: minmax(0, 1fr) minmax(300px, 420px);
}

.tp-promoters-eyebrow[b-f5p26eu31t] {
    color: #d8c6ff;
    display: block;
    font-size: 0.78rem;
    font-weight: 900;
    letter-spacing: 0.08em;
    margin-bottom: 0.8rem;
    text-transform: uppercase;
}

.tp-promoters-hero h1[b-f5p26eu31t] {
    font-size: clamp(2.8rem, 6vw, 5.4rem);
    font-weight: 900;
    letter-spacing: 0;
    line-height: 0.95;
    margin: 0 0 1rem;
    max-width: 860px;
}

.tp-promoters-hero p[b-f5p26eu31t] {
    color: rgba(255, 255, 255, 0.82);
    font-size: 1.08rem;
    line-height: 1.7;
    margin: 0;
    max-width: 640px;
}

.tp-promoters-summary[b-f5p26eu31t] {
    background: rgba(255, 255, 255, 0.1);
    border: 1px solid rgba(255, 255, 255, 0.22);
    border-radius: 18px;
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    overflow: hidden;
}

.tp-promoters-summary div[b-f5p26eu31t] {
    padding: 1.3rem 1rem;
    text-align: center;
}

.tp-promoters-summary div + div[b-f5p26eu31t] {
    border-left: 1px solid rgba(255, 255, 255, 0.18);
}

.tp-promoters-summary strong[b-f5p26eu31t] {
    display: block;
    font-size: 2rem;
    font-weight: 900;
    line-height: 1;
}

.tp-promoters-summary span[b-f5p26eu31t] {
    color: rgba(255, 255, 255, 0.76);
    display: block;
    font-size: 0.78rem;
    font-weight: 800;
    margin-top: 0.45rem;
    text-transform: uppercase;
}

.tp-promoters-directory[b-f5p26eu31t] {
    padding: 4rem 0;
}

.tp-promoters-controls[b-f5p26eu31t] {
    align-items: stretch;
    background: #fff;
    border: 1px solid #ececf2;
    border-radius: 16px;
    display: grid;
    gap: 1px;
    grid-template-columns: minmax(0, 1fr) minmax(190px, 240px) minmax(170px, 220px);
    margin-bottom: 3rem;
    overflow: hidden;
}

.tp-promoters-search[b-f5p26eu31t],
.tp-promoters-select[b-f5p26eu31t] {
    background: #fff;
    display: flex;
    flex-direction: column;
    justify-content: center;
    min-height: 76px;
    padding: 0.95rem 1.1rem;
    position: relative;
}

.tp-promoters-search[b-f5p26eu31t] {
    padding-left: 3.35rem;
}

.tp-promoters-search i[b-f5p26eu31t] {
    align-items: center;
    background: #f0e8ff;
    border-radius: 12px;
    color: #6c2bd9;
    display: inline-flex;
    height: 34px;
    justify-content: center;
    left: 1rem;
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    width: 34px;
}

.tp-promoters-search label[b-f5p26eu31t],
.tp-promoters-select span[b-f5p26eu31t] {
    color: #8c879e;
    font-size: 0.72rem;
    font-weight: 900;
    letter-spacing: 0.06em;
    margin-bottom: 0.25rem;
    text-transform: uppercase;
}

.tp-promoters-search input[b-f5p26eu31t],
.tp-promoters-select select[b-f5p26eu31t] {
    background: transparent;
    border: 0;
    color: #241f35;
    font-size: 1rem;
    font-weight: 800;
    outline: 0;
    width: 100%;
}

.tp-promoters-search input[b-f5p26eu31t]::placeholder {
    color: #aaa4b8;
    font-weight: 600;
}

.tp-promoters-select[b-f5p26eu31t] {
    border-left: 1px solid #eeeaf8;
}

.tp-promoters-results-heading[b-f5p26eu31t] {
    align-items: end;
    display: flex;
    justify-content: space-between;
    margin-bottom: 1rem;
}

.tp-promoters-results-heading span[b-f5p26eu31t] {
    color: #6c2bd9;
    display: block;
    font-size: 0.78rem;
    font-weight: 900;
    letter-spacing: 0.08em;
    margin-bottom: 0.4rem;
    text-transform: uppercase;
}

.tp-promoters-results-heading h2[b-f5p26eu31t] {
    font-size: clamp(2rem, 4vw, 3.1rem);
    font-weight: 900;
    letter-spacing: 0;
    line-height: 1;
    margin: 0;
}

.tp-promoters-results-heading p[b-f5p26eu31t] {
    color: #77728a;
    margin: 0.55rem 0 0;
}

.tp-promoters-results-heading button[b-f5p26eu31t],
.tp-promoters-empty-results button[b-f5p26eu31t] {
    background: transparent;
    border: 0;
    color: #6c2bd9;
    font-weight: 900;
    padding: 0;
    text-decoration: underline;
}

.tp-promoters-filter-chips[b-f5p26eu31t] {
    display: flex;
    flex-wrap: wrap;
    gap: 0.6rem;
    margin: 0 0 1.5rem;
}

.tp-promoters-filter-chips span[b-f5p26eu31t] {
    align-items: center;
    background: #efe7ff;
    border-radius: 999px;
    color: #5c20b6;
    display: inline-flex;
    font-size: 0.85rem;
    font-weight: 900;
    gap: 0.35rem;
    padding: 0.45rem 0.7rem;
}

.tp-promoters-grid[b-f5p26eu31t] {
    display: grid;
    gap: 1.25rem;
    grid-template-columns: repeat(3, minmax(0, 1fr));
}

.tp-promoter-card[b-f5p26eu31t] {
    background: #fff;
    border: 1px solid #ececf2;
    border-radius: 16px;
    display: flex;
    flex-direction: column;
    min-height: 100%;
    overflow: hidden;
    transition: border-color 0.18s ease, transform 0.18s ease;
}

.tp-promoter-card:hover[b-f5p26eu31t] {
    border-color: #c7b6ff;
    transform: translateY(-2px);
}

.tp-promoter-card-main[b-f5p26eu31t] {
    color: inherit;
    display: grid;
    gap: 1rem;
    grid-template-columns: 76px minmax(0, 1fr);
    padding: 1.2rem 1.2rem 0;
    text-decoration: none;
}

.tp-promoter-card-main:hover[b-f5p26eu31t] {
    color: inherit;
}

.tp-promoter-logo[b-f5p26eu31t] {
    align-items: center;
    background: #f1ecfb;
    border: 1px solid #ececf2;
    border-radius: 14px;
    display: flex;
    height: 76px;
    justify-content: center;
    overflow: hidden;
    width: 76px;
}

.tp-promoter-logo img[b-f5p26eu31t] {
    height: 100%;
    object-fit: cover;
    width: 100%;
}

.tp-promoter-location[b-f5p26eu31t] {
    align-items: center;
    color: #77728a;
    display: flex;
    font-size: 0.84rem;
    font-weight: 800;
    gap: 0.35rem;
    margin-bottom: 0.55rem;
}

.tp-promoter-location i[b-f5p26eu31t] {
    color: #6c2bd9;
}

.tp-promoter-card h3[b-f5p26eu31t] {
    font-size: 1.15rem;
    font-weight: 900;
    line-height: 1.25;
    margin: 0;
}

.tp-promoter-card p[b-f5p26eu31t] {
    color: #77728a;
    font-size: 0.92rem;
    line-height: 1.55;
    margin: 0.65rem 0 0;
}

.tp-promoter-meta[b-f5p26eu31t] {
    display: flex;
    flex-wrap: wrap;
    gap: 0.45rem;
    margin: 1rem 1.2rem 1.1rem;
}

.tp-promoter-meta span[b-f5p26eu31t] {
    background: #f7f3ff;
    border: 1px solid #eee4ff;
    border-radius: 999px;
    color: #5c20b6;
    font-size: 0.76rem;
    font-weight: 900;
    padding: 0.35rem 0.55rem;
}

.tp-promoter-card-footer[b-f5p26eu31t] {
    align-items: center;
    border-top: 1px solid #eeeaf8;
    display: flex;
    gap: 1rem;
    justify-content: space-between;
    margin-top: auto;
    padding: 0.9rem 1.2rem;
}

.tp-promoter-card-footer span[b-f5p26eu31t] {
    color: #8c879e;
    font-size: 0.8rem;
    font-weight: 800;
}

.tp-promoter-card-footer a[b-f5p26eu31t] {
    align-items: center;
    color: #6c2bd9;
    display: inline-flex;
    font-size: 0.9rem;
    font-weight: 900;
    gap: 0.35rem;
    text-decoration: none;
    white-space: nowrap;
}

.tp-promoters-empty-results[b-f5p26eu31t] {
    align-items: center;
    background: #fff;
    border: 1px dashed #d8cffa;
    border-radius: 22px;
    display: flex;
    flex-direction: column;
    gap: 0.75rem;
    justify-content: center;
    min-height: 280px;
    padding: 2rem;
    text-align: center;
}

.tp-promoters-empty-results i[b-f5p26eu31t] {
    align-items: center;
    background: #f0e8ff;
    border-radius: 50%;
    color: #6c2bd9;
    display: inline-flex;
    font-size: 1.8rem;
    height: 64px;
    justify-content: center;
    width: 64px;
}

.tp-promoters-empty-results h3[b-f5p26eu31t] {
    font-size: 1.35rem;
    font-weight: 900;
    margin: 0;
}

.tp-promoters-empty-results p[b-f5p26eu31t] {
    color: #77728a;
    margin: 0;
}

.tp-promoters-pagination[b-f5p26eu31t] {
    display: flex;
    gap: 0.5rem;
    justify-content: center;
    margin-top: 2rem;
}

.tp-promoters-pagination button[b-f5p26eu31t] {
    align-items: center;
    background: #fff;
    border: 1px solid #eeeaf8;
    border-radius: 12px;
    color: #6c2bd9;
    display: inline-flex;
    font-weight: 900;
    height: 42px;
    justify-content: center;
    min-width: 42px;
    padding: 0 0.8rem;
}

.tp-promoters-pagination button.is-active[b-f5p26eu31t] {
    background: #6c2bd9;
    border-color: #6c2bd9;
    color: #fff;
}

.tp-promoters-pagination button:disabled[b-f5p26eu31t] {
    color: #bbb4c8;
    cursor: not-allowed;
}

.tp-promoters-cta[b-f5p26eu31t] {
    padding: 0 0 5rem;
}

.tp-promoters-cta-panel[b-f5p26eu31t] {
    align-items: center;
    background: linear-gradient(135deg, #241333, #5b22ba);
    border-radius: 24px;
    color: #fff;
    display: grid;
    gap: 2rem;
    grid-template-columns: minmax(0, 1fr) auto;
    padding: 2rem;
}

.tp-promoters-cta-panel h2[b-f5p26eu31t] {
    font-size: clamp(1.8rem, 3vw, 2.6rem);
    font-weight: 900;
    margin: 0 0 0.75rem;
}

.tp-promoters-cta-panel p[b-f5p26eu31t] {
    color: rgba(255, 255, 255, 0.8);
    line-height: 1.7;
    margin: 0;
    max-width: 720px;
}

.tp-promoters-cta-panel a[b-f5p26eu31t] {
    align-items: center;
    background: #fff;
    border-radius: 999px;
    color: #4c1d95;
    display: inline-flex;
    font-weight: 900;
    justify-content: center;
    min-height: 46px;
    padding: 0.8rem 1.2rem;
    text-decoration: none;
    white-space: nowrap;
}

@media (max-width: 991px) {
    .tp-promoters-hero-grid[b-f5p26eu31t],
    .tp-promoters-cta-panel[b-f5p26eu31t] {
        grid-template-columns: 1fr;
    }

    .tp-promoters-summary[b-f5p26eu31t] {
        max-width: 520px;
    }

    .tp-promoters-controls[b-f5p26eu31t] {
        grid-template-columns: 1fr;
    }

    .tp-promoters-select[b-f5p26eu31t] {
        border-left: 0;
        border-top: 1px solid #eeeaf8;
    }

    .tp-promoters-grid[b-f5p26eu31t] {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
}

@media (max-width: 640px) {
    .tp-promoters-hero[b-f5p26eu31t] {
        padding: 3.5rem 0;
    }

    .tp-promoters-summary[b-f5p26eu31t],
    .tp-promoters-grid[b-f5p26eu31t] {
        grid-template-columns: 1fr;
    }

    .tp-promoters-summary div + div[b-f5p26eu31t] {
        border-left: 0;
        border-top: 1px solid rgba(255, 255, 255, 0.18);
    }

    .tp-promoters-results-heading[b-f5p26eu31t] {
        align-items: flex-start;
        flex-direction: column;
        gap: 1rem;
    }

    .tp-promoter-card-main[b-f5p26eu31t] {
        grid-template-columns: 64px minmax(0, 1fr);
    }

    .tp-promoter-logo[b-f5p26eu31t] {
        height: 64px;
        width: 64px;
    }

    .tp-promoter-card-footer[b-f5p26eu31t] {
        align-items: flex-start;
        flex-direction: column;
    }
}
/* _content/Apps.TicketPulse/Components/Pages/RegionEmptyState.razor.rz.scp.css */
.tp-region-empty-state[b-4z1n7jgsv7] {
    align-items: center;
    background: #fbfafe;
    border: 1px solid #ececf2;
    border-radius: 14px;
    column-gap: 1.1rem;
    display: flex;
    flex-wrap: wrap;
    padding: 1.5rem 1.6rem;
    row-gap: 1rem;
}

.tp-region-empty-icon[b-4z1n7jgsv7] {
    align-items: center;
    background: #f1ecfb;
    border-radius: 12px;
    color: #6c2bd9;
    display: inline-flex;
    flex: 0 0 auto;
    font-size: 1.2rem;
    height: 44px;
    justify-content: center;
    width: 44px;
}

.tp-region-empty-copy[b-4z1n7jgsv7] {
    flex: 1 1 240px;
    min-width: 0;
}

.tp-region-empty-title[b-4z1n7jgsv7] {
    color: #1c1730;
    font-size: 0.98rem;
    font-weight: 600;
    margin: 0;
}

.tp-region-empty-sub[b-4z1n7jgsv7] {
    color: #8a839b;
    font-size: 0.88rem;
    line-height: 1.5;
    margin: 0.2rem 0 0;
}

.tp-region-empty-action[b-4z1n7jgsv7] {
    align-items: center;
    color: #6c2bd9;
    display: inline-flex;
    flex: 0 0 auto;
    font-size: 0.88rem;
    font-weight: 600;
    gap: 0.35rem;
    text-decoration: none;
    white-space: nowrap;
}

.tp-region-empty-action i[b-4z1n7jgsv7] {
    font-size: 0.8rem;
    transition: transform 0.18s ease;
}

.tp-region-empty-action:hover[b-4z1n7jgsv7] {
    color: #4c1d95;
}

.tp-region-empty-action:hover i[b-4z1n7jgsv7] {
    transform: translateX(3px);
}

@media (max-width: 640px) {
    .tp-region-empty-state[b-4z1n7jgsv7] {
        align-items: flex-start;
    }
}
/* _content/Apps.TicketPulse/Components/Pages/RegionListingSection.razor.rz.scp.css */
.tp-region-listing-section[b-uq641f69c0] {
    margin-top: 2.75rem;
}

.tp-region-listing-section:first-of-type[b-uq641f69c0] {
    margin-top: 0;
}

.tp-region-listing-section-header[b-uq641f69c0] {
    align-items: baseline;
    border-bottom: 1px solid #ececf2;
    column-gap: 1rem;
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    margin-bottom: 1.4rem;
    padding-bottom: 0.85rem;
    row-gap: 0.5rem;
}

.tp-region-listing-section-header h3[b-uq641f69c0] {
    align-items: baseline;
    color: #1c1730;
    display: flex;
    font-size: 1.15rem;
    font-weight: 700;
    gap: 0.55rem;
    letter-spacing: -0.01em;
    margin: 0;
}

.tp-region-listing-section-header h3 i[b-uq641f69c0] {
    color: #6c2bd9;
    font-size: 1rem;
    position: relative;
    top: 1px;
}

.tp-region-listing-section-header h3 span[b-uq641f69c0] {
    color: #9a93ad;
    font-size: 0.95rem;
    font-weight: 600;
}

.tp-region-listing-section-header a[b-uq641f69c0] {
    align-items: center;
    color: #6c2bd9;
    display: inline-flex;
    font-size: 0.88rem;
    font-weight: 600;
    gap: 0.35rem;
    text-decoration: none;
}

.tp-region-listing-section-header a i[b-uq641f69c0] {
    font-size: 0.8rem;
    transition: transform 0.18s ease;
}

.tp-region-listing-section-header a:hover[b-uq641f69c0] {
    color: #4c1d95;
}

.tp-region-listing-section-header a:hover i[b-uq641f69c0] {
    transform: translateX(3px);
}

@media (max-width: 640px) {
    .tp-region-listing-section-header[b-uq641f69c0] {
        align-items: flex-start;
        flex-direction: column;
    }
}
/* _content/Apps.TicketPulse/Components/Pages/RegionPage.razor.rz.scp.css */
.tp-region-detail[b-igupnyprcw] {
    background: #f7f7fb;
    color: #211c32;
    min-height: 100vh;
}

.tp-region-loading[b-igupnyprcw],
.tp-region-not-found[b-igupnyprcw] {
    align-items: center;
    display: flex;
    flex-direction: column;
    gap: 1rem;
    justify-content: center;
    min-height: 65vh;
    padding: 4rem 1rem;
    text-align: center;
}

.tp-region-not-found i[b-igupnyprcw] {
    color: #7c3aed;
    font-size: 3rem;
}

.tp-region-not-found h1[b-igupnyprcw] {
    font-size: 2.25rem;
    font-weight: 800;
    margin: 0;
}

.tp-region-not-found p[b-igupnyprcw],
.tp-region-loading p[b-igupnyprcw] {
    color: #6d6880;
    margin: 0;
}

.tp-region-not-found a[b-igupnyprcw] {
    align-items: center;
    background: #6c2bd9;
    border-radius: 999px;
    color: #fff;
    display: inline-flex;
    font-weight: 800;
    min-height: 44px;
    padding: 0.8rem 1.25rem;
    text-decoration: none;
}

.tp-region-hero[b-igupnyprcw] {
    background-position: center;
    background-size: cover;
    color: #fff;
}

.tp-region-hero-overlay[b-igupnyprcw] {
    padding: 4.5rem 0 5rem;
}

.tp-region-back[b-igupnyprcw] {
    align-items: center;
    color: rgba(255, 255, 255, 0.82);
    display: inline-flex;
    font-size: 0.95rem;
    font-weight: 700;
    gap: 0.45rem;
    margin-bottom: 2.2rem;
    text-decoration: none;
}

.tp-region-back:hover[b-igupnyprcw] {
    color: #fff;
}

.tp-region-hero-grid[b-igupnyprcw] {
    align-items: end;
    display: grid;
    gap: 2rem;
    grid-template-columns: minmax(0, 1fr) minmax(280px, 380px);
}

.tp-region-eyebrow[b-igupnyprcw] {
    color: #d8c6ff;
    display: block;
    font-size: 0.78rem;
    font-weight: 900;
    letter-spacing: 0.08em;
    margin-bottom: 0.9rem;
    text-transform: uppercase;
}

.tp-region-hero-copy h1[b-igupnyprcw] {
    font-size: clamp(3rem, 7vw, 6.2rem);
    font-weight: 900;
    line-height: 0.92;
    margin: 0 0 1.25rem;
    max-width: 780px;
}

.tp-region-lead[b-igupnyprcw] {
    color: rgba(255, 255, 255, 0.86);
    font-size: 1.12rem;
    line-height: 1.7;
    max-width: 720px;
}

.tp-region-lead :deep(p)[b-igupnyprcw] {
    margin-bottom: 0;
}

.tp-region-hero-actions[b-igupnyprcw] {
    display: flex;
    flex-wrap: wrap;
    gap: 0.8rem;
    margin-top: 1.8rem;
}

.tp-region-primary-link[b-igupnyprcw],
.tp-region-secondary-link[b-igupnyprcw] {
    align-items: center;
    border-radius: 999px;
    display: inline-flex;
    font-weight: 900;
    gap: 0.55rem;
    min-height: 46px;
    padding: 0.8rem 1.15rem;
    text-decoration: none;
}

.tp-region-primary-link[b-igupnyprcw] {
    background: #fff;
    color: #4c1d95;
}

.tp-region-secondary-link[b-igupnyprcw] {
    border: 1px solid rgba(255, 255, 255, 0.36);
    color: #fff;
}

.tp-region-primary-link:hover[b-igupnyprcw],
.tp-region-secondary-link:hover[b-igupnyprcw] {
    transform: translateY(-1px);
}

.tp-region-snapshot[b-igupnyprcw] {
    background: rgba(255, 255, 255, 0.12);
    border: 1px solid rgba(255, 255, 255, 0.2);
    border-radius: 24px;
    box-shadow: 0 24px 80px rgba(18, 8, 43, 0.28);
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    overflow: hidden;
}

.tp-region-snapshot-item[b-igupnyprcw] {
    padding: 1.35rem 1rem;
    text-align: center;
}

.tp-region-snapshot-item + .tp-region-snapshot-item[b-igupnyprcw] {
    border-left: 1px solid rgba(255, 255, 255, 0.18);
}

.tp-region-snapshot-item strong[b-igupnyprcw] {
    display: block;
    font-size: 2rem;
    font-weight: 900;
    line-height: 1;
}

.tp-region-snapshot-item span[b-igupnyprcw] {
    color: rgba(255, 255, 255, 0.78);
    display: block;
    font-size: 0.85rem;
    font-weight: 700;
    margin-top: 0.45rem;
    text-transform: uppercase;
}

.tp-region-listings[b-igupnyprcw] {
    padding: 4rem 0 2rem;
}

.tp-region-section-heading[b-igupnyprcw] {
    margin-bottom: 2rem;
    max-width: 720px;
}

.tp-region-section-heading span[b-igupnyprcw] {
    color: #6c2bd9;
    display: block;
    font-size: 0.78rem;
    font-weight: 900;
    letter-spacing: 0.08em;
    margin-bottom: 0.6rem;
    text-transform: uppercase;
}

.tp-region-section-heading h2[b-igupnyprcw] {
    font-size: clamp(2rem, 4vw, 3.35rem);
    font-weight: 900;
    letter-spacing: 0;
    line-height: 1.02;
    margin: 0;
}

.tp-region-section-heading p[b-igupnyprcw] {
    color: #77728a;
    font-size: 1.05rem;
    margin: 0.8rem 0 0;
}

.tp-region-section-heading--compact[b-igupnyprcw] {
    margin-bottom: 1.5rem;
}

.tp-region-card-grid[b-igupnyprcw] {
    display: grid;
    gap: 1.25rem;
    grid-template-columns: repeat(3, minmax(0, 1fr));
}

.tp-region-listing-card[b-igupnyprcw] {
    background: #fff;
    border: 1px solid #ececf2;
    border-radius: 16px;
    color: inherit;
    display: flex;
    flex-direction: column;
    min-height: 100%;
    overflow: hidden;
    text-decoration: none;
    transition: transform 0.18s ease, border-color 0.18s ease;
}

.tp-region-listing-card:hover[b-igupnyprcw] {
    border-color: #c7b6ff;
    color: inherit;
    transform: translateY(-2px);
}

.tp-region-listing-media[b-igupnyprcw] {
    aspect-ratio: 16 / 10;
    background: #ece8f6;
    overflow: hidden;
    position: relative;
}

.tp-region-listing-media img[b-igupnyprcw] {
    height: 100%;
    object-fit: cover;
    width: 100%;
}

.tp-region-listing-badge[b-igupnyprcw] {
    background: #ff3f75;
    border-radius: 999px;
    color: #fff;
    font-size: 0.72rem;
    font-weight: 900;
    left: 0.85rem;
    padding: 0.42rem 0.62rem;
    position: absolute;
    text-transform: uppercase;
    top: 0.85rem;
}

.tp-region-listing-badge--activity[b-igupnyprcw] {
    background: #1aa7ec;
}

.tp-region-listing-badge--stay[b-igupnyprcw] {
    background: #6c2bd9;
}

.tp-region-listing-body[b-igupnyprcw] {
    display: flex;
    flex: 1;
    flex-direction: column;
    padding: 1.15rem;
}

.tp-region-listing-date[b-igupnyprcw] {
    align-items: center;
    color: #7f7892;
    display: flex;
    font-size: 0.88rem;
    gap: 0.4rem;
    margin-bottom: 0.7rem;
}

.tp-region-listing-body h3[b-igupnyprcw] {
    font-size: 1.08rem;
    font-weight: 900;
    line-height: 1.25;
    margin: 0;
}

.tp-region-listing-meta[b-igupnyprcw] {
    color: #77728a;
    font-size: 0.9rem;
    line-height: 1.4;
    margin-top: 0.7rem;
}

.tp-region-listing-price[b-igupnyprcw] {
    color: #6c2bd9;
    font-size: 0.98rem;
    font-weight: 900;
    margin-top: auto;
    padding-top: 1.1rem;
}

.tp-region-gallery-section[b-igupnyprcw] {
    background: #fff;
    padding: 4rem 0;
}

.tp-region-gallery-grid[b-igupnyprcw] {
    display: grid;
    gap: 1rem;
    grid-template-columns: 1.4fr 1fr 1fr;
}

.tp-region-gallery-item[b-igupnyprcw] {
    background: #171321;
    border-radius: 18px;
    margin: 0;
    min-height: 220px;
    overflow: hidden;
    position: relative;
}

.tp-region-gallery-item--feature[b-igupnyprcw] {
    grid-row: span 2;
    min-height: 456px;
}

.tp-region-gallery-item img[b-igupnyprcw] {
    height: 100%;
    object-fit: cover;
    width: 100%;
}

.tp-region-gallery-item[b-igupnyprcw]::after {
    background: linear-gradient(180deg, transparent, rgba(12, 8, 24, 0.74));
    bottom: 0;
    content: "";
    left: 0;
    position: absolute;
    right: 0;
    top: 0;
}

.tp-region-gallery-item figcaption[b-igupnyprcw] {
    bottom: 1rem;
    color: #fff;
    font-size: 1rem;
    font-weight: 900;
    left: 1rem;
    position: absolute;
    right: 1rem;
    z-index: 1;
}

.tp-region-info-section[b-igupnyprcw] {
    padding: 4rem 0 5rem;
}

.tp-region-info-panel[b-igupnyprcw] {
    align-items: center;
    background: linear-gradient(135deg, #241333, #5b22ba);
    border-radius: 24px;
    color: #fff;
    display: grid;
    gap: 2rem;
    grid-template-columns: minmax(0, 1fr) auto;
    padding: 2rem;
}

.tp-region-info-panel h2[b-igupnyprcw] {
    font-size: clamp(1.8rem, 3vw, 2.6rem);
    font-weight: 900;
    margin: 0 0 0.75rem;
}

.tp-region-info-panel p[b-igupnyprcw] {
    color: rgba(255, 255, 255, 0.8);
    line-height: 1.7;
    margin: 0;
    max-width: 760px;
}

.tp-region-info-actions[b-igupnyprcw] {
    display: flex;
    flex-wrap: wrap;
    gap: 0.75rem;
    justify-content: flex-end;
}

.tp-region-info-actions a[b-igupnyprcw] {
    align-items: center;
    background: #fff;
    border-radius: 999px;
    color: #4c1d95;
    display: inline-flex;
    font-weight: 900;
    min-height: 44px;
    padding: 0.75rem 1.1rem;
    text-decoration: none;
    white-space: nowrap;
}

.tp-region-info-actions a:last-child[b-igupnyprcw] {
    background: rgba(255, 255, 255, 0.12);
    border: 1px solid rgba(255, 255, 255, 0.24);
    color: #fff;
}

@media (max-width: 991px) {
    .tp-region-hero-grid[b-igupnyprcw],
    .tp-region-info-panel[b-igupnyprcw] {
        grid-template-columns: 1fr;
    }

    .tp-region-snapshot[b-igupnyprcw] {
        max-width: 520px;
    }

    .tp-region-card-grid[b-igupnyprcw] {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .tp-region-gallery-grid[b-igupnyprcw] {
        grid-template-columns: 1fr 1fr;
    }

    .tp-region-gallery-item--feature[b-igupnyprcw] {
        grid-column: span 2;
        min-height: 360px;
    }

    .tp-region-info-actions[b-igupnyprcw] {
        justify-content: flex-start;
    }
}

@media (max-width: 640px) {
    .tp-region-hero-overlay[b-igupnyprcw] {
        padding: 3rem 0 3.5rem;
    }

    .tp-region-hero-actions[b-igupnyprcw],
    .tp-region-info-actions[b-igupnyprcw] {
        flex-direction: column;
    }

    .tp-region-primary-link[b-igupnyprcw],
    .tp-region-secondary-link[b-igupnyprcw],
    .tp-region-info-actions a[b-igupnyprcw] {
        justify-content: center;
        width: 100%;
    }

    .tp-region-snapshot[b-igupnyprcw] {
        grid-template-columns: 1fr;
    }

    .tp-region-snapshot-item + .tp-region-snapshot-item[b-igupnyprcw] {
        border-left: 0;
        border-top: 1px solid rgba(255, 255, 255, 0.18);
    }

    .tp-region-card-grid[b-igupnyprcw],
    .tp-region-gallery-grid[b-igupnyprcw] {
        grid-template-columns: 1fr;
    }

    .tp-region-gallery-item--feature[b-igupnyprcw] {
        grid-column: auto;
        min-height: 260px;
    }

    [b-igupnyprcw](.tp-region-listing-section-header) {
        align-items: flex-start;
        flex-direction: column;
        gap: 0.75rem;
    }
}
/* _content/Apps.TicketPulse/Components/Pages/RegionsPage.razor.rz.scp.css */
.tp-regions-page[b-ag5wdscxgf] {
    background: #F7F7FA;
    min-height: 100vh;
}

.tp-regions-loading[b-ag5wdscxgf] {
    color: #6B7280;
    display: grid;
    min-height: 360px;
    place-items: center;
    text-align: center;
}

.tp-regions-loading p[b-ag5wdscxgf] {
    margin: 1rem 0 0;
}

.tp-regions-loading .spinner-border[b-ag5wdscxgf],
[b-ag5wdscxgf] .tp-regions-loading .spinner-border {
    color: #6C2BD9 !important;
}

.tp-regions-hero[b-ag5wdscxgf] {
    background: linear-gradient(135deg, #6C2BD9 0%, #4A1A9E 100%);
    color: white;
    padding: 4rem 0 4.4rem;
}

.tp-regions-hero-content[b-ag5wdscxgf] {
    max-width: 780px;
}

.tp-regions-eyebrow[b-ag5wdscxgf] {
    color: #7C3AED;
    font-size: 0.78rem;
    font-weight: 850;
    letter-spacing: 0.1em;
    margin: 0 0 0.7rem;
    text-transform: uppercase;
}

.tp-regions-hero .tp-regions-eyebrow[b-ag5wdscxgf] {
    color: rgba(255,255,255,0.68);
}

.tp-regions-hero h1[b-ag5wdscxgf] {
    font-family: 'Outfit', sans-serif;
    font-size: clamp(2.4rem, 5vw, 4.6rem);
    font-weight: 900;
    letter-spacing: 0;
    line-height: 0.98;
    margin: 0 0 1rem;
}

.tp-regions-lead[b-ag5wdscxgf] {
    color: rgba(255,255,255,0.78);
    font-size: 1.06rem;
    line-height: 1.65;
    margin: 0;
    max-width: 680px;
}

.tp-regions-hero-meta[b-ag5wdscxgf] {
    display: flex;
    flex-wrap: wrap;
    gap: 0.65rem;
    margin-top: 1.5rem;
}

.tp-regions-hero-meta span[b-ag5wdscxgf] {
    align-items: center;
    background: rgba(255,255,255,0.12);
    border: 1px solid rgba(255,255,255,0.18);
    border-radius: 999px;
    color: rgba(255,255,255,0.86);
    display: inline-flex;
    font-weight: 750;
    gap: 0.45rem;
    padding: 0.55rem 0.85rem;
}

.tp-regions-directory[b-ag5wdscxgf] {
    padding: 3rem 0 2rem;
}

.tp-regions-section-header[b-ag5wdscxgf] {
    align-items: end;
    border-bottom: 1px solid #E8ECF1;
    display: flex;
    justify-content: space-between;
    margin-bottom: 1.5rem;
    padding-bottom: 1rem;
}

.tp-regions-section-header h2[b-ag5wdscxgf] {
    color: #1A1D23;
    font-family: 'Outfit', sans-serif;
    font-size: clamp(1.8rem, 3vw, 2.35rem);
    font-weight: 900;
    letter-spacing: 0;
    margin: 0 0 0.3rem;
}

.tp-regions-section-header p:last-child[b-ag5wdscxgf] {
    color: #6B7280;
    margin: 0;
}

.tp-regions-grid[b-ag5wdscxgf] {
    display: grid;
    gap: 1rem;
    grid-template-columns: repeat(3, minmax(0, 1fr));
}

.tp-regions-card[b-ag5wdscxgf] {
    background: white;
    border: 1px solid #E8ECF1;
    border-radius: 8px;
    color: inherit;
    display: flex;
    flex-direction: column;
    min-height: 100%;
    overflow: hidden;
    text-decoration: none;
    transition: transform 0.22s ease, box-shadow 0.22s ease, border-color 0.22s ease;
}

.tp-regions-card:hover[b-ag5wdscxgf] {
    border-color: rgba(108,43,217,0.2);
    box-shadow: 0 12px 32px rgba(15,23,42,0.08);
    color: inherit;
    transform: translateY(-3px);
}

.tp-regions-card-media[b-ag5wdscxgf] {
    background-color: #1F2937;
    background-position: center;
    background-size: cover;
    min-height: 190px;
    position: relative;
}

.tp-regions-card-media[b-ag5wdscxgf]::after {
    background: linear-gradient(180deg, rgba(15,23,42,0.04) 0%, rgba(15,23,42,0.16) 45%, rgba(15,23,42,0.42) 100%);
    content: "";
    inset: 0;
    position: absolute;
}

.tp-regions-card-badge[b-ag5wdscxgf] {
    background: rgba(255,255,255,0.9);
    border-radius: 999px;
    color: #4A1A9E;
    font-size: 0.68rem;
    font-weight: 850;
    left: 0.9rem;
    letter-spacing: 0.06em;
    padding: 0.32rem 0.62rem;
    position: absolute;
    text-transform: uppercase;
    top: 0.9rem;
    z-index: 1;
}

.tp-regions-card-body[b-ag5wdscxgf] {
    display: grid;
    flex: 1;
    gap: 0.7rem;
    padding: 1rem;
}

.tp-regions-card-body h3[b-ag5wdscxgf] {
    color: #1A1D23;
    font-family: 'Outfit', sans-serif;
    font-size: 1.18rem;
    font-weight: 850;
    letter-spacing: 0;
    margin: 0;
}

.tp-regions-card-body p[b-ag5wdscxgf] {
    color: #6B7280;
    font-size: 0.92rem;
    line-height: 1.5;
    margin: 0;
}

.tp-regions-card-actions[b-ag5wdscxgf] {
    align-items: center;
    border-top: 1px solid #EEF0F4;
    color: #6C2BD9;
    display: flex;
    font-size: 0.86rem;
    font-weight: 850;
    justify-content: space-between;
    margin-top: auto;
    padding-top: 0.85rem;
}

.tp-regions-card-search[b-ag5wdscxgf] {
    align-items: center;
    color: #5F6577;
    display: inline-flex;
    gap: 0.35rem;
}

.tp-regions-card:hover .tp-regions-card-search[b-ag5wdscxgf] {
    color: #6C2BD9;
}

.tp-regions-card-media--antigua[b-ag5wdscxgf] {
    background-image: linear-gradient(135deg, #0EA5E9 0%, #14B8A6 46%, #F59E0B 100%);
}

.tp-regions-card-media--trinidad[b-ag5wdscxgf] {
    background-image: linear-gradient(135deg, #DC2626 0%, #111827 52%, #F59E0B 100%);
}

.tp-regions-card-media--montserrat[b-ag5wdscxgf] {
    background-image: linear-gradient(135deg, #0F766E 0%, #0EA5E9 55%, #F8FAFC 100%);
}

.tp-regions-card-media--guyana[b-ag5wdscxgf] {
    background-image: linear-gradient(135deg, #16A34A 0%, #FACC15 48%, #B91C1C 100%);
}

.tp-regions-card-media--uk[b-ag5wdscxgf] {
    background-image: linear-gradient(135deg, #1D4ED8 0%, #7C3AED 52%, #F43F5E 100%);
}

.tp-regions-card-media--us[b-ag5wdscxgf] {
    background-image: linear-gradient(135deg, #2563EB 0%, #F8FAFC 45%, #DC2626 100%);
}

.tp-regions-card-media--accent-1[b-ag5wdscxgf] {
    background-image: linear-gradient(135deg, #6C2BD9 0%, #0EA5E9 100%);
}

.tp-regions-card-media--accent-2[b-ag5wdscxgf] {
    background-image: linear-gradient(135deg, #10B981 0%, #3B82F6 100%);
}

.tp-regions-card-media--accent-3[b-ag5wdscxgf] {
    background-image: linear-gradient(135deg, #F43F5E 0%, #F59E0B 100%);
}

.tp-regions-card-media--accent-4[b-ag5wdscxgf] {
    background-image: linear-gradient(135deg, #111827 0%, #7C3AED 100%);
}

.tp-regions-empty[b-ag5wdscxgf] {
    background: white;
    border: 1px dashed #D7DCE5;
    border-radius: 8px;
    color: #6B7280;
    padding: 3rem 1rem;
    text-align: center;
}

.tp-regions-empty i[b-ag5wdscxgf] {
    background: rgba(108,43,217,0.08);
    border-radius: 999px;
    color: #6C2BD9;
    display: inline-grid;
    font-size: 2rem;
    height: 72px;
    margin-bottom: 1rem;
    place-items: center;
    width: 72px;
}

.tp-regions-empty h2[b-ag5wdscxgf] {
    color: #1A1D23;
    font-family: 'Outfit', sans-serif;
    font-weight: 850;
    margin: 0 0 0.5rem;
}

.tp-regions-empty p[b-ag5wdscxgf] {
    margin: 0;
}

.tp-regions-cta[b-ag5wdscxgf] {
    padding: 1rem 0 3rem;
}

.tp-regions-cta-inner[b-ag5wdscxgf] {
    align-items: center;
    background: linear-gradient(135deg, #111827 0%, #4A1A9E 100%);
    border-radius: 8px;
    color: white;
    display: flex;
    gap: 1.5rem;
    justify-content: space-between;
    padding: 1.5rem;
}

.tp-regions-cta-inner .tp-regions-eyebrow[b-ag5wdscxgf] {
    color: rgba(255,255,255,0.62);
}

.tp-regions-cta-inner h2[b-ag5wdscxgf] {
    font-family: 'Outfit', sans-serif;
    font-size: 1.55rem;
    font-weight: 900;
    letter-spacing: 0;
    margin: 0 0 0.35rem;
}

.tp-regions-cta-inner p[b-ag5wdscxgf] {
    color: rgba(255,255,255,0.76);
    margin: 0;
    max-width: 620px;
}

.tp-regions-cta-actions[b-ag5wdscxgf] {
    display: flex;
    flex-shrink: 0;
    flex-wrap: wrap;
    gap: 0.7rem;
    justify-content: flex-end;
}

.tp-regions-primary-action[b-ag5wdscxgf],
.tp-regions-secondary-action[b-ag5wdscxgf] {
    align-items: center;
    border-radius: 8px;
    display: inline-flex;
    font-weight: 850;
    gap: 0.45rem;
    justify-content: center;
    padding: 0.78rem 1rem;
    text-decoration: none;
}

.tp-regions-primary-action[b-ag5wdscxgf] {
    background: white;
    color: #4A1A9E;
}

.tp-regions-primary-action:hover[b-ag5wdscxgf] {
    color: #4A1A9E;
}

.tp-regions-secondary-action[b-ag5wdscxgf] {
    border: 1px solid rgba(255,255,255,0.36);
    color: white;
}

.tp-regions-secondary-action:hover[b-ag5wdscxgf] {
    color: white;
}

@media (max-width: 992px) {
    .tp-regions-grid[b-ag5wdscxgf] {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .tp-regions-cta-inner[b-ag5wdscxgf] {
        align-items: flex-start;
        flex-direction: column;
    }

    .tp-regions-cta-actions[b-ag5wdscxgf] {
        justify-content: flex-start;
    }
}

@media (max-width: 640px) {
    .tp-regions-hero[b-ag5wdscxgf] {
        padding: 2.8rem 0 3.2rem;
    }

    .tp-regions-grid[b-ag5wdscxgf] {
        grid-template-columns: 1fr;
    }

    .tp-regions-section-header[b-ag5wdscxgf] {
        align-items: flex-start;
        flex-direction: column;
    }

    .tp-regions-card-actions[b-ag5wdscxgf],
    .tp-regions-hero-meta[b-ag5wdscxgf] {
        align-items: flex-start;
        flex-direction: column;
    }
}
/* _content/Apps.TicketPulse/Components/Pages/RequestPromotion.razor.rz.scp.css */
.tp-promo-request-page[b-79r5msv35m] {
    background: #F7F7FA;
    min-height: 100vh;
}

.tp-promo-request-hero[b-79r5msv35m] {
    background: linear-gradient(135deg, #6C2BD9 0%, #4A1A9E 100%);
    color: white;
    padding: 3rem 0 4rem;
}

.tp-promo-request-back[b-79r5msv35m] {
    display: inline-flex;
    align-items: center;
    gap: 0.45rem;
    color: rgba(255,255,255,0.78);
    font-weight: 700;
    text-decoration: none;
    margin-bottom: 2rem;
}

.tp-promo-request-back:hover[b-79r5msv35m] {
    color: white;
}

.tp-promo-request-hero-grid[b-79r5msv35m] {
    display: grid;
    grid-template-columns: minmax(0, 1fr) 360px;
    gap: 2rem;
    align-items: end;
}

.tp-promo-request-eyebrow[b-79r5msv35m] {
    margin: 0 0 0.7rem;
    color: rgba(255,255,255,0.7);
    font-size: 0.78rem;
    font-weight: 800;
    letter-spacing: 0.12em;
    text-transform: uppercase;
}

.tp-promo-request-hero h1[b-79r5msv35m] {
    font-family: 'Outfit', sans-serif;
    font-weight: 900;
    font-size: clamp(2.15rem, 5vw, 4rem);
    line-height: 1;
    margin: 0 0 1rem;
    letter-spacing: 0;
}

.tp-promo-request-lead[b-79r5msv35m] {
    max-width: 720px;
    margin: 0;
    color: rgba(255,255,255,0.78);
    font-size: 1.05rem;
    line-height: 1.6;
}

.tp-promo-request-contact[b-79r5msv35m] {
    background: rgba(255,255,255,0.1);
    border: 1px solid rgba(255,255,255,0.18);
    border-radius: 8px;
    padding: 1.25rem;
}

.tp-promo-request-contact-label[b-79r5msv35m] {
    display: block;
    color: rgba(255,255,255,0.64);
    font-size: 0.76rem;
    font-weight: 800;
    text-transform: uppercase;
    letter-spacing: 0.08em;
    margin-bottom: 0.65rem;
}

.tp-promo-request-contact a[b-79r5msv35m] {
    display: inline-flex;
    align-items: center;
    gap: 0.5rem;
    color: white;
    font-family: 'Outfit', sans-serif;
    font-size: 1.35rem;
    font-weight: 800;
    text-decoration: none;
}

.tp-promo-request-contact p[b-79r5msv35m] {
    margin: 0.85rem 0 0;
    color: rgba(255,255,255,0.72);
    font-size: 0.9rem;
    line-height: 1.45;
}

.tp-promo-request-content[b-79r5msv35m] {
    padding: 2.25rem 0 4rem;
}

.tp-promo-request-layout[b-79r5msv35m] {
    display: grid;
    grid-template-columns: 330px minmax(0, 1fr);
    gap: 1.5rem;
    align-items: start;
}

.tp-promo-request-summary[b-79r5msv35m],
.tp-promo-request-form-card[b-79r5msv35m] {
    background: white;
    border: 1px solid #E8ECF1;
    border-radius: 8px;
    box-shadow: 0 1px 3px rgba(0,0,0,0.04);
}

.tp-promo-request-summary[b-79r5msv35m] {
    padding: 1.5rem;
    position: sticky;
    top: 1rem;
}

.tp-promo-request-summary h2[b-79r5msv35m],
.tp-promo-request-form-header h2[b-79r5msv35m],
.tp-promo-request-success h2[b-79r5msv35m] {
    font-family: 'Outfit', sans-serif;
    font-weight: 850;
    color: #1A1D23;
    margin: 0 0 0.5rem;
    letter-spacing: 0;
}

.tp-promo-request-summary p[b-79r5msv35m],
.tp-promo-request-form-header p[b-79r5msv35m] {
    color: #6B7280;
    line-height: 1.55;
    margin: 0;
}

.tp-promo-request-list[b-79r5msv35m] {
    display: grid;
    gap: 0.7rem;
    margin-top: 1.25rem;
}

.tp-promo-request-list span[b-79r5msv35m] {
    display: flex;
    align-items: center;
    gap: 0.6rem;
    color: #39364F;
    font-weight: 700;
}

.tp-promo-request-list i[b-79r5msv35m] {
    color: #6C2BD9;
}

.tp-promo-request-form-card[b-79r5msv35m] {
    padding: 1.5rem;
}

.tp-promo-request-form-header[b-79r5msv35m] {
    border-bottom: 1px solid #EEF0F4;
    margin-bottom: 1.25rem;
    padding-bottom: 1rem;
}

.tp-promo-request-grid[b-79r5msv35m] {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 1rem;
}

.tp-promo-request-field[b-79r5msv35m] {
    display: grid;
    gap: 0.4rem;
    margin-bottom: 1rem;
}

.tp-promo-request-field label[b-79r5msv35m] {
    color: #39364F;
    font-size: 0.86rem;
    font-weight: 800;
}

.tp-promo-request-input[b-79r5msv35m] {
    width: 100%;
    border: 1px solid #DFE3EA;
    border-radius: 8px;
    background: #FAFAFB;
    color: #1A1D23;
    font-size: 0.95rem;
    padding: 0.82rem 0.95rem;
    outline: none;
    transition: border-color 0.2s ease, box-shadow 0.2s ease, background 0.2s ease;
}

.tp-promo-request-input:focus[b-79r5msv35m] {
    background: white;
    border-color: #8B5CF6;
    box-shadow: 0 0 0 3px rgba(108,43,217,0.1);
}

.tp-promo-request-textarea[b-79r5msv35m] {
    min-height: 150px;
    resize: vertical;
}

.tp-promo-request-consent[b-79r5msv35m] {
    display: flex;
    gap: 0.65rem;
    align-items: flex-start;
    color: #5F6577;
    font-weight: 600;
    margin: 0.5rem 0 1.25rem;
}

.tp-promo-request-consent input[b-79r5msv35m] {
    margin-top: 0.2rem;
}

.tp-promo-request-submit[b-79r5msv35m],
.tp-promo-request-primary[b-79r5msv35m] {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 0.55rem;
    border: 0;
    border-radius: 8px;
    background: #6C2BD9;
    color: white;
    font-weight: 850;
    padding: 0.9rem 1.25rem;
    text-decoration: none;
    transition: transform 0.2s ease, background 0.2s ease, box-shadow 0.2s ease;
}

.tp-promo-request-submit:hover[b-79r5msv35m],
.tp-promo-request-primary:hover[b-79r5msv35m] {
    background: #4A1A9E;
    color: white;
    box-shadow: 0 8px 22px rgba(74,26,158,0.18);
    transform: translateY(-1px);
}

.tp-promo-request-submit:disabled[b-79r5msv35m] {
    cursor: wait;
    opacity: 0.74;
    transform: none;
    box-shadow: none;
}

.tp-promo-request-alert[b-79r5msv35m] {
    background: #FEF2F2;
    border: 1px solid #FECACA;
    border-radius: 8px;
    color: #991B1B;
    font-weight: 700;
    margin-bottom: 1rem;
    padding: 0.9rem 1rem;
}

.tp-promo-request-success[b-79r5msv35m] {
    text-align: center;
    padding: 3rem 1rem;
}

.tp-promo-request-success i[b-79r5msv35m] {
    color: #10B981;
    font-size: 3rem;
    margin-bottom: 1rem;
}

.tp-promo-request-success p[b-79r5msv35m] {
    color: #6B7280;
    margin: 0 auto 1.5rem;
    max-width: 520px;
}

.tp-promo-request-field .validation-message[b-79r5msv35m],
.tp-promo-request-form-card .validation-message[b-79r5msv35m] {
    color: #DC2626;
    font-size: 0.8rem;
    font-weight: 700;
}

@media (max-width: 991.98px) {
    .tp-promo-request-hero-grid[b-79r5msv35m],
    .tp-promo-request-layout[b-79r5msv35m] {
        grid-template-columns: 1fr;
    }

    .tp-promo-request-summary[b-79r5msv35m] {
        position: static;
    }
}

@media (max-width: 767.98px) {
    .tp-promo-request-hero[b-79r5msv35m] {
        padding: 2rem 0 3rem;
    }

    .tp-promo-request-grid[b-79r5msv35m] {
        grid-template-columns: 1fr;
    }

    .tp-promo-request-form-card[b-79r5msv35m],
    .tp-promo-request-summary[b-79r5msv35m] {
        padding: 1rem;
    }
}
/* _content/Apps.TicketPulse/Components/Pages/SearchResults.razor.rz.scp.css */

/* ═══ HERO ═══ */
.sr-hero[b-sxuw4ebf4o] {
    background:
        radial-gradient(circle at 15% 20%, rgba(244,63,94,0.18) 0%, transparent 55%),
        radial-gradient(circle at 90% 10%, rgba(139,92,246,0.32) 0%, transparent 55%),
        linear-gradient(135deg, #6C2BD9 0%, #4A1A9E 60%, #2D0A6E 100%);
    padding: 1.25rem 0 2.75rem;
    position: relative;
}
.sr-eyebrow[b-sxuw4ebf4o] {
    margin-bottom: 0.75rem;
}
.sr-back[b-sxuw4ebf4o] {
    display: inline-flex;
    align-items: center;
    gap: 0.4rem;
    color: rgba(255,255,255,0.78);
    text-decoration: none;
    font-size: 0.85rem;
    font-weight: 600;
    transition: color 0.15s ease, gap 0.2s ease;
}
.sr-back:hover[b-sxuw4ebf4o] {
    color: white;
    gap: 0.6rem;
}
.sr-hero .tp-search-card[b-sxuw4ebf4o] {
    margin-top: 0;
}

/* ═══ RESULTS WRAPPER ═══ */
.sr-results[b-sxuw4ebf4o] {
    padding: 1.5rem 0 4rem;
}

/* Quick date presets */
.sr-quick-row[b-sxuw4ebf4o] {
    display: flex;
    gap: 0.5rem;
    flex-wrap: wrap;
    margin-bottom: 1.25rem;
}
.sr-quick-chip[b-sxuw4ebf4o] {
    display: inline-flex;
    align-items: center;
    padding: 0.5rem 1rem;
    border-radius: 999px;
    border: 1px solid #E5E7EB;
    background: white;
    color: #4B5563;
    font-size: 0.85rem;
    font-weight: 600;
    cursor: pointer;
    transition: all 0.18s ease;
    font-family: inherit;
}
.sr-quick-chip:hover[b-sxuw4ebf4o] {
    border-color: #C4B5E8;
    color: #6C2BD9;
}
.sr-quick-chip.active[b-sxuw4ebf4o] {
    background: #6C2BD9;
    border-color: #6C2BD9;
    color: white;
    box-shadow: 0 6px 16px rgba(108, 43, 217, 0.3);
}
.sr-quick-chip i[b-sxuw4ebf4o] { font-size: 0.85rem; }

/* Toolbar: headline + sort */
.sr-toolbar[b-sxuw4ebf4o] {
    display: flex;
    align-items: flex-end;
    justify-content: space-between;
    gap: 1rem;
    flex-wrap: wrap;
    margin: 0.75rem 0 1rem;
}
.sr-toolbar-left[b-sxuw4ebf4o] { flex: 1 1 280px; min-width: 0; }
.sr-toolbar-right[b-sxuw4ebf4o] {
    display: flex;
    align-items: center;
    gap: 0.75rem;
    flex-wrap: wrap;
}
.sr-free-toggle-wrap[b-sxuw4ebf4o] {
    padding-right: 0.25rem;
}
.sr-free-toggle[b-sxuw4ebf4o] {
    width: 2.5rem;
    height: 1.3rem;
    cursor: pointer;
}
.sr-free-toggle-label[b-sxuw4ebf4o] {
    font-size: 0.86rem;
    font-weight: 600;
    margin-bottom: 0;
    white-space: nowrap;
}
.sr-headline[b-sxuw4ebf4o] {
    font-family: 'Outfit', sans-serif;
    font-size: 1.65rem;
    font-weight: 800;
    color: #1A1D23;
    margin: 0 0 0.25rem;
}
.sr-headline strong[b-sxuw4ebf4o] {
    color: #6C2BD9;
    font-weight: 800;
}
.sr-subline[b-sxuw4ebf4o] {
    color: #6B7280;
    font-size: 0.92rem;
    margin: 0;
}
.sr-sort-label[b-sxuw4ebf4o] {
    font-size: 0.78rem;
    text-transform: uppercase;
    letter-spacing: 0.06em;
    color: #6B7280;
    font-weight: 700;
    margin: 0;
}
.sr-sort[b-sxuw4ebf4o] {
    border: 1px solid #E5E7EB;
    background: white;
    border-radius: 10px;
    padding: 0.5rem 2rem 0.5rem 0.8rem;
    font-weight: 600;
    font-size: 0.9rem;
    color: #1A1D23;
    cursor: pointer;
    appearance: none;
    -webkit-appearance: none;
    background-image: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='10' height='6' viewBox='0 0 10 6' fill='none'><path d='M1 1l4 4 4-4' stroke='%236B7280' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'/></svg>");
    background-repeat: no-repeat;
    background-position: right 0.6rem center;
    transition: border-color 0.15s ease;
}
.sr-sort:hover[b-sxuw4ebf4o], .sr-sort:focus[b-sxuw4ebf4o] {
    border-color: #6C2BD9;
    outline: none;
}

/* Filter chips */
.sr-chip-row[b-sxuw4ebf4o] {
    display: flex;
    flex-wrap: wrap;
    gap: 0.5rem;
    margin-bottom: 1.75rem;
    align-items: center;
}
.sr-chip[b-sxuw4ebf4o] {
    display: inline-flex;
    align-items: center;
    gap: 0.4rem;
    padding: 0.35rem 0.6rem 0.35rem 0.75rem;
    border-radius: 999px;
    background: #F1ECFB;
    color: #4A1A9E;
    font-size: 0.82rem;
    font-weight: 600;
}
.sr-chip i[b-sxuw4ebf4o] { font-size: 0.85rem; opacity: 0.7; }
.sr-chip button[b-sxuw4ebf4o] {
    border: none;
    background: rgba(74, 26, 158, 0.12);
    color: #4A1A9E;
    width: 20px;
    height: 20px;
    border-radius: 999px;
    font-size: 1rem;
    line-height: 1;
    padding: 0;
    cursor: pointer;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    transition: background 0.15s ease;
}
.sr-chip button:hover[b-sxuw4ebf4o] {
    background: rgba(74, 26, 158, 0.25);
}
.sr-clear-all[b-sxuw4ebf4o] {
    border: none;
    background: transparent;
    color: #6C2BD9;
    font-weight: 700;
    font-size: 0.85rem;
    padding: 0.25rem 0.5rem;
    cursor: pointer;
    text-decoration: underline;
    text-underline-offset: 3px;
    margin-left: 0.25rem;
}
.sr-clear-all:hover[b-sxuw4ebf4o] {
    color: #4A1A9E;
}

/* Sections */
.sr-section[b-sxuw4ebf4o] {
    margin-bottom: 2.5rem;
}
.sr-section-head[b-sxuw4ebf4o] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    margin-bottom: 1rem;
    gap: 1rem;
    flex-wrap: wrap;
}
.sr-section-head h3[b-sxuw4ebf4o] {
    font-family: 'Outfit', sans-serif;
    font-size: 1.25rem;
    font-weight: 800;
    color: #1A1D23;
    margin: 0;
    display: inline-flex;
    align-items: center;
}
.sr-count[b-sxuw4ebf4o] {
    margin-left: 0.5rem;
    background: #F3F4F6;
    color: #4A1A9E;
    font-weight: 700;
    font-size: 0.8rem;
    padding: 0.18rem 0.55rem;
    border-radius: 999px;
}
.sr-section-link[b-sxuw4ebf4o] {
    color: #6C2BD9;
    font-weight: 700;
    font-size: 0.88rem;
    display: inline-flex;
    align-items: center;
    gap: 0.25rem;
    text-decoration: none;
    transition: gap 0.2s ease;
}
.sr-section-link:hover[b-sxuw4ebf4o] {
    gap: 0.5rem;
    color: #4A1A9E;
}
.sr-section-empty[b-sxuw4ebf4o] {
    color: #6B7280;
    background: #FAFAFB;
    padding: 1rem 1.25rem;
    border-radius: 12px;
    margin: 0;
    font-size: 0.92rem;
}

/* ═══ RESULT CARDS ═══ */
.sr-card-grid[b-sxuw4ebf4o] {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(240px, 1fr));
    gap: 1rem;
}
.sr-card[b-sxuw4ebf4o] {
    background: #fff;
    border: 1px solid #ECEEF2;
    border-radius: 16px;
    overflow: hidden;
    text-decoration: none;
    color: inherit;
    transition: box-shadow 0.25s ease, transform 0.25s cubic-bezier(0.4,0,0.2,1), border-color 0.2s ease;
    display: flex;
    flex-direction: column;
    position: relative;
}
.sr-card:hover[b-sxuw4ebf4o] {
    box-shadow: 0 12px 32px rgba(76, 22, 165, 0.14);
    transform: translateY(-3px);
    border-color: #E0D6F5;
}
.sr-card-img[b-sxuw4ebf4o] {
    height: 170px;
    overflow: hidden;
    position: relative;
}
.sr-card-img img[b-sxuw4ebf4o] {
    width: 100%;
    height: 100%;
    object-fit: cover;
    transition: transform 0.4s ease;
}
.sr-card:hover .sr-card-img img[b-sxuw4ebf4o] {
    transform: scale(1.05);
}
.sr-card-badge[b-sxuw4ebf4o] {
    position: absolute;
    top: 10px;
    left: 10px;
    z-index: 2;
    background: #F43F5E;
    color: white;
    font-size: 0.7rem;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 0.05em;
    padding: 0.25rem 0.6rem;
    border-radius: 999px;
    box-shadow: 0 4px 12px rgba(244, 63, 94, 0.35);
}
.sr-badge-activity[b-sxuw4ebf4o] {
    background: #0EA5E9;
    box-shadow: 0 4px 12px rgba(14, 165, 233, 0.35);
}
.sr-badge-stay[b-sxuw4ebf4o] {
    background: #6C2BD9;
    box-shadow: 0 4px 12px rgba(108, 43, 217, 0.35);
}
.sr-card-ph[b-sxuw4ebf4o] {
    height: 100%;
    background: linear-gradient(135deg, #F1ECFB, #EDE9FE);
    display: flex;
    align-items: center;
    justify-content: center;
}
.sr-card-ph i[b-sxuw4ebf4o] {
    font-size: 2.5rem;
    color: rgba(108, 43, 217, 0.5);
}
.sr-card-body[b-sxuw4ebf4o] {
    padding: 0.85rem 1rem 1rem;
    display: flex;
    flex-direction: column;
    gap: 0.3rem;
    flex: 1;
}
.sr-card-body h4[b-sxuw4ebf4o] {
    font-family: 'Outfit', sans-serif;
    font-size: 1rem;
    font-weight: 700;
    color: #1A1D23;
    margin: 0;
    line-height: 1.3;
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    overflow: hidden;
}
.sr-card-meta[b-sxuw4ebf4o] {
    font-size: 0.82rem;
    color: #6B7280;
    display: inline-flex;
    align-items: center;
}
.sr-card-price[b-sxuw4ebf4o] {
    margin-top: auto;
    padding-top: 0.4rem;
    font-size: 0.95rem;
    font-weight: 800;
    color: #6C2BD9;
}
.sr-card-price small[b-sxuw4ebf4o] {
    color: #6B7280;
    font-weight: 600;
    font-size: 0.78rem;
    margin-left: 0.15rem;
}
.sr-card-meta-faint[b-sxuw4ebf4o] {
    color: #9CA3AF;
    font-size: 0.75rem;
    font-weight: 500;
}

/* ═══ SKELETON ═══ */
.sr-skeleton-grid[b-sxuw4ebf4o] {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(240px, 1fr));
    gap: 1rem;
    margin-bottom: 2rem;
}
.sr-skeleton-card[b-sxuw4ebf4o] {
    background: #fff;
    border: 1px solid #ECEEF2;
    border-radius: 16px;
    overflow: hidden;
    padding-bottom: 1rem;
}
.sr-skeleton-img[b-sxuw4ebf4o] {
    height: 170px;
    background: linear-gradient(90deg, #F3F4F6 25%, #E8EAEE 50%, #F3F4F6 75%);
    background-size: 200% 100%;
    animation: sr-shimmer-b-sxuw4ebf4o 1.4s linear infinite;
}
.sr-skeleton-line[b-sxuw4ebf4o] {
    height: 12px;
    margin: 12px 16px;
    background: linear-gradient(90deg, #F3F4F6 25%, #E8EAEE 50%, #F3F4F6 75%);
    background-size: 200% 100%;
    animation: sr-shimmer-b-sxuw4ebf4o 1.4s linear infinite;
    border-radius: 6px;
}
.sr-skeleton-line--lg[b-sxuw4ebf4o] {
    height: 16px;
    width: 75%;
    margin-top: 16px;
}
.sr-skeleton-line--sm[b-sxuw4ebf4o] {
    height: 10px;
    width: 40%;
}
@keyframes sr-shimmer-b-sxuw4ebf4o {
    0% { background-position: 200% 0; }
    100% { background-position: -200% 0; }
}

/* ═══ EMPTY STATE ═══ */
.sr-empty[b-sxuw4ebf4o] {
    text-align: center;
    padding: 3.5rem 1.5rem;
    background: white;
    border-radius: 20px;
    border: 1px dashed #E5E7EB;
    margin-top: 1.5rem;
}
.sr-empty-art[b-sxuw4ebf4o] {
    width: 84px;
    height: 84px;
    margin: 0 auto 1rem;
    border-radius: 999px;
    background: linear-gradient(135deg, #F1ECFB 0%, #EDE9FE 100%);
    display: flex;
    align-items: center;
    justify-content: center;
}
.sr-empty-art i[b-sxuw4ebf4o] {
    font-size: 2.25rem;
    color: #6C2BD9;
}
.sr-empty h3[b-sxuw4ebf4o] {
    font-family: 'Outfit', sans-serif;
    font-weight: 800;
    color: #1A1D23;
    margin: 0 0 0.4rem;
    font-size: 1.35rem;
}
.sr-empty p[b-sxuw4ebf4o] {
    color: #6B7280;
    margin: 0 0 1.25rem;
    font-size: 0.95rem;
    max-width: 380px;
    margin-left: auto;
    margin-right: auto;
}
.sr-empty-actions[b-sxuw4ebf4o] {
    display: inline-flex;
    gap: 0.6rem;
    flex-wrap: wrap;
    justify-content: center;
}
.sr-empty-btn[b-sxuw4ebf4o] {
    display: inline-flex;
    align-items: center;
    gap: 0.4rem;
    padding: 0.65rem 1.2rem;
    border-radius: 999px;
    background: #6C2BD9;
    color: white;
    font-weight: 700;
    font-size: 0.88rem;
    text-decoration: none;
    border: none;
    cursor: pointer;
    transition: transform 0.2s ease, background 0.2s ease, box-shadow 0.25s ease;
}
.sr-empty-btn:hover[b-sxuw4ebf4o] {
    background: #4A1A9E;
    color: white;
    transform: translateY(-1px);
    box-shadow: 0 8px 20px rgba(108, 43, 217, 0.3);
}
.sr-empty-btn--ghost[b-sxuw4ebf4o] {
    background: transparent;
    color: #6C2BD9;
    border: 1px solid #E0D6F5;
}
.sr-empty-btn--ghost:hover[b-sxuw4ebf4o] {
    background: #F1ECFB;
    color: #4A1A9E;
}

/* ═══ MOBILE ═══ */
@media (max-width: 767.98px) {
    .sr-hero[b-sxuw4ebf4o] {
        padding: 0.75rem 0 2rem;
    }
    .sr-headline[b-sxuw4ebf4o] {
        font-size: 1.3rem;
    }
    .sr-toolbar[b-sxuw4ebf4o] {
        align-items: flex-start;
    }
    .sr-toolbar-right[b-sxuw4ebf4o] {
        flex: 0 0 auto;
    }
    .sr-card-grid[b-sxuw4ebf4o],
    .sr-skeleton-grid[b-sxuw4ebf4o] {
        grid-template-columns: repeat(2, 1fr);
        gap: 0.6rem;
    }
    .sr-card-img[b-sxuw4ebf4o],
    .sr-skeleton-img[b-sxuw4ebf4o] {
        height: 130px;
    }
    .sr-section-head h3[b-sxuw4ebf4o] {
        font-size: 1.1rem;
    }
}
@media (max-width: 420px) {
    .sr-card-grid[b-sxuw4ebf4o],
    .sr-skeleton-grid[b-sxuw4ebf4o] {
        grid-template-columns: 1fr;
    }
    .sr-card-img[b-sxuw4ebf4o],
    .sr-skeleton-img[b-sxuw4ebf4o] {
        height: 160px;
    }
}
/* _content/Apps.TicketPulse/Components/Pages/StayBookingPage.razor.rz.scp.css */
/* ============================================================
   Stays booking journey — premium customer-facing redesign
   Tokens map onto the global TicketPulse design system so the
   purple accent + surfaces stay consistent site-wide.
============================================================ */
/* No ::deep here: this targets the component's own root element so the
   token definitions match and cascade to every descendant. Using ::deep
   would compile to "[scope] .tp-stays", which never matches the root. */
.tp-stays[b-vot6q8bpb2] {
    --tp-stays-accent: var(--primary-color, #6C2BD9);
    --tp-stays-accent-dark: var(--primary-hover, #4A1A9E);
    --tp-stays-accent-soft: rgba(108, 43, 217, 0.08);
    --tp-stays-accent-soft2: rgba(108, 43, 217, 0.04);
    --tp-stays-text: var(--text-color, #1A1D23);
    --tp-stays-text-sec: var(--tp-text-sec, #5F6577);
    --tp-stays-text-muted: var(--tp-text-muted, #9CA3AF);
    --tp-stays-border: var(--tp-border, #E8ECF1);
    --tp-stays-surface: #ffffff;
    --tp-stays-bg: var(--tp-bg, #FAFBFC);
    --tp-stays-green: var(--tp-green, #10B981);
    --tp-stays-r: 18px;
    --tp-stays-r-sm: 12px;
    --tp-stays-shadow: 0 1px 3px rgba(0,0,0,0.05), 0 8px 28px rgba(20,20,40,0.06);

    font-family: var(--bs-font-sans-serif, 'Wix Madefor Display', sans-serif);
    color: var(--tp-stays-text);
    min-height: 100vh;
    background: var(--tp-stays-bg);
    padding-bottom: env(safe-area-inset-bottom);
}

[b-vot6q8bpb2] .tp-stays-container {
    max-width: 1180px;
    margin: 0 auto;
    padding: 0 20px;
}

/* ---------- Stepper ---------- */
[b-vot6q8bpb2] .tp-stays-stepper-bar {
    background: var(--tp-stays-surface);
    border-bottom: 1px solid var(--tp-stays-border);
    position: sticky;
    top: 0;
    z-index: 50;
}

[b-vot6q8bpb2] .tp-stays-stepper {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 6px;
    max-width: 640px;
    margin: 0 auto;
    padding: 16px 20px;
}

[b-vot6q8bpb2] .tp-stays-step {
    display: inline-flex;
    align-items: center;
    gap: 9px;
    background: none;
    border: none;
    padding: 4px;
    cursor: pointer;
    color: var(--tp-stays-text-muted);
    transition: color .2s ease;
}

[b-vot6q8bpb2] .tp-stays-step:disabled { cursor: default; }
[b-vot6q8bpb2] .tp-stays-step.active,
[b-vot6q8bpb2] .tp-stays-step.done { color: var(--tp-stays-text); }

[b-vot6q8bpb2] .tp-stays-step-num {
    width: 30px;
    height: 30px;
    flex: 0 0 30px;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    font-weight: 700;
    font-size: 0.85rem;
    border: 2px solid var(--tp-stays-border);
    color: var(--tp-stays-text-muted);
    background: var(--tp-stays-surface);
    transition: all .25s ease;
}

[b-vot6q8bpb2] .tp-stays-step.active .tp-stays-step-num {
    background: var(--tp-stays-accent);
    border-color: var(--tp-stays-accent);
    color: #fff;
    box-shadow: 0 4px 14px rgba(108,43,217,0.3);
}

[b-vot6q8bpb2] .tp-stays-step.done .tp-stays-step-num {
    background: var(--tp-stays-green);
    border-color: var(--tp-stays-green);
    color: #fff;
}

[b-vot6q8bpb2] .tp-stays-step-label {
    font-size: 0.86rem;
    font-weight: 600;
    white-space: nowrap;
}

[b-vot6q8bpb2] .tp-stays-step-line {
    width: 48px;
    height: 2px;
    border-radius: 2px;
    background: var(--tp-stays-border);
    transition: background .25s ease;
}
[b-vot6q8bpb2] .tp-stays-step-line.done { background: var(--tp-stays-green); }

/* ---------- Layout shell ---------- */
[b-vot6q8bpb2] .tp-stays-detail { padding-top: 24px; padding-bottom: 56px; }

[b-vot6q8bpb2] .tp-stays-back {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    font-size: 0.9rem;
    font-weight: 600;
    color: var(--tp-stays-text-sec);
    text-decoration: none;
    margin-bottom: 18px;
    transition: color .2s ease;
}
[b-vot6q8bpb2] .tp-stays-back:hover { color: var(--tp-stays-accent); }

[b-vot6q8bpb2] .tp-stays-layout {
    display: grid;
    grid-template-columns: minmax(0, 1fr) 360px;
    gap: 36px;
    align-items: start;
}

[b-vot6q8bpb2] .tp-stays-main { min-width: 0; }

[b-vot6q8bpb2] .tp-stays-aside { min-width: 0; }

/* ---------- Gallery ---------- */
[b-vot6q8bpb2] .tp-gallery {
    position: relative;
    display: grid;
    grid-template-columns: 1.6fr 1fr;
    gap: 10px;
    border-radius: var(--tp-stays-r);
    overflow: hidden;
    margin-bottom: 32px;
    height: 440px;
}
[b-vot6q8bpb2] .tp-gallery.single { grid-template-columns: 1fr; }

[b-vot6q8bpb2] .tp-gallery-lead,
[b-vot6q8bpb2] .tp-gallery-cell {
    position: relative;
    padding: 0;
    border: none;
    cursor: pointer;
    overflow: hidden;
    background: var(--tp-stays-border);
}

[b-vot6q8bpb2] .tp-gallery-lead img,
[b-vot6q8bpb2] .tp-gallery-cell img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
    transition: transform .4s ease;
}
[b-vot6q8bpb2] .tp-gallery-lead:hover img,
[b-vot6q8bpb2] .tp-gallery-cell:hover img { transform: scale(1.04); }

[b-vot6q8bpb2] .tp-gallery-grid {
    display: grid;
    grid-template-columns: 1fr 1fr;
    grid-template-rows: 1fr 1fr;
    gap: 10px;
    min-height: 0;
}

[b-vot6q8bpb2] .tp-gallery-all {
    position: absolute;
    right: 16px;
    bottom: 16px;
    display: inline-flex;
    align-items: center;
    gap: 8px;
    background: rgba(255,255,255,0.95);
    backdrop-filter: blur(6px);
    border: 1px solid var(--tp-stays-border);
    border-radius: 50px;
    padding: 9px 16px;
    font-size: 0.84rem;
    font-weight: 700;
    color: var(--tp-stays-text);
    cursor: pointer;
    box-shadow: 0 4px 14px rgba(0,0,0,0.12);
    transition: transform .2s ease;
}
[b-vot6q8bpb2] .tp-gallery-all:hover { transform: translateY(-1px); }

/* ---------- Property header ---------- */
[b-vot6q8bpb2] .tp-stays-head { margin-bottom: 28px; }
[b-vot6q8bpb2] .tp-stays-step-head { margin-bottom: 22px; }

[b-vot6q8bpb2] .tp-stays-badge {
    display: inline-block;
    background: var(--tp-stays-accent-soft);
    color: var(--tp-stays-accent);
    padding: 5px 13px;
    border-radius: 50px;
    font-size: 0.72rem;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 0.05em;
    margin-bottom: 12px;
}

[b-vot6q8bpb2] .tp-stays-title {
    font-size: clamp(1.6rem, 3.2vw, 2.3rem);
    font-weight: 800;
    line-height: 1.15;
    letter-spacing: -0.01em;
    color: var(--tp-stays-text);
    margin: 0 0 8px;
}

[b-vot6q8bpb2] .tp-stays-loc {
    display: flex;
    align-items: center;
    gap: 7px;
    font-size: 0.96rem;
    color: var(--tp-stays-text-sec);
    margin: 0;
}
[b-vot6q8bpb2] .tp-stays-loc i { color: var(--tp-stays-accent); }

/* One segmented facts bar reads cleaner than separate floating pills. */
[b-vot6q8bpb2] .tp-stays-stats {
    display: flex;
    flex-wrap: wrap;
    margin-top: 22px;
    border: 1px solid var(--tp-stays-border);
    border-radius: 14px;
    background: var(--tp-stays-surface);
    overflow: hidden;
}

[b-vot6q8bpb2] .tp-stays-stat {
    flex: 1 1 0;
    min-width: 150px;
    display: flex;
    align-items: center;
    gap: 11px;
    padding: 15px 18px;
    border: none;
    border-right: 1px solid var(--tp-stays-border);
    background: none;
    font-size: 0.88rem;
    font-weight: 600;
    color: var(--tp-stays-text);
}
[b-vot6q8bpb2] .tp-stays-stat:last-child { border-right: none; }
[b-vot6q8bpb2] .tp-stays-stat i { color: var(--tp-stays-accent); font-size: 1.2rem; flex: 0 0 auto; }

/* ---------- Sections ---------- */
[b-vot6q8bpb2] .tp-stays-section {
    padding: 26px 0;
    border-top: 1px solid var(--tp-stays-border);
}

[b-vot6q8bpb2] .tp-stays-h2 {
    font-size: 1.18rem;
    font-weight: 700;
    color: var(--tp-stays-text);
    margin: 0 0 14px;
}

[b-vot6q8bpb2] .tp-stays-body {
    font-size: 0.96rem;
    line-height: 1.7;
    color: var(--tp-stays-text-sec);
    margin: 0;
    white-space: pre-line;
}

[b-vot6q8bpb2] .tp-stays-amenities {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(180px, 1fr));
    gap: 10px;
}

[b-vot6q8bpb2] .tp-stays-amenity {
    display: flex;
    align-items: center;
    gap: 10px;
    padding: 11px 14px;
    background: var(--tp-stays-surface);
    border: 1px solid var(--tp-stays-border);
    border-radius: var(--tp-stays-r-sm);
    font-size: 0.88rem;
    font-weight: 500;
    color: var(--tp-stays-text);
}
[b-vot6q8bpb2] .tp-stays-amenity i { color: var(--tp-stays-accent); font-size: 1.05rem; flex: 0 0 auto; }

[b-vot6q8bpb2] .tp-stays-policy {
    display: flex;
    align-items: flex-start;
    gap: 14px;
    padding: 18px;
    background: rgba(16,185,129,0.06);
    border: 1px solid rgba(16,185,129,0.22);
    border-radius: var(--tp-stays-r-sm);
}
[b-vot6q8bpb2] .tp-stays-policy > i { color: var(--tp-stays-green); font-size: 1.4rem; margin-top: 1px; }
[b-vot6q8bpb2] .tp-stays-policy-title { font-weight: 700; font-size: 0.92rem; color: var(--tp-stays-text); }
[b-vot6q8bpb2] .tp-stays-policy-sub { font-size: 0.84rem; color: var(--tp-stays-text-sec); margin-top: 3px; }

/* ---------- Booking panel ---------- */
[b-vot6q8bpb2] .tp-stays-panel {
    background: var(--tp-stays-surface);
    border: 1px solid var(--tp-stays-border);
    border-radius: var(--tp-stays-r);
    padding: 22px;
    box-shadow: var(--tp-stays-shadow);
    position: sticky;
    top: 92px;
}

[b-vot6q8bpb2] .tp-stays-panel-price {
    display: flex;
    align-items: baseline;
    gap: 7px;
    margin-bottom: 18px;
}
[b-vot6q8bpb2] .tp-stays-panel-from { font-size: 0.82rem; font-weight: 600; color: var(--tp-stays-text-muted); }
[b-vot6q8bpb2] .tp-stays-panel-amount { font-size: 1.7rem; font-weight: 800; color: var(--tp-stays-text); letter-spacing: -0.01em; }
[b-vot6q8bpb2] .tp-stays-panel-unit { font-size: 0.86rem; color: var(--tp-stays-text-sec); }

[b-vot6q8bpb2] .tp-stays-panel-heading {
    font-size: 1.05rem;
    font-weight: 700;
    color: var(--tp-stays-text);
    margin-bottom: 16px;
}

[b-vot6q8bpb2] .tp-stays-dates {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 10px;
    margin-bottom: 14px;
}

[b-vot6q8bpb2] .tp-stays-field {
    display: block;
    margin-bottom: 14px;
}

[b-vot6q8bpb2] .tp-stays-field-wide { grid-column: 1 / -1; }

[b-vot6q8bpb2] .tp-stays-field-label {
    display: block;
    font-size: 0.72rem;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 0.05em;
    color: var(--tp-stays-text-sec);
    margin-bottom: 6px;
}

[b-vot6q8bpb2] .tp-stays-input {
    width: 100%;
    background: var(--tp-stays-surface);
    border: 1px solid var(--tp-stays-border);
    border-radius: var(--tp-stays-r-sm);
    color: var(--tp-stays-text);
    padding: 11px 13px;
    font-size: 0.92rem;
    transition: border-color .2s ease, box-shadow .2s ease;
}
[b-vot6q8bpb2] .tp-stays-input:focus {
    outline: none;
    border-color: var(--tp-stays-accent);
    box-shadow: 0 0 0 3px var(--tp-stays-accent-soft);
}
[b-vot6q8bpb2] .tp-stays-input::placeholder { color: var(--tp-stays-text-muted); }
[b-vot6q8bpb2] .tp-stays-input.invalid { border-color: #dc3545; box-shadow: 0 0 0 3px rgba(220,53,69,0.1); }
[b-vot6q8bpb2] .tp-stays-textarea { resize: vertical; min-height: 86px; }

[b-vot6q8bpb2] .tp-stays-field-error { display: block; color: #b3192c; font-size: 0.78rem; font-weight: 600; margin-top: 5px; }

[b-vot6q8bpb2] .tp-stays-stepper-input {
    display: flex;
    align-items: center;
    justify-content: space-between;
    border: 1px solid var(--tp-stays-border);
    border-radius: var(--tp-stays-r-sm);
    padding: 6px 10px;
}
[b-vot6q8bpb2] .tp-stays-qty {
    width: 36px;
    height: 36px;
    border-radius: 50%;
    border: 1px solid var(--tp-stays-border);
    background: var(--tp-stays-surface);
    color: var(--tp-stays-text);
    display: flex;
    align-items: center;
    justify-content: center;
    transition: all .2s ease;
}
[b-vot6q8bpb2] .tp-stays-qty:hover:not(:disabled) { border-color: var(--tp-stays-accent); color: var(--tp-stays-accent); }
[b-vot6q8bpb2] .tp-stays-qty:disabled { opacity: .4; }
[b-vot6q8bpb2] .tp-stays-qty-val { font-weight: 700; font-size: 1rem; color: var(--tp-stays-text); }
[b-vot6q8bpb2] .tp-stays-qty-val small { font-weight: 500; font-size: 0.8rem; color: var(--tp-stays-text-sec); margin-left: 3px; }

[b-vot6q8bpb2] .tp-stays-panel-summary {
    border-top: 1px solid var(--tp-stays-border);
    padding-top: 14px;
    margin-bottom: 14px;
}
[b-vot6q8bpb2] .tp-stays-panel-row {
    display: flex;
    justify-content: space-between;
    gap: 10px;
    font-size: 0.9rem;
    color: var(--tp-stays-text);
    margin-bottom: 6px;
}
[b-vot6q8bpb2] .tp-stays-panel-row:last-child { margin-bottom: 0; }
[b-vot6q8bpb2] .tp-stays-muted { color: var(--tp-stays-text-sec); font-size: 0.85rem; }
[b-vot6q8bpb2] .tp-stays-strong { font-weight: 700; }

[b-vot6q8bpb2] .tp-stays-note {
    display: flex;
    align-items: flex-start;
    gap: 8px;
    font-size: 0.8rem;
    color: var(--tp-stays-text-sec);
    margin-bottom: 14px;
    line-height: 1.45;
}
[b-vot6q8bpb2] .tp-stays-note i { margin-top: 1px; color: var(--tp-stays-accent); }
[b-vot6q8bpb2] .tp-stays-note-warn { color: #b3192c; }
[b-vot6q8bpb2] .tp-stays-note-warn i { color: #dc3545; }

[b-vot6q8bpb2] .tp-stays-reassure {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 6px;
    font-size: 0.78rem;
    color: var(--tp-stays-text-muted);
    margin: 12px 0 0;
}

/* ---------- Buttons ---------- */
[b-vot6q8bpb2] .tp-stays-btn {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    background: var(--tp-stays-accent);
    color: #fff;
    border: none;
    border-radius: 50px;
    padding: 12px 26px;
    font-weight: 700;
    font-size: 0.94rem;
    cursor: pointer;
    transition: background .2s ease, transform .15s ease, box-shadow .2s ease;
}
[b-vot6q8bpb2] .tp-stays-btn:hover:not(:disabled) {
    background: var(--tp-stays-accent-dark);
    transform: translateY(-1px);
    box-shadow: 0 8px 22px rgba(108,43,217,0.28);
    color: #fff;
}
[b-vot6q8bpb2] .tp-stays-btn:disabled { opacity: .45; cursor: not-allowed; }
[b-vot6q8bpb2] .tp-stays-btn-block { width: 100%; }
[b-vot6q8bpb2] .tp-stays-btn-grow { flex: 1 1 auto; }

[b-vot6q8bpb2] .tp-stays-btn-ghost {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    background: var(--tp-stays-surface);
    color: var(--tp-stays-text-sec);
    border: 1px solid var(--tp-stays-border);
    border-radius: 50px;
    padding: 11px 22px;
    font-weight: 600;
    font-size: 0.92rem;
    cursor: pointer;
    transition: all .2s ease;
}
[b-vot6q8bpb2] .tp-stays-btn-ghost:hover { border-color: var(--tp-stays-accent); color: var(--tp-stays-accent); }
[b-vot6q8bpb2] .tp-stays-btn-block.tp-stays-btn-ghost,
[b-vot6q8bpb2] .tp-stays-btn-ghost.tp-stays-btn-block { width: 100%; margin-top: 14px; }

[b-vot6q8bpb2] .tp-stays-actions {
    display: flex;
    gap: 12px;
    align-items: stretch;
    margin-top: 8px;
}

/* ---------- Inline error ---------- */
[b-vot6q8bpb2] .tp-stays-inline-error {
    display: flex;
    align-items: flex-start;
    gap: 10px;
    background: #fff5f5;
    border: 1px solid rgba(220, 53, 69, 0.22);
    border-radius: var(--tp-stays-r-sm);
    color: #9f1c2c;
    font-size: 0.9rem;
    font-weight: 600;
    line-height: 1.45;
    padding: 14px 16px;
    margin-bottom: 20px;
}
[b-vot6q8bpb2] .tp-stays-inline-error i { color: #dc3545; flex: 0 0 auto; margin-top: 2px; }

/* ---------- Room cards ---------- */
[b-vot6q8bpb2] .tp-room {
    display: grid;
    grid-template-columns: 280px minmax(0, 1fr);
    background: var(--tp-stays-surface);
    border: 1px solid var(--tp-stays-border);
    border-radius: var(--tp-stays-r);
    overflow: hidden;
    margin-bottom: 18px;
    box-shadow: var(--tp-stays-shadow);
    transition: border-color .2s ease, transform .2s ease, box-shadow .2s ease;
}
[b-vot6q8bpb2] .tp-room:hover { transform: translateY(-2px); border-color: rgba(108,43,217,0.25); }
[b-vot6q8bpb2] .tp-room.selected { border-color: var(--tp-stays-accent); box-shadow: 0 0 0 2px var(--tp-stays-accent-soft); }

[b-vot6q8bpb2] .tp-room-media {
    position: relative;
    min-height: 220px;
    padding: 0;
    border: none;
    background: var(--tp-stays-border);
    cursor: pointer;
    overflow: hidden;
}
[b-vot6q8bpb2] .tp-room-media img { width: 100%; height: 100%; object-fit: cover; display: block; transition: transform .4s ease; }
[b-vot6q8bpb2] .tp-room-media:hover img { transform: scale(1.04); }
[b-vot6q8bpb2] .tp-room-media-empty {
    display: flex; align-items: center; justify-content: center;
    color: var(--tp-stays-text-muted); font-size: 1.8rem; cursor: default;
}
[b-vot6q8bpb2] .tp-room-media-count {
    position: absolute;
    left: 12px;
    bottom: 12px;
    display: inline-flex;
    align-items: center;
    gap: 6px;
    background: rgba(0,0,0,0.6);
    color: #fff;
    padding: 5px 11px;
    border-radius: 50px;
    font-size: 0.74rem;
    font-weight: 700;
}

[b-vot6q8bpb2] .tp-room-body {
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    gap: 18px;
    padding: 20px 22px;
}
[b-vot6q8bpb2] .tp-room-name { font-size: 1.15rem; font-weight: 700; color: var(--tp-stays-text); margin: 0 0 6px; }
[b-vot6q8bpb2] .tp-room-desc {
    font-size: 0.88rem;
    color: var(--tp-stays-text-sec);
    line-height: 1.6;
    margin: 0 0 12px;
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    overflow: hidden;
}

[b-vot6q8bpb2] .tp-room-facts { display: flex; flex-wrap: wrap; gap: 14px; margin-bottom: 12px; }
[b-vot6q8bpb2] .tp-room-fact {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    font-size: 0.82rem;
    color: var(--tp-stays-text-sec);
    font-weight: 500;
}
[b-vot6q8bpb2] .tp-room-fact i { color: var(--tp-stays-accent); }

[b-vot6q8bpb2] .tp-room-tags { display: flex; flex-wrap: wrap; gap: 7px; margin-bottom: 12px; }
[b-vot6q8bpb2] .tp-room-tag {
    display: inline-flex;
    align-items: center;
    gap: 5px;
    background: var(--tp-stays-accent-soft2);
    color: var(--tp-stays-text-sec);
    border-radius: 50px;
    padding: 4px 11px;
    font-size: 0.75rem;
    font-weight: 600;
}
[b-vot6q8bpb2] .tp-room-tag i { color: var(--tp-stays-accent); }

[b-vot6q8bpb2] .tp-room-refund {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    font-size: 0.8rem;
    font-weight: 600;
    color: var(--tp-stays-green);
}

[b-vot6q8bpb2] .tp-room-cta {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 14px;
    flex-wrap: wrap;
    padding-top: 14px;
    border-top: 1px solid var(--tp-stays-border);
}
[b-vot6q8bpb2] .tp-room-amount { font-size: 1.4rem; font-weight: 800; color: var(--tp-stays-text); }
[b-vot6q8bpb2] .tp-room-per { font-size: 0.82rem; color: var(--tp-stays-text-sec); }
[b-vot6q8bpb2] .tp-room-total { font-size: 0.8rem; color: var(--tp-stays-text-sec); margin-top: 2px; }

/* ---------- Trip summary / breakdown ---------- */
[b-vot6q8bpb2] .tp-stays-summary-media {
    border-radius: var(--tp-stays-r-sm);
    overflow: hidden;
    height: 140px;
    margin-bottom: 16px;
}
[b-vot6q8bpb2] .tp-stays-summary-media img { width: 100%; height: 100%; object-fit: cover; display: block; }

[b-vot6q8bpb2] .tp-stays-trip { margin-bottom: 16px; }
[b-vot6q8bpb2] .tp-stays-trip-name { font-size: 1.02rem; font-weight: 700; color: var(--tp-stays-text); margin-bottom: 8px; }
[b-vot6q8bpb2] .tp-stays-trip-room {
    display: flex; align-items: center; gap: 7px;
    font-size: 0.88rem; font-weight: 600; color: var(--tp-stays-accent); margin-bottom: 8px;
}
[b-vot6q8bpb2] .tp-stays-trip-row {
    display: flex; align-items: center; gap: 8px;
    font-size: 0.88rem; color: var(--tp-stays-text-sec); margin-bottom: 6px;
}
[b-vot6q8bpb2] .tp-stays-trip-row i { color: var(--tp-stays-accent); width: 16px; text-align: center; }

[b-vot6q8bpb2] .tp-stays-breakdown {
    border-top: 1px solid var(--tp-stays-border);
    padding-top: 14px;
    margin-bottom: 14px;
}
[b-vot6q8bpb2] .tp-stays-breakdown-total {
    display: flex;
    justify-content: space-between;
    align-items: baseline;
    border-top: 1px solid var(--tp-stays-border);
    margin-top: 10px;
    padding-top: 12px;
    font-size: 1.1rem;
    font-weight: 800;
    color: var(--tp-stays-text);
}
[b-vot6q8bpb2] .tp-stays-breakdown-total small { font-size: 0.75rem; font-weight: 600; color: var(--tp-stays-text-sec); }

[b-vot6q8bpb2] .tp-stays-policy-tag {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    background: rgba(16,185,129,0.08);
    color: var(--tp-stays-green);
    border: 1px solid rgba(16,185,129,0.2);
    padding: 7px 13px;
    border-radius: 50px;
    font-size: 0.78rem;
    font-weight: 600;
}

[b-vot6q8bpb2] .tp-stays-formcard {
    background: var(--tp-stays-surface);
    border: 1px solid var(--tp-stays-border);
    border-radius: var(--tp-stays-r);
    padding: 24px;
    margin-bottom: 18px;
    box-shadow: var(--tp-stays-shadow);
}
[b-vot6q8bpb2] .tp-stays-formgrid {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 14px;
}
[b-vot6q8bpb2] .tp-stays-formgrid .tp-stays-field { margin-bottom: 0; }
[b-vot6q8bpb2] .tp-stays-help { font-size: 0.78rem; color: var(--tp-stays-text-muted); margin: 8px 0 0; }

/* ---------- States ---------- */
[b-vot6q8bpb2] .tp-stays-state,
[b-vot6q8bpb2] .tp-stays-empty {
    text-align: center;
    padding: 80px 20px;
    max-width: 460px;
    margin: 0 auto;
}
[b-vot6q8bpb2] .tp-stays-empty { padding: 56px 20px; }
[b-vot6q8bpb2] .tp-stays-state h3,
[b-vot6q8bpb2] .tp-stays-empty h3 { font-weight: 700; color: var(--tp-stays-text); margin: 14px 0 6px; }
[b-vot6q8bpb2] .tp-stays-state p,
[b-vot6q8bpb2] .tp-stays-empty p { color: var(--tp-stays-text-sec); margin-bottom: 20px; }

[b-vot6q8bpb2] .tp-stays-state-icon {
    width: 64px; height: 64px;
    margin: 0 auto;
    border-radius: 50%;
    display: flex; align-items: center; justify-content: center;
    background: var(--tp-stays-accent-soft);
    color: var(--tp-stays-accent);
    font-size: 1.7rem;
}

[b-vot6q8bpb2] .tp-stays-spinner {
    width: 44px; height: 44px;
    margin: 0 auto 16px;
    border: 3px solid var(--tp-stays-border);
    border-top-color: var(--tp-stays-accent);
    border-radius: 50%;
    animation: tp-stays-spin-b-vot6q8bpb2 0.8s linear infinite;
}
@keyframes tp-stays-spin-b-vot6q8bpb2 { to { transform: rotate(360deg); } }

/* ---------- Lightbox ---------- */
[b-vot6q8bpb2] .tp-lightbox {
    position: fixed;
    inset: 0;
    z-index: 1080;
    background: rgba(12, 12, 18, 0.94);
    backdrop-filter: blur(4px);
    display: flex;
    flex-direction: column;
    outline: none;
    animation: tp-lb-fade-b-vot6q8bpb2 .2s ease;
}
@keyframes tp-lb-fade-b-vot6q8bpb2 { from { opacity: 0; } to { opacity: 1; } }

[b-vot6q8bpb2] .tp-lightbox-bar {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 16px 22px;
    flex: 0 0 auto;
}
[b-vot6q8bpb2] .tp-lightbox-counter { color: rgba(255,255,255,0.9); font-size: 0.92rem; font-weight: 600; }
[b-vot6q8bpb2] .tp-lightbox-close {
    width: 42px; height: 42px;
    border-radius: 50%;
    border: 1px solid rgba(255,255,255,0.25);
    background: rgba(255,255,255,0.08);
    color: #fff;
    display: flex; align-items: center; justify-content: center;
    font-size: 1.05rem;
    transition: background .2s ease;
}
[b-vot6q8bpb2] .tp-lightbox-close:hover { background: rgba(255,255,255,0.18); }

[b-vot6q8bpb2] .tp-lightbox-stage {
    flex: 1 1 auto;
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 14px;
    padding: 0 18px;
    min-height: 0;
}

[b-vot6q8bpb2] .tp-lightbox-figure {
    margin: 0;
    max-width: min(1000px, 100%);
    max-height: 100%;
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 12px;
}
[b-vot6q8bpb2] .tp-lightbox-figure img {
    max-width: 100%;
    max-height: calc(100vh - 220px);
    object-fit: contain;
    border-radius: 8px;
    box-shadow: 0 20px 60px rgba(0,0,0,0.5);
}
[b-vot6q8bpb2] .tp-lightbox-figure figcaption {
    color: rgba(255,255,255,0.75);
    font-size: 0.85rem;
    text-align: center;
}

[b-vot6q8bpb2] .tp-lightbox-nav {
    flex: 0 0 auto;
    width: 48px; height: 48px;
    border-radius: 50%;
    border: 1px solid rgba(255,255,255,0.25);
    background: rgba(255,255,255,0.08);
    color: #fff;
    display: flex; align-items: center; justify-content: center;
    font-size: 1.25rem;
    transition: background .2s ease;
}
[b-vot6q8bpb2] .tp-lightbox-nav:hover { background: rgba(255,255,255,0.2); }

[b-vot6q8bpb2] .tp-lightbox-strip {
    flex: 0 0 auto;
    display: flex;
    gap: 8px;
    padding: 16px 22px;
    overflow-x: auto;
    justify-content: center;
    scrollbar-width: thin;
}
[b-vot6q8bpb2] .tp-lightbox-thumb {
    flex: 0 0 auto;
    width: 72px; height: 52px;
    border-radius: 8px;
    overflow: hidden;
    padding: 0;
    border: 2px solid transparent;
    opacity: 0.55;
    cursor: pointer;
    transition: opacity .2s ease, border-color .2s ease;
}
[b-vot6q8bpb2] .tp-lightbox-thumb img { width: 100%; height: 100%; object-fit: cover; }
[b-vot6q8bpb2] .tp-lightbox-thumb:hover { opacity: 0.85; }
[b-vot6q8bpb2] .tp-lightbox-thumb.active { opacity: 1; border-color: #fff; }

/* ---------- Mobile bottom bar (hidden on desktop) ---------- */
[b-vot6q8bpb2] .tp-stays-mobilebar { display: none; }

/* ============================================================
   Responsive
============================================================ */
@media (max-width: 991px) {
    [b-vot6q8bpb2] .tp-stays-layout { grid-template-columns: 1fr; gap: 28px; }
    [b-vot6q8bpb2] .tp-stays-panel { position: static; }
    [b-vot6q8bpb2] .tp-gallery { height: 360px; }
}

@media (max-width: 767px) {
    [b-vot6q8bpb2] .tp-stays-container { padding: 0 16px; }
    [b-vot6q8bpb2] .tp-stays-step-label { display: none; }
    [b-vot6q8bpb2] .tp-stays-step-line { width: 28px; }
    [b-vot6q8bpb2] .tp-stays-stepper { gap: 10px; padding: 12px 16px; }

    [b-vot6q8bpb2] .tp-gallery {
        grid-template-columns: 1fr;
        height: 280px;
    }
    [b-vot6q8bpb2] .tp-gallery-grid { display: none; }

    [b-vot6q8bpb2] .tp-stays-stats { flex-direction: column; }
    [b-vot6q8bpb2] .tp-stays-stat {
        border-right: none;
        border-bottom: 1px solid var(--tp-stays-border);
        min-width: 0;
    }
    [b-vot6q8bpb2] .tp-stays-stat:last-child { border-bottom: none; }

    [b-vot6q8bpb2] .tp-room {
        grid-template-columns: 1fr;
    }
    [b-vot6q8bpb2] .tp-room-media { height: 200px; min-height: 0; }

    [b-vot6q8bpb2] .tp-stays-formgrid { grid-template-columns: 1fr; }
    [b-vot6q8bpb2] .tp-stays-field-wide { grid-column: auto; }

    [b-vot6q8bpb2] .tp-stays-actions { flex-direction: column-reverse; }
    [b-vot6q8bpb2] .tp-stays-actions .tp-stays-btn,
    [b-vot6q8bpb2] .tp-stays-actions .tp-stays-btn-ghost { width: 100%; }

    [b-vot6q8bpb2] .tp-room-cta { flex-direction: column; align-items: stretch; }
    [b-vot6q8bpb2] .tp-room-cta .tp-stays-btn { width: 100%; }

    /* Sticky bottom CTA bar on the property step */
    [b-vot6q8bpb2] .tp-stays-detail { padding-bottom: 88px; }
    [b-vot6q8bpb2] .tp-stays-mobilebar {
        display: flex;
        align-items: center;
        justify-content: space-between;
        gap: 14px;
        position: fixed;
        left: 0; right: 0; bottom: 0;
        z-index: 60;
        background: var(--tp-stays-surface);
        border-top: 1px solid var(--tp-stays-border);
        /* extra right padding keeps the CTA clear of the global scroll-to-top FAB */
        padding: 12px 74px calc(12px + env(safe-area-inset-bottom)) 16px;
        box-shadow: 0 -4px 18px rgba(0,0,0,0.06);
    }
    [b-vot6q8bpb2] .tp-stays-mobilebar-price { font-size: 1.15rem; font-weight: 800; color: var(--tp-stays-text); }
    [b-vot6q8bpb2] .tp-stays-mobilebar-unit { font-size: 0.82rem; color: var(--tp-stays-text-sec); margin-left: 4px; }
    [b-vot6q8bpb2] .tp-stays-mobilebar .tp-stays-btn { flex: 0 0 auto; }

    [b-vot6q8bpb2] .tp-lightbox-figure img { max-height: calc(100vh - 190px); }
    [b-vot6q8bpb2] .tp-lightbox-nav { width: 40px; height: 40px; }
    [b-vot6q8bpb2] .tp-lightbox-strip { padding: 12px 14px; justify-content: flex-start; }
}
/* _content/Apps.TicketPulse/Components/Pages/StaysLanding.razor.rz.scp.css */
[b-6ne4z312ub] .tp-stays-landing {
    font-family: var(--bs-font-sans-serif, 'Wix Madefor Display', sans-serif);
    color: var(--text-color, #39364f);
    min-height: 100vh;
    background: #fff;
}

[b-6ne4z312ub] .tp-stays-hero {
    background: var(--gradient-primary, linear-gradient(135deg, #440099 0%, #764ba2 100%));
    padding: 60px 0 50px;
    text-align: left;
    color: #fff;
}

[b-6ne4z312ub] .tp-stays-hero-title {
    font-size: 2.4rem;
    font-weight: 900;
    color: #fff;
    margin-bottom: 8px;
    letter-spacing: -0.02em;
}

[b-6ne4z312ub] .tp-stays-hero-sub {
    font-size: 1.05rem;
    color: rgba(255,255,255,0.85);
    margin-bottom: 32px;
}

[b-6ne4z312ub] .tp-stays-search-panel {
    max-width: 1080px;
    margin: 0;
    background: #fff;
    border-radius: 10px;
    padding: 6px;
    box-shadow: 0 20px 50px rgba(20, 16, 48, 0.22), 0 2px 6px rgba(20, 16, 48, 0.08);
    text-align: left;
}

[b-6ne4z312ub] .tp-stays-search-bar {
    display: grid;
    grid-template-columns: minmax(0, 1.8fr) minmax(0, 1fr) minmax(0, 1fr) minmax(0, 1.1fr) auto;
    align-items: stretch;
    gap: 0;
}

[b-6ne4z312ub] .tp-stays-search-field {
    position: relative;
    display: flex;
    flex-direction: column;
    justify-content: center;
    gap: 4px;
    min-width: 0;
    height: 64px;
    padding: 10px 18px;
    border-radius: 6px;
    background: transparent;
    cursor: text;
    transition: background 0.18s ease;
}

[b-6ne4z312ub] .tp-stays-search-field + .tp-stays-search-field::before {
    content: "";
    position: absolute;
    left: 0;
    top: 20%;
    bottom: 20%;
    width: 1px;
    background: var(--medium-gray, #eeedf2);
    transition: opacity 0.18s ease;
}

[b-6ne4z312ub] .tp-stays-search-field:hover {
    background: #f6f3fb;
}

[b-6ne4z312ub] .tp-stays-search-field:hover::before,
[b-6ne4z312ub] .tp-stays-search-field:hover + .tp-stays-search-field::before,
[b-6ne4z312ub] .tp-stays-search-field:focus-within::before,
[b-6ne4z312ub] .tp-stays-search-field:focus-within + .tp-stays-search-field::before {
    opacity: 0;
}

[b-6ne4z312ub] .tp-stays-search-field:focus-within {
    background: #fff;
    box-shadow: 0 0 0 2px var(--primary-color, #440099) inset;
}

[b-6ne4z312ub] .tp-stays-search-label {
    display: flex;
    align-items: center;
    gap: 6px;
    font-size: 0.7rem;
    font-weight: 700;
    line-height: 1;
    letter-spacing: 0.04em;
    color: var(--secondary-color, #39364f);
    text-transform: uppercase;
}

[b-6ne4z312ub] .tp-stays-search-label i {
    color: var(--primary-color, #440099);
    font-size: 0.85rem;
}

[b-6ne4z312ub] .tp-stays-search-input {
    display: block;
    width: 100%;
    min-width: 0;
    height: 22px;
    line-height: 22px;
    border: none;
    outline: none;
    background: transparent;
    font-size: 0.95rem;
    font-weight: 500;
    color: var(--text-color, #39364f);
    padding: 0;
    margin: 0;
}

[b-6ne4z312ub] .tp-stays-search-input::placeholder {
    color: var(--dark-gray, #6f7287);
    font-weight: 400;
}

[b-6ne4z312ub] .tp-stays-search-input[type="date"] {
    cursor: pointer;
    font-variant-numeric: tabular-nums;
}

[b-6ne4z312ub] .tp-stays-search-input[type="date"]::-webkit-calendar-picker-indicator {
    opacity: 0.55;
    cursor: pointer;
}

[b-6ne4z312ub] .tp-stays-select-shell {
    position: relative;
    display: flex;
    align-items: center;
    min-width: 0;
}

[b-6ne4z312ub] .tp-stays-select-shell select.tp-stays-search-input {
    appearance: none;
    -webkit-appearance: none;
    padding-right: 20px;
    cursor: pointer;
}

[b-6ne4z312ub] .tp-stays-select-shell > i {
    position: absolute;
    right: 0;
    top: 50%;
    transform: translateY(-50%);
    color: var(--dark-gray, #6f7287);
    font-size: 0.78rem;
    pointer-events: none;
}

[b-6ne4z312ub] .tp-stays-search-btn {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
    height: 64px;
    padding: 0 24px;
    min-width: 130px;
    background: var(--primary-color, #440099);
    color: #fff;
    border: none;
    font-weight: 700;
    font-size: 0.95rem;
    cursor: pointer;
    white-space: nowrap;
    border-radius: 6px;
    transition: background 0.2s ease, transform 0.15s ease;
}

[b-6ne4z312ub] .tp-stays-search-btn i {
    font-size: 1.05rem;
}

[b-6ne4z312ub] .tp-stays-search-btn:hover {
    background: var(--primary-hover, #5a17b8);
    transform: translateY(-1px);
}

[b-6ne4z312ub] .tp-stays-search-btn:active {
    transform: translateY(0);
}

[b-6ne4z312ub] .tp-stays-search-btn:focus-visible {
    outline: 3px solid rgba(255, 255, 255, 0.6);
    outline-offset: 2px;
}

[b-6ne4z312ub] .tp-stays-search-dest.is-open {
    background: #fff;
    box-shadow: 0 0 0 2px var(--primary-color, #440099) inset;
    z-index: 5;
}

[b-6ne4z312ub] .tp-stays-suggest {
    position: absolute;
    top: calc(100% + 8px);
    left: 0;
    right: 0;
    min-width: 320px;
    max-height: 380px;
    overflow-y: auto;
    background: #fff;
    border: 1px solid var(--medium-gray, #eeedf2);
    border-radius: 8px;
    box-shadow: 0 16px 40px rgba(20, 16, 48, 0.18);
    padding: 6px;
    z-index: 30;
}

[b-6ne4z312ub] .tp-stays-suggest-group + .tp-stays-suggest-group {
    margin-top: 4px;
    padding-top: 6px;
    border-top: 1px solid var(--medium-gray, #eeedf2);
}

[b-6ne4z312ub] .tp-stays-suggest-heading {
    font-size: 0.66rem;
    font-weight: 700;
    letter-spacing: 0.04em;
    text-transform: uppercase;
    color: var(--dark-gray, #6f7287);
    padding: 6px 10px 4px;
}

[b-6ne4z312ub] .tp-stays-suggest-item {
    display: flex;
    align-items: center;
    gap: 10px;
    width: 100%;
    padding: 10px 10px;
    background: transparent;
    border: none;
    border-radius: 6px;
    text-align: left;
    cursor: pointer;
    color: var(--text-color, #39364f);
    transition: background 0.12s ease;
}

[b-6ne4z312ub] .tp-stays-suggest-item:hover,
[b-6ne4z312ub] .tp-stays-suggest-item.is-active {
    background: #f4f1f9;
}

[b-6ne4z312ub] .tp-stays-suggest-item > i {
    flex-shrink: 0;
    width: 28px;
    height: 28px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    background: var(--light-gray, #f8f7fa);
    color: var(--primary-color, #440099);
    border-radius: 50%;
    font-size: 0.85rem;
}

[b-6ne4z312ub] .tp-stays-suggest-main {
    flex: 1;
    min-width: 0;
    display: flex;
    flex-direction: column;
    font-size: 0.92rem;
    font-weight: 600;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

[b-6ne4z312ub] .tp-stays-suggest-sub {
    font-size: 0.78rem;
    font-weight: 400;
    color: var(--dark-gray, #6f7287);
    margin-top: 2px;
}

[b-6ne4z312ub] .tp-stays-suggest-count {
    flex-shrink: 0;
    font-size: 0.74rem;
    font-weight: 600;
    color: var(--dark-gray, #6f7287);
    background: var(--light-gray, #f8f7fa);
    border-radius: 999px;
    padding: 3px 9px;
}

[b-6ne4z312ub] .tp-stays-features {
    padding: 50px 0;
    border-bottom: 1px solid var(--medium-gray, #eeedf2);
    background: #fff;
}

[b-6ne4z312ub] .tp-stays-features-grid {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 24px;
}

[b-6ne4z312ub] .tp-stays-feature-item {
    text-align: center;
    padding: 24px 16px;
}

[b-6ne4z312ub] .tp-stays-feature-icon {
    width: 56px;
    height: 56px;
    border-radius: 16px;
    background: rgba(68,0,153,0.08);
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 1.4rem;
    color: var(--primary-color, #440099);
    margin: 0 auto 16px;
}

[b-6ne4z312ub] .tp-stays-feature-item h4 {
    font-size: 0.95rem;
    font-weight: 700;
    color: var(--secondary-color, #39364f);
    margin-bottom: 6px;
}

[b-6ne4z312ub] .tp-stays-feature-item p {
    font-size: 0.82rem;
    color: var(--dark-gray, #6f7287);
    margin: 0;
}

[b-6ne4z312ub] .tp-stays-listings {
    padding: 50px 0 60px;
    background: var(--light-gray, #f8f7fa);
}

[b-6ne4z312ub] .tp-stays-section-header {
    margin-bottom: 32px;
}

[b-6ne4z312ub] .tp-stays-section-header h2 {
    font-size: 1.8rem;
    font-weight: 800;
    color: var(--secondary-color, #39364f);
    margin-bottom: 6px;
}

[b-6ne4z312ub] .tp-stays-section-header p {
    color: var(--dark-gray, #6f7287);
    font-size: 0.95rem;
}

[b-6ne4z312ub] .tp-stays-results-header {
    display: flex;
    align-items: center;
    gap: 16px;
    margin-bottom: 32px;
    flex-wrap: wrap;
}

[b-6ne4z312ub] .tp-stays-results-header h2 {
    font-size: 1.5rem;
    font-weight: 800;
    color: var(--secondary-color, #39364f);
    margin: 0;
}

[b-6ne4z312ub] .tp-stays-results-tag {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    background: rgba(68,0,153,0.08);
    color: var(--primary-color, #440099);
    padding: 6px 14px;
    border-radius: 50px;
    font-size: 0.82rem;
    font-weight: 600;
}

[b-6ne4z312ub] .tp-stays-results-tag button {
    background: none;
    border: none;
    color: var(--primary-color, #440099);
    cursor: pointer;
    padding: 0;
    font-size: 1rem;
    line-height: 1;
}

[b-6ne4z312ub] .tp-stays-property-grid {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 24px;
}

[b-6ne4z312ub] .tp-stays-property-card {
    background: #fff;
    border: 1px solid var(--medium-gray, #eeedf2);
    border-radius: 16px;
    overflow: hidden;
    cursor: pointer;
    transition: all 0.3s;
    box-shadow: var(--shadow-sm, 0 0.125rem 0.25rem rgba(0, 0, 0, 0.075));
}

[b-6ne4z312ub] .tp-stays-property-card:hover {
    border-color: rgba(68,0,153,0.2);
    transform: translateY(-4px);
    box-shadow: var(--shadow-lg, 0 1rem 3rem rgba(0, 0, 0, 0.175));
}

[b-6ne4z312ub] .tp-stays-property-img {
    position: relative;
    height: 220px;
    overflow: hidden;
}

[b-6ne4z312ub] .tp-stays-property-img img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    transition: transform 0.5s;
}

[b-6ne4z312ub] .tp-stays-property-card:hover .tp-stays-property-img img {
    transform: scale(1.05);
}

[b-6ne4z312ub] .tp-stays-property-placeholder {
    width: 100%;
    height: 100%;
    display: flex;
    align-items: center;
    justify-content: center;
    background: var(--light-gray, #f8f7fa);
    color: var(--dark-gray, #6f7287);
    font-size: 2.5rem;
}

[b-6ne4z312ub] .tp-stays-property-type {
    position: absolute;
    top: 12px;
    left: 12px;
    background: rgba(68,0,153,0.85);
    color: #fff;
    padding: 4px 12px;
    border-radius: 50px;
    font-size: 0.72rem;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 0.05em;
}

[b-6ne4z312ub] .tp-stays-property-free-cancel {
    position: absolute;
    bottom: 12px;
    left: 12px;
    background: rgba(40,167,69,0.9);
    color: #fff;
    padding: 4px 10px;
    border-radius: 50px;
    font-size: 0.7rem;
    font-weight: 700;
}

[b-6ne4z312ub] .tp-stays-property-body {
    padding: 20px;
}

[b-6ne4z312ub] .tp-stays-property-location {
    font-size: 0.78rem;
    color: var(--dark-gray, #6f7287);
    margin-bottom: 6px;
}

[b-6ne4z312ub] .tp-stays-property-location i {
    color: var(--primary-color, #440099);
}

[b-6ne4z312ub] .tp-stays-property-name {
    font-size: 1.1rem;
    font-weight: 800;
    color: var(--secondary-color, #39364f);
    margin-bottom: 8px;
    line-height: 1.3;
}

[b-6ne4z312ub] .tp-stays-property-desc {
    font-size: 0.82rem;
    color: var(--dark-gray, #6f7287);
    line-height: 1.5;
    margin-bottom: 12px;
}

[b-6ne4z312ub] .tp-stays-property-amenities {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
    margin-bottom: 16px;
}

[b-6ne4z312ub] .tp-stays-property-amenity {
    display: inline-flex;
    align-items: center;
    gap: 4px;
    font-size: 0.72rem;
    color: var(--dark-gray, #6f7287);
    background: var(--light-gray, #f8f7fa);
    border: 1px solid var(--medium-gray, #eeedf2);
    padding: 3px 10px;
    border-radius: 50px;
}

[b-6ne4z312ub] .tp-stays-property-amenity i {
    color: var(--primary-color, #440099);
    font-size: 0.7rem;
}

[b-6ne4z312ub] .tp-stays-property-amenity-more {
    font-size: 0.72rem;
    color: var(--primary-color, #440099);
    font-weight: 600;
    padding: 3px 0;
}

[b-6ne4z312ub] .tp-stays-property-footer {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding-top: 16px;
    border-top: 1px solid var(--medium-gray, #eeedf2);
}

[b-6ne4z312ub] .tp-stays-property-rooms {
    font-size: 0.78rem;
    color: var(--dark-gray, #6f7287);
}

[b-6ne4z312ub] .tp-stays-property-price {
    display: flex;
    align-items: baseline;
    gap: 4px;
}

[b-6ne4z312ub] .tp-stays-property-price-label {
    font-size: 0.72rem;
    color: var(--dark-gray, #6f7287);
}

[b-6ne4z312ub] .tp-stays-property-price-value {
    font-size: 1.25rem;
    font-weight: 800;
    color: var(--primary-color, #440099);
}

[b-6ne4z312ub] .tp-stays-empty {
    text-align: center;
    padding: 80px 20px;
}

[b-6ne4z312ub] .tp-stays-empty i {
    font-size: 3rem;
    color: var(--dark-gray, #6f7287);
    margin-bottom: 16px;
    display: block;
}

[b-6ne4z312ub] .tp-stays-empty h3 {
    font-size: 1.3rem;
    font-weight: 700;
    color: var(--secondary-color, #39364f);
    margin-bottom: 8px;
}

[b-6ne4z312ub] .tp-stays-empty p {
    color: var(--dark-gray, #6f7287);
    margin-bottom: 24px;
}

[b-6ne4z312ub] .tp-stays-btn {
    background: var(--primary-color, #440099);
    color: #fff;
    border: none;
    border-radius: 50px;
    padding: 12px 28px;
    font-weight: 700;
    font-size: 0.95rem;
    cursor: pointer;
    transition: all 0.3s;
    text-decoration: none;
    display: inline-block;
}

[b-6ne4z312ub] .tp-stays-btn:hover {
    background: var(--primary-hover, #007bff);
    transform: translateY(-2px);
    box-shadow: 0 8px 25px rgba(68,0,153,0.25);
    color: #fff;
}

[b-6ne4z312ub] .tp-stays-cta {
    padding: 60px 0;
    background: var(--light-gray, #f8f7fa);
    border-top: 1px solid var(--medium-gray, #eeedf2);
}

[b-6ne4z312ub] .tp-stays-cta h2 {
    font-size: 1.8rem;
    font-weight: 800;
    color: var(--secondary-color, #39364f);
    margin-bottom: 10px;
}

[b-6ne4z312ub] .tp-stays-cta p {
    color: var(--dark-gray, #6f7287);
    margin-bottom: 24px;
    font-size: 1rem;
}

[b-6ne4z312ub] .tp-stays-btn-outline {
    display: inline-block;
    border: 2px solid var(--primary-color, #440099);
    color: var(--primary-color, #440099);
    background: transparent;
    border-radius: 50px;
    padding: 12px 32px;
    font-weight: 700;
    font-size: 0.95rem;
    text-decoration: none;
    transition: all 0.3s;
}

[b-6ne4z312ub] .tp-stays-btn-outline:hover {
    background: var(--primary-color, #440099);
    color: #fff;
    transform: translateY(-2px);
    box-shadow: 0 8px 25px rgba(68,0,153,0.25);
}

@media (max-width: 992px) {
    [b-6ne4z312ub] .tp-stays-property-grid {
        grid-template-columns: repeat(2, 1fr);
    }

    [b-6ne4z312ub] .tp-stays-features-grid {
        grid-template-columns: repeat(2, 1fr);
    }

    [b-6ne4z312ub] .tp-stays-search-panel {
        border-radius: 8px;
        padding: 10px;
    }

    [b-6ne4z312ub] .tp-stays-search-bar {
        grid-template-columns: 1fr 1fr;
        gap: 8px;
    }

    [b-6ne4z312ub] .tp-stays-search-field {
        border-radius: 6px;
        height: 60px;
        padding: 10px 14px;
        border: 1px solid var(--medium-gray, #eeedf2);
        background: #fbfbfd;
    }

    [b-6ne4z312ub] .tp-stays-search-field + .tp-stays-search-field::before {
        display: none;
    }

    [b-6ne4z312ub] .tp-stays-search-field:hover {
        background: #fbfbfd;
    }

    [b-6ne4z312ub] .tp-stays-search-field:focus-within {
        background: #fff;
        box-shadow: 0 0 0 2px var(--primary-color, #440099) inset;
    }

    [b-6ne4z312ub] .tp-stays-search-dest {
        grid-column: 1 / -1;
    }

    [b-6ne4z312ub] .tp-stays-search-btn {
        grid-column: 1 / -1;
        width: 100%;
        height: 52px;
        margin: 4px 0 0;
        border-radius: 6px;
    }
}

@media (max-width: 576px) {
    [b-6ne4z312ub] .tp-stays-property-grid {
        grid-template-columns: 1fr;
    }

    [b-6ne4z312ub] .tp-stays-features-grid {
        grid-template-columns: 1fr 1fr;
    }

    [b-6ne4z312ub] .tp-stays-hero-title {
        font-size: 1.8rem;
    }

    [b-6ne4z312ub] .tp-stays-search-panel {
        padding: 8px;
        border-radius: 8px;
    }

    [b-6ne4z312ub] .tp-stays-search-bar {
        grid-template-columns: 1fr;
        gap: 6px;
    }

    [b-6ne4z312ub] .tp-stays-search-dest,
    [b-6ne4z312ub] .tp-stays-search-btn {
        grid-column: auto;
    }

    [b-6ne4z312ub] .tp-stays-search-field {
        padding: 10px 14px;
        height: 56px;
    }

    [b-6ne4z312ub] .tp-stays-search-label {
        font-size: 0.66rem;
    }

    [b-6ne4z312ub] .tp-stays-search-btn {
        height: 50px;
        font-size: 1rem;
    }
}
/* _content/Apps.TicketPulse/Components/Pages/StaysListing.razor.rz.scp.css */
[b-ujfrx8w205] .tp-stl-page {
    font-family: var(--bs-font-sans-serif, 'Wix Madefor Display', sans-serif);
    color: var(--text-color, #39364f);
    min-height: 100vh;
    background: var(--light-gray, #f8f7fa);
}

/* ---------- Hero strip ---------- */
[b-ujfrx8w205] .tp-stl-hero {
    background: var(--gradient-primary, linear-gradient(135deg, #440099 0%, #764ba2 100%));
    color: #fff;
    padding: 28px 0 36px;
}

[b-ujfrx8w205] .tp-stl-breadcrumb {
    display: flex;
    align-items: center;
    gap: 8px;
    margin-bottom: 14px;
    font-size: 0.82rem;
    color: rgba(255, 255, 255, 0.78);
}

[b-ujfrx8w205] .tp-stl-breadcrumb a {
    color: #fff;
    text-decoration: none;
    font-weight: 600;
    display: inline-flex;
    align-items: center;
    gap: 4px;
}

[b-ujfrx8w205] .tp-stl-breadcrumb a:hover {
    text-decoration: underline;
}

[b-ujfrx8w205] .tp-stl-breadcrumb i.bi-chevron-right {
    font-size: 0.65rem;
    color: rgba(255, 255, 255, 0.5);
}

[b-ujfrx8w205] .tp-stl-title {
    font-size: 1.6rem;
    font-weight: 800;
    color: #fff;
    margin-top: 24px;
    margin-bottom: 4px;
    letter-spacing: -0.01em;
}

[b-ujfrx8w205] .tp-stl-title span {
    color: #fff;
}

[b-ujfrx8w205] .tp-stl-subtitle {
    color: rgba(255, 255, 255, 0.82);
    font-size: 0.92rem;
    margin: 0;
}

/* ---------- Search panel (matches Activities/Stays landing) ---------- */
[b-ujfrx8w205] .tp-stl-search-panel {
    max-width: 1080px;
    margin: 0;
    background: #fff;
    border-radius: 10px;
    padding: 6px;
    box-shadow: 0 16px 36px rgba(20, 16, 48, 0.22), 0 2px 6px rgba(20, 16, 48, 0.08);
}

[b-ujfrx8w205] .tp-stl-search-bar {
    display: grid;
    grid-template-columns: minmax(0, 1.8fr) minmax(0, 1fr) minmax(0, 1fr) minmax(0, 1.1fr) auto;
    align-items: stretch;
    gap: 0;
}

[b-ujfrx8w205] .tp-stl-search-field {
    position: relative;
    display: flex;
    flex-direction: column;
    justify-content: center;
    gap: 4px;
    min-width: 0;
    height: 64px;
    padding: 10px 18px;
    border-radius: 6px;
    background: transparent;
    cursor: text;
    transition: background 0.18s ease;
}

[b-ujfrx8w205] .tp-stl-search-field + .tp-stl-search-field::before {
    content: "";
    position: absolute;
    left: 0;
    top: 20%;
    bottom: 20%;
    width: 1px;
    background: var(--medium-gray, #eeedf2);
    transition: opacity 0.18s ease;
}

[b-ujfrx8w205] .tp-stl-search-field:hover {
    background: #f6f3fb;
}

[b-ujfrx8w205] .tp-stl-search-field:hover::before,
[b-ujfrx8w205] .tp-stl-search-field:hover + .tp-stl-search-field::before,
[b-ujfrx8w205] .tp-stl-search-field:focus-within::before,
[b-ujfrx8w205] .tp-stl-search-field:focus-within + .tp-stl-search-field::before,
[b-ujfrx8w205] .tp-stl-search-field.is-open::before,
[b-ujfrx8w205] .tp-stl-search-field.is-open + .tp-stl-search-field::before {
    opacity: 0;
}

[b-ujfrx8w205] .tp-stl-search-field:focus-within,
[b-ujfrx8w205] .tp-stl-search-field.is-open {
    background: #fff;
    box-shadow: 0 0 0 2px var(--primary-color, #440099) inset;
    z-index: 5;
}

[b-ujfrx8w205] .tp-stl-search-label {
    display: flex;
    align-items: center;
    gap: 6px;
    font-size: 0.7rem;
    font-weight: 700;
    line-height: 1;
    letter-spacing: 0.04em;
    color: var(--secondary-color, #39364f);
    text-transform: uppercase;
}

[b-ujfrx8w205] .tp-stl-search-label i {
    color: var(--primary-color, #440099);
    font-size: 0.85rem;
}

[b-ujfrx8w205] .tp-stl-search-input {
    display: block;
    width: 100%;
    min-width: 0;
    height: 22px;
    line-height: 22px;
    border: none;
    outline: none;
    background: transparent;
    font-size: 0.95rem;
    font-weight: 500;
    color: var(--text-color, #39364f);
    padding: 0;
    margin: 0;
}

[b-ujfrx8w205] .tp-stl-search-input::placeholder {
    color: var(--dark-gray, #6f7287);
    font-weight: 400;
}

[b-ujfrx8w205] .tp-stl-search-input[type="date"] {
    cursor: pointer;
    font-variant-numeric: tabular-nums;
}

[b-ujfrx8w205] .tp-stl-search-input[type="date"]::-webkit-calendar-picker-indicator {
    opacity: 0.55;
    cursor: pointer;
}

[b-ujfrx8w205] .tp-stl-select-shell {
    position: relative;
    display: flex;
    align-items: center;
    min-width: 0;
}

[b-ujfrx8w205] .tp-stl-select-shell select.tp-stl-search-input {
    appearance: none;
    -webkit-appearance: none;
    padding-right: 20px;
    cursor: pointer;
}

[b-ujfrx8w205] .tp-stl-select-shell > i {
    position: absolute;
    right: 0;
    top: 50%;
    transform: translateY(-50%);
    color: var(--dark-gray, #6f7287);
    font-size: 0.78rem;
    pointer-events: none;
}

[b-ujfrx8w205] .tp-stl-search-btn {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
    height: 64px;
    padding: 0 24px;
    min-width: 130px;
    background: var(--primary-color, #440099);
    color: #fff;
    border: none;
    font-weight: 700;
    font-size: 0.95rem;
    cursor: pointer;
    white-space: nowrap;
    border-radius: 6px;
    transition: background 0.2s ease, transform 0.15s ease;
}

[b-ujfrx8w205] .tp-stl-search-btn:hover {
    background: var(--primary-hover, #5a17b8);
    transform: translateY(-1px);
}

[b-ujfrx8w205] .tp-stl-search-btn:active {
    transform: translateY(0);
}

/* ---------- Autosuggest ---------- */
[b-ujfrx8w205] .tp-stl-suggest {
    position: absolute;
    top: calc(100% + 8px);
    left: 0;
    right: 0;
    min-width: 320px;
    max-height: 380px;
    overflow-y: auto;
    background: #fff;
    border: 1px solid var(--medium-gray, #eeedf2);
    border-radius: 8px;
    box-shadow: 0 16px 40px rgba(20, 16, 48, 0.18);
    padding: 6px;
    z-index: 30;
}

[b-ujfrx8w205] .tp-stl-suggest-group + .tp-stl-suggest-group {
    margin-top: 4px;
    padding-top: 6px;
    border-top: 1px solid var(--medium-gray, #eeedf2);
}

[b-ujfrx8w205] .tp-stl-suggest-heading {
    font-size: 0.66rem;
    font-weight: 700;
    letter-spacing: 0.04em;
    text-transform: uppercase;
    color: var(--dark-gray, #6f7287);
    padding: 6px 10px 4px;
}

[b-ujfrx8w205] .tp-stl-suggest-item {
    display: flex;
    align-items: center;
    gap: 10px;
    width: 100%;
    padding: 10px;
    background: transparent;
    border: none;
    border-radius: 6px;
    text-align: left;
    cursor: pointer;
    color: var(--text-color, #39364f);
    transition: background 0.12s ease;
}

[b-ujfrx8w205] .tp-stl-suggest-item:hover,
[b-ujfrx8w205] .tp-stl-suggest-item.is-active {
    background: #f4f1f9;
}

[b-ujfrx8w205] .tp-stl-suggest-item > i {
    flex-shrink: 0;
    width: 28px;
    height: 28px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    background: var(--light-gray, #f8f7fa);
    color: var(--primary-color, #440099);
    border-radius: 50%;
    font-size: 0.85rem;
}

[b-ujfrx8w205] .tp-stl-suggest-main {
    flex: 1;
    min-width: 0;
    display: flex;
    flex-direction: column;
    font-size: 0.92rem;
    font-weight: 600;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

[b-ujfrx8w205] .tp-stl-suggest-sub {
    font-size: 0.78rem;
    font-weight: 400;
    color: var(--dark-gray, #6f7287);
    margin-top: 2px;
}

[b-ujfrx8w205] .tp-stl-suggest-count {
    flex-shrink: 0;
    font-size: 0.74rem;
    font-weight: 600;
    color: var(--dark-gray, #6f7287);
    background: var(--light-gray, #f8f7fa);
    border-radius: 999px;
    padding: 3px 9px;
}

/* ---------- Content layout ---------- */
[b-ujfrx8w205] .tp-stl-content {
    padding: 24px 12px 60px;
}

[b-ujfrx8w205] .tp-stl-chips {
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    gap: 8px;
    margin-bottom: 16px;
}

[b-ujfrx8w205] .tp-stl-chip {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    background: #fff;
    border: 1px solid var(--medium-gray, #eeedf2);
    color: var(--text-color, #39364f);
    border-radius: 999px;
    padding: 5px 12px;
    font-size: 0.82rem;
    font-weight: 600;
    cursor: pointer;
    transition: border-color 0.15s ease, background 0.15s ease;
}

[b-ujfrx8w205] .tp-stl-chip:hover {
    border-color: var(--primary-color, #440099);
    background: #f4f1f9;
}

[b-ujfrx8w205] .tp-stl-chip i {
    color: var(--dark-gray, #6f7287);
    font-size: 0.95rem;
}

[b-ujfrx8w205] .tp-stl-chip-clear {
    background: transparent;
    border: none;
    color: var(--primary-color, #440099);
    font-weight: 700;
    font-size: 0.82rem;
    cursor: pointer;
    padding: 5px 8px;
    text-decoration: underline;
}

/* ---------- Filters sidebar / drawer ---------- */
[b-ujfrx8w205] .tp-stl-aside {
    position: relative;
}

[b-ujfrx8w205] .tp-stl-filters {
    background: #fff;
    border: 1px solid var(--medium-gray, #eeedf2);
    border-radius: 10px;
    padding: 18px 20px;
    position: sticky;
    top: 88px;
    box-shadow: 0 1px 3px rgba(20, 16, 48, 0.04);
}

[b-ujfrx8w205] .tp-stl-filters-head {
    display: flex;
    align-items: center;
    justify-content: space-between;
    margin-bottom: 14px;
    padding-bottom: 12px;
    border-bottom: 1px solid var(--medium-gray, #eeedf2);
}

[b-ujfrx8w205] .tp-stl-filters-head h3 {
    font-size: 0.95rem;
    font-weight: 800;
    color: var(--secondary-color, #39364f);
    margin: 0;
}

[b-ujfrx8w205] .tp-stl-filters-close {
    display: none;
    background: transparent;
    border: none;
    color: var(--dark-gray, #6f7287);
    font-size: 1.1rem;
    cursor: pointer;
    padding: 4px 8px;
}

[b-ujfrx8w205] .tp-stl-filter-group {
    margin-bottom: 18px;
}

[b-ujfrx8w205] .tp-stl-filter-group h4 {
    font-size: 0.72rem;
    font-weight: 700;
    color: var(--dark-gray, #6f7287);
    text-transform: uppercase;
    letter-spacing: 0.04em;
    margin-bottom: 10px;
}

[b-ujfrx8w205] .tp-stl-filter-check {
    display: flex;
    align-items: center;
    gap: 10px;
    padding: 6px 0;
    cursor: pointer;
    font-size: 0.88rem;
    color: var(--text-color, #39364f);
}

[b-ujfrx8w205] .tp-stl-filter-check input[type="checkbox"] {
    accent-color: var(--primary-color, #440099);
    width: 16px;
    height: 16px;
    margin: 0;
}

[b-ujfrx8w205] .tp-stl-price-row {
    display: flex;
    gap: 8px;
}

[b-ujfrx8w205] .tp-stl-price-input {
    display: flex;
    flex-direction: column;
    gap: 3px;
    flex: 1;
    background: var(--light-gray, #f8f7fa);
    border: 1px solid var(--medium-gray, #eeedf2);
    border-radius: 6px;
    padding: 6px 10px;
}

[b-ujfrx8w205] .tp-stl-price-input span {
    font-size: 0.66rem;
    font-weight: 700;
    color: var(--dark-gray, #6f7287);
    text-transform: uppercase;
    letter-spacing: 0.04em;
}

[b-ujfrx8w205] .tp-stl-price-input input {
    border: none;
    outline: none;
    background: transparent;
    font-size: 0.9rem;
    font-weight: 600;
    color: var(--text-color, #39364f);
    padding: 0;
    width: 100%;
    font-variant-numeric: tabular-nums;
}

[b-ujfrx8w205] .tp-stl-price-hint {
    font-size: 0.72rem;
    color: var(--dark-gray, #6f7287);
    margin-top: 6px;
}

[b-ujfrx8w205] .tp-stl-filter-apply {
    width: 100%;
    background: var(--primary-color, #440099);
    color: #fff;
    border: none;
    border-radius: 6px;
    padding: 11px 16px;
    font-weight: 700;
    font-size: 0.88rem;
    cursor: pointer;
    transition: background 0.2s ease;
    margin-top: 6px;
}

[b-ujfrx8w205] .tp-stl-filter-apply:hover {
    background: var(--primary-hover, #5a17b8);
}

[b-ujfrx8w205] .tp-stl-drawer-backdrop {
    display: none;
}

/* ---------- Sort bar ---------- */
[b-ujfrx8w205] .tp-stl-sort-bar {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
    margin-bottom: 16px;
    padding: 10px 14px;
    background: #fff;
    border: 1px solid var(--medium-gray, #eeedf2);
    border-radius: 8px;
}

[b-ujfrx8w205] .tp-stl-mobile-filter-btn {
    display: none;
    align-items: center;
    gap: 6px;
    background: transparent;
    border: 1px solid var(--medium-gray, #eeedf2);
    border-radius: 6px;
    padding: 6px 12px;
    font-size: 0.85rem;
    font-weight: 600;
    color: var(--text-color, #39364f);
    cursor: pointer;
}

[b-ujfrx8w205] .tp-stl-mobile-filter-btn i {
    color: var(--primary-color, #440099);
}

[b-ujfrx8w205] .tp-stl-mobile-filter-count {
    background: var(--primary-color, #440099);
    color: #fff;
    border-radius: 999px;
    padding: 1px 7px;
    font-size: 0.72rem;
    font-weight: 700;
    margin-left: 2px;
}

[b-ujfrx8w205] .tp-stl-result-count {
    font-size: 0.88rem;
    color: var(--secondary-color, #39364f);
    font-weight: 700;
}

[b-ujfrx8w205] .tp-stl-sort-control {
    display: flex;
    align-items: center;
    gap: 8px;
}

[b-ujfrx8w205] .tp-stl-sort-bar label {
    font-size: 0.82rem;
    color: var(--dark-gray, #6f7287);
    font-weight: 600;
    margin: 0;
}

[b-ujfrx8w205] .tp-stl-sort-bar select {
    background: var(--light-gray, #f8f7fa);
    border: 1px solid var(--medium-gray, #eeedf2);
    color: var(--text-color, #39364f);
    font-size: 0.85rem;
    font-weight: 600;
    padding: 6px 28px 6px 10px;
    border-radius: 6px;
    outline: none;
    appearance: none;
    -webkit-appearance: none;
    background-image: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'><path fill='%236f7287' d='M3.2 5.8 8 10.6l4.8-4.8.8.8L8 12.2 2.4 6.6z'/></svg>");
    background-repeat: no-repeat;
    background-position: right 8px center;
    background-size: 14px;
}

/* ---------- Result cards ---------- */
[b-ujfrx8w205] .tp-stl-results {
    display: flex;
    flex-direction: column;
    gap: 14px;
}

[b-ujfrx8w205] .tp-stl-card {
    display: flex;
    background: #fff;
    border: 1px solid var(--medium-gray, #eeedf2);
    border-radius: 10px;
    overflow: hidden;
    cursor: pointer;
    transition: border-color 0.2s ease, box-shadow 0.2s ease, transform 0.2s ease;
    box-shadow: 0 1px 3px rgba(20, 16, 48, 0.04);
}

[b-ujfrx8w205] .tp-stl-card:hover {
    border-color: rgba(68, 0, 153, 0.3);
    box-shadow: 0 10px 24px rgba(20, 16, 48, 0.1);
    transform: translateY(-1px);
}

[b-ujfrx8w205] .tp-stl-card:focus-visible {
    outline: 3px solid rgba(68, 0, 153, 0.3);
    outline-offset: 2px;
}

[b-ujfrx8w205] .tp-stl-card-img {
    position: relative;
    width: 260px;
    flex-shrink: 0;
    overflow: hidden;
    background: var(--light-gray, #f8f7fa);
}

[b-ujfrx8w205] .tp-stl-card-img img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    transition: transform 0.4s ease;
}

[b-ujfrx8w205] .tp-stl-card:hover .tp-stl-card-img img {
    transform: scale(1.04);
}

[b-ujfrx8w205] .tp-stl-card-placeholder {
    width: 100%;
    height: 100%;
    min-height: 200px;
    display: flex;
    align-items: center;
    justify-content: center;
    color: var(--dark-gray, #6f7287);
    font-size: 2rem;
}

[b-ujfrx8w205] .tp-stl-card-badge {
    position: absolute;
    top: 10px;
    left: 10px;
    display: inline-flex;
    align-items: center;
    gap: 5px;
    background: rgba(40, 167, 69, 0.95);
    color: #fff;
    font-size: 0.72rem;
    font-weight: 700;
    padding: 4px 9px;
    border-radius: 6px;
    backdrop-filter: blur(4px);
}

[b-ujfrx8w205] .tp-stl-card-body {
    flex: 1;
    display: flex;
    min-width: 0;
}

[b-ujfrx8w205] .tp-stl-card-main {
    flex: 1;
    padding: 16px 18px;
    display: flex;
    flex-direction: column;
    min-width: 0;
}

[b-ujfrx8w205] .tp-stl-card-eyebrow {
    font-size: 0.68rem;
    font-weight: 700;
    color: var(--primary-color, #440099);
    text-transform: uppercase;
    letter-spacing: 0.06em;
    margin-bottom: 4px;
}

[b-ujfrx8w205] .tp-stl-card-title {
    font-size: 1.1rem;
    font-weight: 800;
    color: var(--secondary-color, #39364f);
    margin: 0 0 4px;
    line-height: 1.25;
}

[b-ujfrx8w205] .tp-stl-card-location {
    font-size: 0.82rem;
    color: var(--dark-gray, #6f7287);
    margin-bottom: 8px;
    display: inline-flex;
    align-items: center;
    gap: 4px;
}

[b-ujfrx8w205] .tp-stl-card-location i {
    color: var(--primary-color, #440099);
}

[b-ujfrx8w205] .tp-stl-card-desc {
    font-size: 0.85rem;
    color: var(--dark-gray, #6f7287);
    line-height: 1.5;
    margin-bottom: 10px;
}

[b-ujfrx8w205] .tp-stl-card-tags {
    display: flex;
    flex-wrap: wrap;
    gap: 6px;
    margin-top: auto;
}

[b-ujfrx8w205] .tp-stl-card-tag {
    display: inline-flex;
    align-items: center;
    gap: 5px;
    font-size: 0.72rem;
    font-weight: 500;
    color: var(--text-color, #39364f);
    background: var(--light-gray, #f8f7fa);
    border: 1px solid var(--medium-gray, #eeedf2);
    padding: 3px 9px;
    border-radius: 6px;
}

[b-ujfrx8w205] .tp-stl-card-tag i {
    color: var(--primary-color, #440099);
    font-size: 0.78rem;
}

[b-ujfrx8w205] .tp-stl-card-rail {
    width: 220px;
    flex-shrink: 0;
    padding: 16px 18px;
    border-left: 1px dashed var(--medium-gray, #eeedf2);
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    align-items: flex-end;
    text-align: right;
    gap: 12px;
}

[b-ujfrx8w205] .tp-stl-card-rooms {
    font-size: 0.78rem;
    color: var(--dark-gray, #6f7287);
    align-self: flex-end;
}

[b-ujfrx8w205] .tp-stl-card-rooms i {
    color: var(--primary-color, #440099);
    margin-right: 2px;
}

[b-ujfrx8w205] .tp-stl-card-pricing {
    display: flex;
    flex-direction: column;
    align-items: flex-end;
    gap: 1px;
}

[b-ujfrx8w205] .tp-stl-card-from {
    font-size: 0.72rem;
    color: var(--dark-gray, #6f7287);
}

[b-ujfrx8w205] .tp-stl-card-price {
    font-size: 1.35rem;
    font-weight: 800;
    color: var(--secondary-color, #39364f);
    line-height: 1.1;
}

[b-ujfrx8w205] .tp-stl-card-per {
    font-size: 0.72rem;
    color: var(--dark-gray, #6f7287);
}

[b-ujfrx8w205] .tp-stl-card-total {
    font-size: 0.74rem;
    color: var(--dark-gray, #6f7287);
    margin-top: 4px;
}

[b-ujfrx8w205] .tp-stl-card-cta {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    background: var(--primary-color, #440099);
    color: #fff;
    border: none;
    border-radius: 6px;
    padding: 9px 16px;
    font-weight: 700;
    font-size: 0.85rem;
    cursor: pointer;
    transition: background 0.2s ease, transform 0.15s ease;
}

[b-ujfrx8w205] .tp-stl-card-cta:hover {
    background: var(--primary-hover, #5a17b8);
    transform: translateY(-1px);
}

/* ---------- Empty ---------- */
[b-ujfrx8w205] .tp-stl-empty {
    text-align: center;
    padding: 60px 20px;
    background: #fff;
    border: 1px solid var(--medium-gray, #eeedf2);
    border-radius: 10px;
}

[b-ujfrx8w205] .tp-stl-empty-icon {
    width: 56px;
    height: 56px;
    border-radius: 50%;
    background: var(--light-gray, #f8f7fa);
    display: flex;
    align-items: center;
    justify-content: center;
    margin: 0 auto 16px;
    color: var(--primary-color, #440099);
    font-size: 1.6rem;
}

[b-ujfrx8w205] .tp-stl-empty h3 {
    font-size: 1.15rem;
    font-weight: 800;
    color: var(--secondary-color, #39364f);
    margin-bottom: 6px;
}

[b-ujfrx8w205] .tp-stl-empty p {
    color: var(--dark-gray, #6f7287);
    margin-bottom: 20px;
    font-size: 0.92rem;
}

[b-ujfrx8w205] .tp-stl-btn {
    background: var(--primary-color, #440099);
    color: #fff;
    border: none;
    border-radius: 6px;
    padding: 10px 22px;
    font-weight: 700;
    font-size: 0.9rem;
    cursor: pointer;
    transition: background 0.2s ease;
}

[b-ujfrx8w205] .tp-stl-btn:hover {
    background: var(--primary-hover, #5a17b8);
}

/* ---------- Skeleton ---------- */
[b-ujfrx8w205] .tp-stl-skeleton {
    display: flex;
    background: #fff;
    border: 1px solid var(--medium-gray, #eeedf2);
    border-radius: 10px;
    overflow: hidden;
    min-height: 200px;
}

[b-ujfrx8w205] .tp-stl-skeleton-img {
    width: 260px;
    background: linear-gradient(90deg, #f4f3f8 25%, #ecebf0 50%, #f4f3f8 75%);
    background-size: 200% 100%;
    animation: tp-stl-shimmer-b-ujfrx8w205 1.4s linear infinite;
}

[b-ujfrx8w205] .tp-stl-skeleton-body {
    flex: 1;
    padding: 18px;
    display: flex;
    flex-direction: column;
    gap: 10px;
}

[b-ujfrx8w205] .tp-stl-skeleton-line {
    height: 12px;
    background: linear-gradient(90deg, #f4f3f8 25%, #ecebf0 50%, #f4f3f8 75%);
    background-size: 200% 100%;
    animation: tp-stl-shimmer-b-ujfrx8w205 1.4s linear infinite;
    border-radius: 4px;
    width: 80%;
}

[b-ujfrx8w205] .tp-stl-skeleton-line-lg {
    height: 18px;
    width: 60%;
}

[b-ujfrx8w205] .tp-stl-skeleton-line-sm {
    width: 40%;
}

@keyframes tp-stl-shimmer-b-ujfrx8w205 {
    0% { background-position: 200% 0; }
    100% { background-position: -200% 0; }
}

/* ---------- Responsive ---------- */
@media (max-width: 992px) {
    [b-ujfrx8w205] .tp-stl-hero {
        padding: 22px 0 30px;
    }

    [b-ujfrx8w205] .tp-stl-search-panel {
        border-radius: 8px;
        padding: 10px;
    }

    [b-ujfrx8w205] .tp-stl-search-bar {
        grid-template-columns: 1fr 1fr;
        gap: 8px;
    }

    [b-ujfrx8w205] .tp-stl-search-field {
        border-radius: 6px;
        height: 60px;
        padding: 10px 14px;
        border: 1px solid var(--medium-gray, #eeedf2);
        background: #fbfbfd;
    }

    [b-ujfrx8w205] .tp-stl-search-field + .tp-stl-search-field::before {
        display: none;
    }

    [b-ujfrx8w205] .tp-stl-search-field:hover {
        background: #fbfbfd;
    }

    [b-ujfrx8w205] .tp-stl-search-dest {
        grid-column: 1 / -1;
    }

    [b-ujfrx8w205] .tp-stl-search-btn {
        grid-column: 1 / -1;
        width: 100%;
        height: 52px;
        margin: 4px 0 0;
        border-radius: 6px;
    }

    [b-ujfrx8w205] .tp-stl-card {
        flex-direction: column;
    }

    [b-ujfrx8w205] .tp-stl-card-img {
        width: 100%;
        height: 220px;
    }

    [b-ujfrx8w205] .tp-stl-card-body {
        flex-direction: column;
    }

    [b-ujfrx8w205] .tp-stl-card-rail {
        width: 100%;
        border-left: none;
        border-top: 1px dashed var(--medium-gray, #eeedf2);
        flex-direction: row;
        align-items: center;
        justify-content: space-between;
        text-align: left;
    }

    [b-ujfrx8w205] .tp-stl-card-rooms {
        align-self: auto;
    }

    [b-ujfrx8w205] .tp-stl-card-pricing {
        align-items: flex-start;
    }

    /* Mobile filter drawer */
    [b-ujfrx8w205] .tp-stl-aside {
        position: fixed;
        top: 0;
        right: 0;
        bottom: 0;
        width: min(360px, 92vw);
        max-width: 100%;
        z-index: 110;
        background: #fff;
        transform: translateX(100%);
        transition: transform 0.25s ease;
        box-shadow: -8px 0 24px rgba(20, 16, 48, 0.18);
        overflow-y: auto;
    }

    [b-ujfrx8w205] .tp-stl-aside.is-open {
        transform: translateX(0);
    }

    [b-ujfrx8w205] .tp-stl-filters {
        position: static;
        border: none;
        border-radius: 0;
        box-shadow: none;
        padding: 18px 20px 80px;
        height: 100%;
    }

    [b-ujfrx8w205] .tp-stl-filters-close {
        display: inline-flex;
    }

    [b-ujfrx8w205] .tp-stl-drawer-backdrop {
        display: block;
        position: fixed;
        inset: 0;
        background: rgba(20, 16, 48, 0.48);
        z-index: 100;
        animation: tp-stl-fade-b-ujfrx8w205 0.18s ease;
    }

    [b-ujfrx8w205] .tp-stl-mobile-filter-btn {
        display: inline-flex;
    }

    @keyframes tp-stl-fade-b-ujfrx8w205 {
        from { opacity: 0; }
        to { opacity: 1; }
    }
}

@media (max-width: 576px) {
    [b-ujfrx8w205] .tp-stl-search-panel {
        padding: 8px;
    }

    [b-ujfrx8w205] .tp-stl-search-bar {
        grid-template-columns: 1fr;
        gap: 6px;
    }

    [b-ujfrx8w205] .tp-stl-search-dest,
    [b-ujfrx8w205] .tp-stl-search-btn {
        grid-column: auto;
    }

    [b-ujfrx8w205] .tp-stl-search-field {
        height: 56px;
    }

    [b-ujfrx8w205] .tp-stl-title {
        font-size: 1.35rem;
    }

    [b-ujfrx8w205] .tp-stl-sort-bar {
        flex-wrap: wrap;
        gap: 8px;
    }

    [b-ujfrx8w205] .tp-stl-result-count {
        order: -1;
        flex: 1;
    }
}
/* _content/Apps.TicketPulse/Components/Shared/Contact/ContactDetailsCard.razor.rz.scp.css */
.tp-contact-card[b-gb7psqy81i] {
    background: rgba(255, 255, 255, 0.1);
    border: 1px solid rgba(255, 255, 255, 0.22);
    border-radius: 18px;
    color: #fff;
    padding: 1.6rem 1.7rem;
}

.tp-contact-card h3[b-gb7psqy81i] {
    color: #d8c6ff;
    font-size: 0.74rem;
    font-weight: 700;
    letter-spacing: 0.07em;
    margin: 0 0 1rem;
    text-transform: uppercase;
}

.tp-contact-list[b-gb7psqy81i] {
    display: flex;
    flex-direction: column;
    gap: 0.55rem;
}

.tp-contact-item[b-gb7psqy81i] {
    align-items: center;
    color: #fff;
    display: flex;
    font-size: 0.98rem;
    font-weight: 600;
    gap: 0.7rem;
    text-decoration: none;
    transition: color 0.18s ease;
    word-break: break-word;
}

.tp-contact-item:hover[b-gb7psqy81i] {
    color: #fff;
}

.tp-contact-item:hover span:last-child[b-gb7psqy81i] {
    text-decoration: underline;
}

.tp-contact-ico[b-gb7psqy81i] {
    align-items: center;
    background: rgba(255, 255, 255, 0.14);
    border-radius: 10px;
    color: #fff;
    display: inline-flex;
    flex: 0 0 auto;
    font-size: 0.95rem;
    height: 38px;
    justify-content: center;
    width: 38px;
}

.tp-contact-follow[b-gb7psqy81i] {
    margin-top: 1.6rem;
}

.tp-contact-socials[b-gb7psqy81i] {
    display: flex;
    gap: 0.55rem;
}

.tp-contact-socials a[b-gb7psqy81i] {
    align-items: center;
    border: 1px solid rgba(255, 255, 255, 0.32);
    border-radius: 50%;
    color: #fff;
    display: inline-flex;
    font-size: 1rem;
    height: 42px;
    justify-content: center;
    transition: background 0.18s ease, border-color 0.18s ease;
    width: 42px;
}

.tp-contact-socials a:hover[b-gb7psqy81i] {
    background: rgba(255, 255, 255, 0.16);
    border-color: rgba(255, 255, 255, 0.55);
    color: #fff;
}
