/* /Components/Layout/MainLayout.razor.rz.scp.css */
.page[b-tmb693hlwx] {
    position: relative;
    display: flex;
    flex-direction: column;
}

main[b-tmb693hlwx] {
    flex: 1;
}

.sidebar[b-tmb693hlwx] {
    background-image: linear-gradient(180deg, rgb(5, 39, 103) 0%, #3a0647 70%);
}

.top-row[b-tmb693hlwx] {
    background-color: #f7f7f7;
    border-bottom: 1px solid #d6d5d5;
    justify-content: flex-end;
    height: 3.5rem;
    display: flex;
    align-items: center;
}

    .top-row[b-tmb693hlwx]  a, .top-row[b-tmb693hlwx]  .btn-link {
        white-space: nowrap;
        margin-left: 1.5rem;
        text-decoration: none;
    }

    .top-row[b-tmb693hlwx]  a:hover, .top-row[b-tmb693hlwx]  .btn-link:hover {
        text-decoration: underline;
    }

    .top-row[b-tmb693hlwx]  a:first-child {
        overflow: hidden;
        text-overflow: ellipsis;
    }

@media (max-width: 640.98px) {
    .top-row[b-tmb693hlwx] {
        justify-content: space-between;
    }

    .top-row[b-tmb693hlwx]  a, .top-row[b-tmb693hlwx]  .btn-link {
        margin-left: 0;
    }
}

@media (min-width: 641px) {
    .page[b-tmb693hlwx] {
        flex-direction: row;
    }

    .sidebar[b-tmb693hlwx] {
        width: 250px;
        height: 100vh;
        position: sticky;
        top: 0;
    }

    .top-row[b-tmb693hlwx] {
        position: sticky;
        top: 0;
        z-index: 1;
    }

    .top-row.auth[b-tmb693hlwx]  a:first-child {
        flex: 1;
        text-align: right;
        width: 0;
    }

    .top-row[b-tmb693hlwx], article[b-tmb693hlwx] {
        padding-left: 2rem !important;
        padding-right: 1.5rem !important;
    }
}

#blazor-error-ui[b-tmb693hlwx] {
    color-scheme: light only;
    background: lightyellow;
    bottom: 0;
    box-shadow: 0 -1px 2px rgba(0, 0, 0, 0.2);
    box-sizing: border-box;
    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-tmb693hlwx] {
        cursor: pointer;
        position: absolute;
        right: 0.75rem;
        top: 0.5rem;
    }
/* /Components/Layout/NavMenu.razor.rz.scp.css */
.navbar-toggler[b-yf9c35780c] {
    appearance: none;
    cursor: pointer;
    width: 3.5rem;
    height: 2.5rem;
    color: white;
    position: absolute;
    top: 0.5rem;
    right: 1rem;
    border: 1px solid rgba(255, 255, 255, 0.1);
    background: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 30 30'%3e%3cpath stroke='rgba%28255, 255, 255, 0.55%29' stroke-linecap='round' stroke-miterlimit='10' stroke-width='2' d='M4 7h22M4 15h22M4 23h22'/%3e%3c/svg%3e") no-repeat center/1.75rem rgba(255, 255, 255, 0.1);
}

.navbar-toggler:checked[b-yf9c35780c] {
    background-color: rgba(255, 255, 255, 0.5);
}

.top-row[b-yf9c35780c] {
    min-height: 3.5rem;
    background-color: rgba(0,0,0,0.4);
}

.navbar-brand[b-yf9c35780c] {
    font-size: 1.1rem;
}

.bi[b-yf9c35780c] {
    display: inline-block;
    position: relative;
    width: 1.25rem;
    height: 1.25rem;
    margin-right: 0.75rem;
    top: -1px;
    background-size: cover;
}

.bi-house-door-fill-nav-menu[b-yf9c35780c] {
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' fill='white' class='bi bi-house-door-fill' viewBox='0 0 16 16'%3E%3Cpath d='M6.5 14.5v-3.505c0-.245.25-.495.5-.495h2c.25 0 .5.25.5.5v3.5a.5.5 0 0 0 .5.5h4a.5.5 0 0 0 .5-.5v-7a.5.5 0 0 0-.146-.354L13 5.793V2.5a.5.5 0 0 0-.5-.5h-1a.5.5 0 0 0-.5.5v1.293L8.354 1.146a.5.5 0 0 0-.708 0l-6 6A.5.5 0 0 0 1.5 7.5v7a.5.5 0 0 0 .5.5h4a.5.5 0 0 0 .5-.5Z'/%3E%3C/svg%3E");
}

.bi-plus-square-fill-nav-menu[b-yf9c35780c] {
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' fill='white' class='bi bi-plus-square-fill' viewBox='0 0 16 16'%3E%3Cpath d='M2 0a2 2 0 0 0-2 2v12a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V2a2 2 0 0 0-2-2H2zm6.5 4.5v3h3a.5.5 0 0 1 0 1h-3v3a.5.5 0 0 1-1 0v-3h-3a.5.5 0 0 1 0-1h3v-3a.5.5 0 0 1 1 0z'/%3E%3C/svg%3E");
}

.bi-list-nested-nav-menu[b-yf9c35780c] {
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' fill='white' class='bi bi-list-nested' viewBox='0 0 16 16'%3E%3Cpath fill-rule='evenodd' d='M4.5 11.5A.5.5 0 0 1 5 11h10a.5.5 0 0 1 0 1H5a.5.5 0 0 1-.5-.5zm-2-4A.5.5 0 0 1 3 7h10a.5.5 0 0 1 0 1H3a.5.5 0 0 1-.5-.5zm-2-4A.5.5 0 0 1 1 3h10a.5.5 0 0 1 0 1H1a.5.5 0 0 1-.5-.5z'/%3E%3C/svg%3E");
}

.nav-item[b-yf9c35780c] {
    font-size: 0.9rem;
    padding-bottom: 0.5rem;
}

    .nav-item:first-of-type[b-yf9c35780c] {
        padding-top: 1rem;
    }

    .nav-item:last-of-type[b-yf9c35780c] {
        padding-bottom: 1rem;
    }

    .nav-item[b-yf9c35780c]  .nav-link {
        color: #d7d7d7;
        background: none;
        border: none;
        border-radius: 4px;
        height: 3rem;
        display: flex;
        align-items: center;
        line-height: 3rem;
        width: 100%;
    }

.nav-item[b-yf9c35780c]  a.active {
    background-color: rgba(255,255,255,0.37);
    color: white;
}

.nav-item[b-yf9c35780c]  .nav-link:hover {
    background-color: rgba(255,255,255,0.1);
    color: white;
}

.nav-scrollable[b-yf9c35780c] {
    display: none;
}

.navbar-toggler:checked ~ .nav-scrollable[b-yf9c35780c] {
    display: block;
}

@media (min-width: 641px) {
    .navbar-toggler[b-yf9c35780c] {
        display: none;
    }

    .nav-scrollable[b-yf9c35780c] {
        /* Never collapse the sidebar for wide screens */
        display: block;

        /* Allow sidebar to scroll for tall menus */
        height: calc(100vh - 3.5rem);
        overflow-y: auto;
    }
}
/* /Components/Layout/ReconnectModal.razor.rz.scp.css */
.components-reconnect-first-attempt-visible[b-vu85cowfbz],
.components-reconnect-repeated-attempt-visible[b-vu85cowfbz],
.components-reconnect-failed-visible[b-vu85cowfbz],
.components-pause-visible[b-vu85cowfbz],
.components-resume-failed-visible[b-vu85cowfbz],
.components-rejoining-animation[b-vu85cowfbz] {
    display: none;
}

#components-reconnect-modal.components-reconnect-show .components-reconnect-first-attempt-visible[b-vu85cowfbz],
#components-reconnect-modal.components-reconnect-show .components-rejoining-animation[b-vu85cowfbz],
#components-reconnect-modal.components-reconnect-paused .components-pause-visible[b-vu85cowfbz],
#components-reconnect-modal.components-reconnect-resume-failed .components-resume-failed-visible[b-vu85cowfbz],
#components-reconnect-modal.components-reconnect-retrying[b-vu85cowfbz],
#components-reconnect-modal.components-reconnect-retrying .components-reconnect-repeated-attempt-visible[b-vu85cowfbz],
#components-reconnect-modal.components-reconnect-retrying .components-rejoining-animation[b-vu85cowfbz],
#components-reconnect-modal.components-reconnect-failed[b-vu85cowfbz],
#components-reconnect-modal.components-reconnect-failed .components-reconnect-failed-visible[b-vu85cowfbz] {
    display: block;
}


#components-reconnect-modal[b-vu85cowfbz] {
    background-color: white;
    width: 20rem;
    margin: 20vh auto;
    padding: 2rem;
    border: 0;
    border-radius: 0.5rem;
    box-shadow: 0 3px 6px 2px rgba(0, 0, 0, 0.3);
    opacity: 0;
    transition: display 0.5s allow-discrete, overlay 0.5s allow-discrete;
    animation: components-reconnect-modal-fadeOutOpacity-b-vu85cowfbz 0.5s both;
    &[open]

{
    animation: components-reconnect-modal-slideUp-b-vu85cowfbz 1.5s cubic-bezier(.05, .89, .25, 1.02) 0.3s, components-reconnect-modal-fadeInOpacity-b-vu85cowfbz 0.5s ease-in-out 0.3s;
    animation-fill-mode: both;
}

}

#components-reconnect-modal[b-vu85cowfbz]::backdrop {
    background-color: rgba(0, 0, 0, 0.4);
    animation: components-reconnect-modal-fadeInOpacity-b-vu85cowfbz 0.5s ease-in-out;
    opacity: 1;
}

@keyframes components-reconnect-modal-slideUp-b-vu85cowfbz {
    0% {
        transform: translateY(30px) scale(0.95);
    }

    100% {
        transform: translateY(0);
    }
}

@keyframes components-reconnect-modal-fadeInOpacity-b-vu85cowfbz {
    0% {
        opacity: 0;
    }

    100% {
        opacity: 1;
    }
}

@keyframes components-reconnect-modal-fadeOutOpacity-b-vu85cowfbz {
    0% {
        opacity: 1;
    }

    100% {
        opacity: 0;
    }
}

.components-reconnect-container[b-vu85cowfbz] {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 1rem;
}

#components-reconnect-modal p[b-vu85cowfbz] {
    margin: 0;
    text-align: center;
}

#components-reconnect-modal button[b-vu85cowfbz] {
    border: 0;
    background-color: #6b9ed2;
    color: white;
    padding: 4px 24px;
    border-radius: 4px;
}

    #components-reconnect-modal button:hover[b-vu85cowfbz] {
        background-color: #3b6ea2;
    }

    #components-reconnect-modal button:active[b-vu85cowfbz] {
        background-color: #6b9ed2;
    }

.components-rejoining-animation[b-vu85cowfbz] {
    position: relative;
    width: 80px;
    height: 80px;
}

    .components-rejoining-animation div[b-vu85cowfbz] {
        position: absolute;
        border: 3px solid #0087ff;
        opacity: 1;
        border-radius: 50%;
        animation: components-rejoining-animation-b-vu85cowfbz 1.5s cubic-bezier(0, 0.2, 0.8, 1) infinite;
    }

        .components-rejoining-animation div:nth-child(2)[b-vu85cowfbz] {
            animation-delay: -0.5s;
        }

@keyframes components-rejoining-animation-b-vu85cowfbz {
    0% {
        top: 40px;
        left: 40px;
        width: 0;
        height: 0;
        opacity: 0;
    }

    4.9% {
        top: 40px;
        left: 40px;
        width: 0;
        height: 0;
        opacity: 0;
    }

    5% {
        top: 40px;
        left: 40px;
        width: 0;
        height: 0;
        opacity: 1;
    }

    100% {
        top: 0px;
        left: 0px;
        width: 80px;
        height: 80px;
        opacity: 0;
    }
}
/* /Components/Layout/SupervisorLayout.razor.rz.scp.css */
/*
 * SupervisorLayout.razor.css
 * Scoped styles for the platform admin supervisor layout.
 * Reuses design tokens from authenticated-shell.css.
 */

.supervisor-shell[b-pbvsv1i1fh] {
    --accent-link:       #c0392b;
    --accent-link-hover: #a93226;
}

.supervisor-sidebar[b-pbvsv1i1fh] {
    background: linear-gradient(180deg, #1a1a2e 0%, #16213e 100%);
}

.supervisor-sidebar .sidebar-brand-logo[b-pbvsv1i1fh] {
    filter: brightness(0) invert(1);
    opacity: 0.90;
}

.supervisor-portal-badge[b-pbvsv1i1fh] {
    padding: 6px 16px 10px;
    border-bottom: 1px solid rgba(255, 255, 255, 0.10);
    margin-bottom: 8px;
}

.supervisor-portal-label[b-pbvsv1i1fh] {
    font-size: 0.68rem;
    font-weight: 700;
    letter-spacing: 0.12em;
    text-transform: uppercase;
    color: rgba(255, 255, 255, 0.50);
}

.supervisor-sidebar .sidebar-link[b-pbvsv1i1fh] {
    color: rgba(255, 255, 255, 0.75);
}

.supervisor-sidebar .sidebar-link:hover[b-pbvsv1i1fh],
.supervisor-sidebar .sidebar-link.active[b-pbvsv1i1fh] {
    color: #ffffff;
    background: rgba(255, 255, 255, 0.10);
}

.supervisor-sidebar-footer[b-pbvsv1i1fh] {
    margin-top: auto;
    padding: 12px 0 8px;
    border-top: 1px solid rgba(255, 255, 255, 0.08);
}

/* Back navigation link for supervisor detail pages */
.supervisor-back-link[b-pbvsv1i1fh] {
    display: inline-flex;
    align-items: center;
    gap: 0.25rem;
    font-size: 0.82rem;
    font-weight: 500;
    color: var(--accent-link, #c0392b);
    text-decoration: none;
    margin-bottom: 0.5rem;
}

.supervisor-back-link:hover[b-pbvsv1i1fh] {
    text-decoration: underline;
    color: var(--accent-link-hover, #a93226);
}

.supervisor-sidebar-footer .sidebar-link[b-pbvsv1i1fh] {
    color: rgba(255, 255, 255, 0.45);
    font-size: 0.82rem;
}

.supervisor-sidebar-footer .sidebar-link:hover[b-pbvsv1i1fh] {
    color: rgba(255, 255, 255, 0.80);
    background: transparent;
}

/* Access denied page */
.supervisor-access-denied[b-pbvsv1i1fh] {
    min-height: 100vh;
    display: flex;
    align-items: center;
    justify-content: center;
    background: var(--surface-subtle, #f2f5f8);
    padding: 24px;
}

.supervisor-access-denied-card[b-pbvsv1i1fh] {
    max-width: 400px;
    width: 100%;
    padding: 40px 32px;
    text-align: center;
    border-radius: var(--radius-lg, 14px);
    box-shadow: var(--shadow-md, 0 3px 10px rgba(0,0,0,0.09));
}

.supervisor-access-denied-icon[b-pbvsv1i1fh] {
    font-size: 2.5rem;
    margin-bottom: 16px;
}
/* /Components/Pages/CompanyAssociationDetailPage.razor.rz.scp.css */
.assoc-back-link[b-d4gkktbyjc] {
    text-decoration: none;
    font-size: 0.875rem;
}

.assoc-back-link:hover[b-d4gkktbyjc] {
    text-decoration: underline;
}

.assoc-detail-logo[b-d4gkktbyjc] {
    width: 96px;
    height: 96px;
    object-fit: cover;
    border-radius: 0.75rem;
    box-shadow: 0 2px 8px rgba(0,0,0,0.10);
    flex-shrink: 0;
}

.assoc-detail-logo-placeholder[b-d4gkktbyjc] {
    width: 96px;
    height: 96px;
    border-radius: 0.75rem;
    background: linear-gradient(135deg, #4a90d9 0%, #2563eb 100%);
    color: #fff;
    font-size: 1.75rem;
    font-weight: 700;
    display: flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
    letter-spacing: 0.05em;
}

.assoc-detail-logo-skeleton[b-d4gkktbyjc] {
    width: 96px;
    height: 96px;
    border-radius: 0.75rem;
    background-color: var(--bs-secondary-bg, #e9ecef);
    flex-shrink: 0;
}

.assoc-detail-address[b-d4gkktbyjc] {
    color: var(--bs-body-secondary-color, #6c757d);
    line-height: 1.7;
    font-style: normal;
}

@media (max-width: 575.98px) {
    .assoc-detail-logo[b-d4gkktbyjc],
    .assoc-detail-logo-placeholder[b-d4gkktbyjc],
    .assoc-detail-logo-skeleton[b-d4gkktbyjc] {
        width: 64px;
        height: 64px;
        font-size: 1.25rem;
    }
}
/* /Components/Pages/CompanyAssociationDiscoveryPage.razor.rz.scp.css */
.association-search-bar[b-o7ubdc6pfk] {
    border: 1px solid var(--border-subtle, #e5eaef);
}

.association-search-bar .form-label[b-o7ubdc6pfk] {
    margin-bottom: 0.25rem;
}

/* Card grid */
.associations-results-section[b-o7ubdc6pfk] {
    /* intentional: no extra wrapper styles, inherits app-page spacing */
}

.associations-results-header[b-o7ubdc6pfk] {
    min-height: 1.5rem;
}

/* Association card */
.association-card[b-o7ubdc6pfk] {
    cursor: pointer;
    border: 1px solid var(--border-subtle, #e5eaef);
    border-radius: var(--radius-lg, 0.75rem);
    box-shadow: var(--shadow-sm, 0 1px 4px rgba(0, 0, 0, 0.06));
    transition: border-color 0.18s ease, box-shadow 0.18s ease, transform 0.18s ease;
}

.association-card:hover[b-o7ubdc6pfk],
.association-card:focus-within[b-o7ubdc6pfk] {
    border-color: #7cb5ff;
    box-shadow: 0 8px 20px rgba(13, 110, 253, 0.12);
    transform: translateY(-2px);
}

.association-card:focus-visible[b-o7ubdc6pfk] {
    outline: 2px solid #0d6efd;
    outline-offset: 2px;
}

/* Logo */
.assoc-card-logo[b-o7ubdc6pfk] {
    width: 48px;
    height: 48px;
    object-fit: cover;
    border-radius: 0.5rem;
    flex-shrink: 0;
    border: 1px solid var(--border-subtle, #e5eaef);
}

.assoc-card-logo-placeholder[b-o7ubdc6pfk] {
    width: 48px;
    height: 48px;
    flex-shrink: 0;
    border-radius: 0.5rem;
    background: linear-gradient(135deg, #e8f0fe 0%, #c5d8ff 100%);
    color: #1a56db;
    font-size: 0.85rem;
    font-weight: 700;
    display: flex;
    align-items: center;
    justify-content: center;
    user-select: none;
}

.assoc-card-name[b-o7ubdc6pfk] {
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.assoc-card-location[b-o7ubdc6pfk] {
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.assoc-card-description[b-o7ubdc6pfk] {
    display: -webkit-box;
    -webkit-line-clamp: 3;
    -webkit-box-orient: vertical;
    overflow: hidden;
    line-height: 1.5;
    flex-grow: 1;
}

/* Empty state */
.associations-empty-state[b-o7ubdc6pfk] {
    border: 1px dashed var(--border-subtle, #d6dee6);
    border-radius: 0.75rem;
    padding: 2.5rem 1rem;
    background: #fbfdff;
}

.assoc-empty-icon[b-o7ubdc6pfk] {
    font-size: 2.5rem;
    line-height: 1;
}

/* Skeleton loading */
.association-card-skeleton[b-o7ubdc6pfk] {
    border: 1px solid var(--border-subtle, #e5eaef);
    border-radius: var(--radius-lg, 0.75rem);
}

.association-card-skeleton .card-body[b-o7ubdc6pfk] {
    animation: assocSkeletonPulse-b-o7ubdc6pfk 1.25s ease-in-out infinite;
}

.assoc-logo-skeleton[b-o7ubdc6pfk] {
    width: 48px;
    height: 48px;
    flex-shrink: 0;
    border-radius: 0.5rem;
    background: #e9edf3;
}

@keyframes assocSkeletonPulse-b-o7ubdc6pfk {
    0% {
        opacity: 1;
    }

    50% {
        opacity: 0.5;
    }

    100% {
        opacity: 1;
    }
}

.placeholder[b-o7ubdc6pfk] {
    background-color: #e9edf3;
    border-radius: 0.25rem;
    height: 0.85em;
    display: inline-block;
}

/* Utility */
.min-w-0[b-o7ubdc6pfk] {
    min-width: 0;
}

/* Mobile */
@media (max-width: 575.98px) {
    .association-search-bar .card-body[b-o7ubdc6pfk] {
        padding: 0.75rem;
    }

    .associations-empty-state[b-o7ubdc6pfk] {
        padding: 1.5rem 0.75rem;
    }
}
/* /Components/Pages/CompanyEventSearchPage.razor.rz.scp.css */
.events-discovery-search[b-qumk0y1jmt] {
    border: 1px solid var(--border-subtle, #e5eaef);
}

.events-discovery-layout[b-qumk0y1jmt] {
    min-height: auto;
}

.events-discovery-col[b-qumk0y1jmt] {
    display: flex;
}

.events-map-panel[b-qumk0y1jmt],
.events-results-panel[b-qumk0y1jmt] {
    border: 1px solid var(--border-subtle, #e5eaef);
    border-radius: var(--radius-lg, 0.75rem);
    box-shadow: var(--shadow-sm, 0 1px 4px rgba(0,0,0,0.06));
    overflow: hidden;
    min-height: 0;
    width: 100%;
}

.events-map-panel[b-qumk0y1jmt] {
    flex: 1 1 60%;
    min-width: 0;
    display: grid;
    grid-template-rows: auto minmax(0, 1fr);
}

.events-results-panel[b-qumk0y1jmt] {
    flex: 1 1 40%;
    min-width: 0;
    display: grid;
    grid-template-rows: auto minmax(0, 1fr);
}

.events-discovery-header[b-qumk0y1jmt] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 0.75rem;
    padding: 0.65rem 0.85rem;
    border-bottom: 1px solid var(--border-subtle, #e5eaef);
    background: linear-gradient(180deg, #fafcff 0%, #ffffff 100%);
}

.events-discovery-header-map[b-qumk0y1jmt] {
    justify-content: flex-end;
    min-height: 2.75rem;
}

.events-map[b-qumk0y1jmt] {
    width: 100%;
    min-height: 360px;
    height: 100%;
    border-radius: 0;
    border: 0;
    overflow: hidden;
}

.events-results-list[b-qumk0y1jmt] {
    overflow-y: auto;
    min-height: 0;
    padding: 0.9rem;
    display: grid;
    gap: 0.85rem;
}

.events-empty-state[b-qumk0y1jmt] {
    border: 1px dashed var(--border-subtle, #d6dee6);
    border-radius: 0.75rem;
    padding: 1rem;
    background: #fbfdff;
}

.discovery-event-card[b-qumk0y1jmt] {
    cursor: pointer;
    transition: border-color 0.18s ease, box-shadow 0.18s ease, transform 0.18s ease;
}

.discovery-event-card:hover[b-qumk0y1jmt],
.discovery-event-card.is-hovered[b-qumk0y1jmt] {
    border-color: var(--bs-primary, #7c3aed);
    box-shadow: 0 8px 20px rgba(124, 58, 237, 0.12);
    transform: translateY(-1px);
}

.discovery-event-card.is-selected[b-qumk0y1jmt] {
    border-color: var(--bs-primary, #5c1a9a);
    box-shadow: 0 10px 24px rgba(92, 26, 154, 0.16);
}

.discovery-event-card:focus-visible[b-qumk0y1jmt] {
    outline: 2px solid var(--bs-primary, #6d28d9);
    outline-offset: 1px;
}

.events-card-skeleton[b-qumk0y1jmt] {
    height: 150px;
    border-radius: 0.75rem;
    border: 1px solid var(--border-subtle, #e5eaef);
    background: linear-gradient(100deg, #f3f5f8 20%, #e9edf3 40%, #f3f5f8 60%);
    background-size: 200% 100%;
    animation: companyEventsSkeletonPulse-b-qumk0y1jmt 1.25s ease-in-out infinite;
}

@keyframes companyEventsSkeletonPulse-b-qumk0y1jmt {
    0% {
        background-position: 200% 0;
    }

    100% {
        background-position: -200% 0;
    }
}

@media (max-width: 1199.98px) {
    .events-discovery-layout[b-qumk0y1jmt] {
        min-height: auto;
    }
}

@media (min-width: 992px) {
    .events-discovery-layout[b-qumk0y1jmt] {
        height: clamp(620px, calc(100vh - 170px), 920px);
    }

    .events-map-panel[b-qumk0y1jmt],
    .events-results-panel[b-qumk0y1jmt] {
        height: 100%;
    }
}

@media (max-width: 991.98px) {
    .events-map-panel[b-qumk0y1jmt] {
        min-height: 360px;
    }

    .events-results-panel[b-qumk0y1jmt] {
        max-height: none;
    }

    .events-results-list[b-qumk0y1jmt] {
        max-height: none;
        overflow: visible;
    }
}

@media (max-width: 575.98px) {
    .events-map[b-qumk0y1jmt] {
        min-height: 260px;
    }

    .events-discovery-header[b-qumk0y1jmt] {
        padding: 0.75rem;
    }

    .events-results-list[b-qumk0y1jmt] {
        padding: 0.75rem;
    }
}
/* /Components/Pages/CompanyImpactPage.razor.rz.scp.css */
.kpi-value[b-8tg9etc6r0] {
    font-size: 2rem;
    font-weight: 700;
    line-height: 1.1;
    color: var(--bs-primary);
}

.kpi-label[b-8tg9etc6r0] {
    font-size: 0.8rem;
    color: var(--bs-secondary);
    margin-top: 0.25rem;
}

.chart-title[b-8tg9etc6r0] {
    font-size: 1rem;
    font-weight: 600;
    margin-bottom: 0;
}

/* Bar chart */
.monthly-chart[b-8tg9etc6r0] {
    display: flex;
    align-items: flex-end;
    gap: 6px;
    height: 140px;
    padding-bottom: 1.5rem;
    border-bottom: 1px solid var(--bs-border-color);
}

.monthly-bar-group[b-8tg9etc6r0] {
    flex: 1;
    display: flex;
    flex-direction: column;
    align-items: center;
    height: 100%;
}

.monthly-bar-wrap[b-8tg9etc6r0] {
    flex: 1;
    width: 100%;
    display: flex;
    align-items: flex-end;
}

.monthly-bar[b-8tg9etc6r0] {
    width: 100%;
    background-color: var(--bs-primary);
    border-radius: 3px 3px 0 0;
    min-height: 4px;
    transition: height 0.3s ease;
}

.monthly-label[b-8tg9etc6r0] {
    font-size: 0.7rem;
    color: var(--bs-secondary);
    margin-top: 4px;
    text-align: center;
}

/* Avatar placeholder */
.contributor-avatar[b-8tg9etc6r0] {
    object-fit: cover;
}

.contributor-avatar-placeholder[b-8tg9etc6r0] {
    width: 32px;
    height: 32px;
    background-color: var(--bs-primary-bg-subtle);
    color: var(--bs-primary);
    font-size: 0.85rem;
    font-weight: 600;
    flex-shrink: 0;
}
/* /Components/Pages/CompanyRecognitionPointsPage.razor.rz.scp.css */
.kpi-value[b-ndd19isdin] {
    font-size: 2rem;
    font-weight: 700;
}
/* /Components/Pages/CompanySubscriptionPage.razor.rz.scp.css */
.current-plan-card[b-hl62yhzo3e] {
    border-left: 4px solid var(--bs-primary);
}

.plan-card[b-hl62yhzo3e] {
    border: 1px solid var(--bs-border-color);
    border-radius: 0.5rem;
    transition: box-shadow 0.15s ease;
}

.plan-card:hover[b-hl62yhzo3e] {
    box-shadow: 0 2px 8px rgba(0, 0, 0, 0.1);
}

.plan-card--current[b-hl62yhzo3e] {
    border-color: var(--bs-primary);
    background-color: var(--bs-primary-bg-subtle, #e7f1ff);
}

.plan-card--upgrade[b-hl62yhzo3e] {
    border-color: var(--bs-success);
}

.feature-list li[b-hl62yhzo3e] {
    display: flex;
    align-items: baseline;
    gap: 0.25rem;
}
/* /Components/Pages/ContactSupport.razor.rz.scp.css */
.contact-support-page[b-9g0o8x1utw] {
    min-height: 100vh;
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 2rem 1rem;
    background-color: #f7f9fc;
}

.support-card[b-9g0o8x1utw] {
    background: #fff;
    border: 1px solid #e5eaef;
    border-radius: 14px;
    box-shadow: 0 3px 10px rgba(0, 0, 0, 0.09), 0 0 2px rgba(0, 0, 0, 0.04);
    padding: 2.5rem 2rem;
    width: 100%;
    max-width: 520px;
    display: flex;
    flex-direction: column;
    gap: 1.5rem;
}

.back-link[b-9g0o8x1utw] {
    font-size: 0.85rem;
    color: #6c7a89;
    text-decoration: none;
    align-self: flex-start;
    transition: color 0.2s ease;
}

.back-link:hover[b-9g0o8x1utw] {
    color: #1a2332;
    text-decoration: underline;
}

.support-title[b-9g0o8x1utw] {
    font-size: 1.6rem;
    font-weight: 700;
    color: #1a2332;
    margin: 0;
    line-height: 1.2;
}

.support-intro[b-9g0o8x1utw] {
    color: #2d3748;
    font-size: 0.97rem;
    line-height: 1.6;
    margin: 0;
}

.version-block[b-9g0o8x1utw] {
    background: #f2f5f8;
    border: 1px solid #e5eaef;
    border-radius: 8px;
    padding: 0.875rem 1rem;
    display: flex;
    flex-direction: column;
    gap: 0.5rem;
}

.version-row[b-9g0o8x1utw] {
    display: flex;
    flex-wrap: wrap;
    align-items: baseline;
    gap: 0.4rem;
}

.version-label[b-9g0o8x1utw] {
    font-size: 0.78rem;
    font-weight: 600;
    color: #6c7a89;
    text-transform: uppercase;
    letter-spacing: 0.04em;
    white-space: nowrap;
}

.version-label[b-9g0o8x1utw]::after {
    content: ':';
}

.version-value[b-9g0o8x1utw] {
    font-size: 0.88rem;
    font-weight: 500;
    color: #1a2332;
    font-family: ui-monospace, 'Cascadia Code', 'Source Code Pro', monospace;
    word-break: break-all;
}

.actions-row[b-9g0o8x1utw] {
    display: flex;
    flex-wrap: wrap;
    gap: 0.75rem;
}

.btn-action[b-9g0o8x1utw] {
    flex: 1;
    min-width: 160px;
    text-align: center;
    border-radius: 8px;
    font-weight: 600;
    padding: 0.625rem 1.25rem;
    font-size: 0.93rem;
    transition: transform 0.15s ease, box-shadow 0.15s ease;
}

.btn-action:hover[b-9g0o8x1utw] {
    transform: translateY(-1px);
    box-shadow: 0 4px 14px rgba(0, 0, 0, 0.10);
}

.helper-text[b-9g0o8x1utw] {
    font-size: 0.8rem;
    color: #8a95a3;
    line-height: 1.5;
    margin: 0;
    padding-top: 0.25rem;
    border-top: 1px solid #e5eaef;
}

@media (max-width: 480px) {
    .support-card[b-9g0o8x1utw] {
        padding: 1.75rem 1.25rem;
        border-radius: 10px;
    }

    .support-title[b-9g0o8x1utw] {
        font-size: 1.35rem;
    }

    .btn-action[b-9g0o8x1utw] {
        flex: 1 1 100%;
    }
}
/* /Components/Pages/EventDetails.razor.rz.scp.css */
.event-details-layout[b-oynqemyw15] {
    display: grid;
    gap: 1.25rem;
}

.event-details-tabs[b-oynqemyw15] {
    display: flex;
    gap: 0.25rem;
    border-bottom: 2px solid var(--color-border, #e5e7eb);
    padding-bottom: 0;
}

.event-tab-btn[b-oynqemyw15] {
    background: none;
    border: none;
    border-bottom: 2px solid transparent;
    margin-bottom: -2px;
    padding: 0.625rem 1.25rem;
    font-size: 0.9375rem;
    font-weight: 500;
    color: var(--color-text-muted, #6b7280);
    cursor: pointer;
    transition: color 0.15s, border-color 0.15s;
    border-radius: 0;
}

.event-tab-btn:hover[b-oynqemyw15] {
    color: var(--color-text, #111827);
}

.event-tab-btn.active[b-oynqemyw15] {
    color: var(--color-primary, #2563eb);
    border-bottom-color: var(--color-primary, #2563eb);
    font-weight: 600;
}

.event-details-content[b-oynqemyw15] {
    margin-inline: 0;
    gap: 18px;
}

.event-details-main-column[b-oynqemyw15] {
    min-width: 0;
}

.event-details-column[b-oynqemyw15] {
    display: grid;
    gap: 1rem;
    align-content: start;
}

[b-oynqemyw15] .event-details-card {
    padding: 0.9rem;
    border: 1px solid var(--border-subtle, #e6ebf0);
    border-radius: var(--radius-md);
    box-shadow: var(--shadow-sm);
    background: var(--surface-card, #fff);
}

[b-oynqemyw15] .event-card-header {
    margin-bottom: 0.7rem;
}

[b-oynqemyw15] .event-card-header .h5 {
    font-size: 0.92rem;
    font-weight: 700;
    line-height: 1.3;
    color: var(--text-heading);
}

.event-details-page .activity-feed-sidebar[b-oynqemyw15]  .event-details-card {
    background: var(--surface-widget, #f4f7fb);
    border: 1px solid var(--border-subtle, #e6ebf0);
    border-radius: var(--radius-md);
    box-shadow: var(--shadow-sm);
    padding: 14px 16px;
}

.event-details-page .activity-feed-sidebar[b-oynqemyw15]  .event-card-header {
    margin-bottom: 10px;
}

.event-details-page .activity-feed-sidebar[b-oynqemyw15]  .event-card-header .h5 {
    font-size: 0.92rem;
    font-weight: 700;
    line-height: 1.3;
    color: var(--text-heading);
}

[b-oynqemyw15] .event-quick-grid,
[b-oynqemyw15] .event-social-grid {
    display: grid;
    gap: 0.75rem;
}

[b-oynqemyw15] .event-quick-item,
[b-oynqemyw15] .event-social-item {
    padding: 8px 10px;
    border-radius: var(--radius-sm);
    border: 1px solid var(--border-subtle, #e6ebf0);
    background: var(--surface-card-muted, #f7f9fc);
    display: grid;
    gap: 0.2rem;
}

.event-details-page .activity-feed-sidebar[b-oynqemyw15]  .event-quick-item,
.event-details-page .activity-feed-sidebar[b-oynqemyw15]  .event-social-item {
    background: var(--surface-subtle, #f5f8fb);
}

[b-oynqemyw15] .event-meta-label {
    font-size: 0.76rem;
    color: var(--text-muted, #6c7b8c);
    line-height: 1.3;
}

[b-oynqemyw15] .event-meta-value {
    color: var(--text-heading, #243447);
    font-size: 0.84rem;
    line-height: 1.35;
}

[b-oynqemyw15] .event-stat-value {
    font-size: 1.08rem;
    line-height: 1.3;
    font-weight: 700;
    color: var(--text-heading, #243447);
}

[b-oynqemyw15] .event-description {
    line-height: 1.5;
    font-size: 0.88rem;
    color: var(--text-body, #4f5b66);
}

[b-oynqemyw15] .event-location-card {
    overflow: hidden;
}

[b-oynqemyw15] .event-location-map {
    width: 100%;
    min-height: 300px;
    height: 320px;
    border-radius: var(--radius-sm);
    border: 1px solid var(--border-subtle, #dce3ea);
    box-shadow: none;
    margin-bottom: 0.75rem;
}

[b-oynqemyw15] .event-location-map .leaflet-control-zoom a {
    color: #154887;
}

[b-oynqemyw15] .event-list-section {
    margin-top: 1rem;
}

[b-oynqemyw15] .event-list-section ul {
    margin-bottom: 0;
}

[b-oynqemyw15] .event-organizer-content {
    display: grid;
    grid-template-columns: auto 1fr;
    gap: 0.75rem;
    align-items: start;
}

[b-oynqemyw15] .event-organizer-logo {
    width: 3rem;
    height: 3rem;
    border-radius: 9999px;
    object-fit: cover;
    border: 1px solid var(--border-subtle, #e5eaef);
}

[b-oynqemyw15] .event-organizer-name {
    font-weight: 700;
    margin-bottom: 0.2rem;
    font-size: 0.92rem;
}

[b-oynqemyw15] .event-organizer-description {
    color: var(--text-body, #243447);
    margin-top: 0.35rem;
    font-size: 0.84rem;
    line-height: 1.4;
}

[b-oynqemyw15] .event-reward-line {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 0.6rem;
}

[b-oynqemyw15] .event-reward-line + .event-reward-line {
    margin-top: 0.55rem;
}

[b-oynqemyw15] .event-address {
    margin: 0;
    color: var(--text-meta, #637382);
    font-size: 0.79rem;
    line-height: 1.35;
}

.event-details-page .activity-feed-sidebar[b-oynqemyw15]  .event-address {
    margin-bottom: 8px;
}

[b-oynqemyw15] .event-loading-grid {
    display: grid;
    gap: 0.8rem;
}

[b-oynqemyw15] .event-skeleton {
    height: 88px;
    border-radius: 0.75rem;
    border: 1px solid var(--border-subtle, #e5eaef);
    background: linear-gradient(100deg, #f3f5f8 20%, #e9edf3 40%, #f3f5f8 60%);
    background-size: 200% 100%;
    animation: eventDetailsSkeletonPulse-b-oynqemyw15 1.25s ease-in-out infinite;
}

@keyframes eventDetailsSkeletonPulse-b-oynqemyw15 {
    0% {
        background-position: 200% 0;
    }

    100% {
        background-position: -200% 0;
    }
}

@media (min-width: 576px) {
    [b-oynqemyw15] .event-quick-grid,
    [b-oynqemyw15] .event-social-grid {
        grid-template-columns: minmax(0, 1fr);
    }
}

@media (max-width: 575.98px) {
    [b-oynqemyw15] .event-details-card {
        padding: 0.85rem;
    }

    [b-oynqemyw15] .event-location-map {
        min-height: 250px;
        height: 260px;
    }
}
/* /Components/Pages/EventHeroCard.razor.rz.scp.css */
.event-hero-card[b-laf8n2rkgp] {
    padding: 1rem;
    border: 1px solid var(--border-subtle, #e6ebf0);
    background: var(--surface-card, #fff);
    box-shadow: var(--shadow-sm);
}

.event-hero-image[b-laf8n2rkgp] {
    width: 100%;
    height: clamp(180px, 24vw, 260px);
    object-fit: cover;
    border-radius: var(--radius-sm, 0.5rem);
    border: 1px solid var(--border-subtle, #e6ebf0);
    margin-bottom: 0.9rem;
}

.event-hero-header[b-laf8n2rkgp] {
    display: grid;
    gap: 0.75rem;
    align-items: start;
}

.event-hero-top-row[b-laf8n2rkgp] {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 10px;
}

.event-back-link[b-laf8n2rkgp] {
    display: inline-flex;
    align-items: center;
    gap: 0.25rem;
    font-size: 0.82rem;
    font-weight: 500;
    color: var(--accent-link, #0d6efd);
    text-decoration: none;
    padding: 0.1rem 0;
}

.event-back-link:hover[b-laf8n2rkgp] {
    text-decoration: underline;
}

.event-title[b-laf8n2rkgp] {
    margin: 0;
    font-size: 1.25rem;
    font-weight: 700;
    letter-spacing: -0.01em;
    line-height: 1.3;
    color: var(--text-heading);
}

.event-hook[b-laf8n2rkgp] {
    color: var(--text-body-secondary, #4f5b66);
    font-size: 0.88rem;
    line-height: 1.5;
    max-width: 70ch;
}

.event-hero-end[b-laf8n2rkgp] {
    display: flex;
    justify-content: flex-end;
    align-items: flex-start;
    gap: 0.5rem;
}

.event-primary-action[b-laf8n2rkgp] {
    min-width: 10.5rem;
    font-weight: 600;
    box-shadow: none;
}

.event-hero-content[b-laf8n2rkgp] {
    display: grid;
    gap: 0.45rem;
    justify-items: start;
}

.event-primary-action:focus-visible[b-laf8n2rkgp],
.event-status-badge:focus-visible[b-laf8n2rkgp] {
    outline: 2px solid var(--bs-primary);
    outline-offset: 2px;
}

.event-breadcrumb[b-laf8n2rkgp] {
    font-size: 0.8rem;
    color: var(--text-meta, #637382);
}

.event-status-badge[b-laf8n2rkgp] {
    letter-spacing: 0.02em;
}

@media (min-width: 992px) {
    .event-hero-end[b-laf8n2rkgp] {
        justify-content: flex-end;
        text-align: right;
    }
}
/* /Components/Pages/Events.razor.rz.scp.css */
.event-form[b-kywpqfyj1p] {
    max-height: min(70vh, 900px);
    overflow-y: auto;
}

.event-create-tabs[b-kywpqfyj1p] {
    display: flex;
    flex-wrap: wrap;
    gap: 0.5rem;
    margin-bottom: 1rem;
    border-bottom: 1px solid #e9ecef;
}

.event-create-tab[b-kywpqfyj1p] {
    border: 1px solid transparent;
    background: transparent;
    color: #5f6368;
    border-radius: 0.5rem 0.5rem 0 0;
    padding: 10px 14px;
    font-size: 14px;
    font-weight: 500;
    margin-bottom: -1px;
    line-height: 1.2;
    transition: color 0.2s ease, border-color 0.2s ease, background-color 0.2s ease;
}

.event-create-tab:hover[b-kywpqfyj1p] {
    color: #2f3133;
    background-color: #f8f9fa;
    border-color: #e9ecef;
}

.event-create-tab.active[b-kywpqfyj1p] {
    color: var(--bs-primary);
    background: #fff;
    border-color: #e9ecef #e9ecef #fff;
    box-shadow: inset 0 -3px 0 var(--bs-primary);
}

.event-create-tab.completed[b-kywpqfyj1p] {
    color: #2f7a4e;
}

.event-create-step-caption[b-kywpqfyj1p] {
    border-left: 3px solid var(--bs-primary);
    padding-left: 0.6rem;
}

.event-create-progress[b-kywpqfyj1p] {
    width: 100%;
    height: 0.45rem;
    background: var(--bs-secondary-bg);
    border-radius: 9999px;
    overflow: hidden;
}

.event-create-progress-bar[b-kywpqfyj1p] {
    height: 100%;
    background: linear-gradient(90deg, var(--bs-primary), #4f7cff);
    transition: width 0.2s ease;
}

.event-create-step[b-kywpqfyj1p] {
    animation: fadeInStep-b-kywpqfyj1p 0.18s ease-in-out;
}

.create-event-image-preview[b-kywpqfyj1p] {
    width: 100%;
    max-height: 220px;
    object-fit: cover;
}

.create-event-location-map[b-kywpqfyj1p] {
    min-height: 280px;
    height: 280px;
}

@keyframes fadeInStep-b-kywpqfyj1p {
    from {
        opacity: 0;
        transform: translateY(4px);
    }
    to {
        opacity: 1;
        transform: translateY(0);
    }
}

@media (max-width: 767.98px) {
    .event-create-tabs[b-kywpqfyj1p] {
        gap: 0.35rem;
    }

    .event-create-tab[b-kywpqfyj1p] {
        padding: 9px 10px;
        font-size: 13px;
    }
}

.events-header[b-kywpqfyj1p] {
    /* page header spacing handled by .app-page-header in authenticated-shell.css */
}

.events-header h1[b-kywpqfyj1p] {
    /* font-weight handled by .app-page-title in authenticated-shell.css */
}

.events-toolbar .form-control[b-kywpqfyj1p],
.events-toolbar .form-select[b-kywpqfyj1p] {
    min-height: 2.5rem;
}

.events-section-title[b-kywpqfyj1p] {
    font-size: 1.1rem;
    font-weight: 600;
    margin-bottom: 0;
}

.event-card-modern[b-kywpqfyj1p] {
    border-radius: var(--radius-lg, 0.75rem);
    border: 1px solid var(--border-subtle, #e5eaef);
    box-shadow: var(--shadow-sm, 0 1px 4px rgba(0,0,0,0.06));
    background: var(--surface-card, #fff);
}

.event-card-image[b-kywpqfyj1p] {
    max-height: 180px;
    object-fit: cover;
}

.events-progress[b-kywpqfyj1p] {
    height: 0.5rem;
}

.event-form-section[b-kywpqfyj1p] {
    margin-top: 1rem;
    margin-bottom: 0.5rem;
    font-weight: 600;
}

.event-filters .form-label[b-kywpqfyj1p] {
    margin-bottom: 0.25rem;
}

.events-discovery-search[b-kywpqfyj1p] {
    border: 1px solid var(--border-subtle, #e5eaef);
}

.events-discovery-layout[b-kywpqfyj1p] {
    min-height: auto;
}

.events-discovery-col[b-kywpqfyj1p] {
    display: flex;
}

.events-map-panel[b-kywpqfyj1p],
.events-results-panel[b-kywpqfyj1p] {
    border: 1px solid var(--border-subtle, #e5eaef);
    border-radius: var(--radius-lg, 0.75rem);
    box-shadow: var(--shadow-sm, 0 1px 4px rgba(0,0,0,0.06));
    overflow: hidden;
    min-height: 0;
    width: 100%;
}

.events-map-panel[b-kywpqfyj1p] {
    flex: 1 1 60%;
    min-width: 0;
    display: grid;
    grid-template-rows: auto minmax(0, 1fr);
}

.events-results-panel[b-kywpqfyj1p] {
    flex: 1 1 40%;
    min-width: 0;
    display: grid;
    grid-template-rows: auto minmax(0, 1fr);
}

.events-discovery-header[b-kywpqfyj1p] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 0.75rem;
    padding: 0.65rem 0.85rem;
    border-bottom: 1px solid var(--border-subtle, #e5eaef);
    background: linear-gradient(180deg, #fafcff 0%, #ffffff 100%);
}

.events-discovery-header-map[b-kywpqfyj1p] {
    justify-content: flex-end;
    min-height: 2.75rem;
}

.events-map[b-kywpqfyj1p] {
    width: 100%;
    min-height: 360px;
    height: 100%;
    border-radius: 0;
    border: 0;
    overflow: hidden;
}

.events-results-list[b-kywpqfyj1p] {
    overflow-y: auto;
    min-height: 0;
    padding: 0.9rem;
    display: grid;
    gap: 0.85rem;
}

.events-empty-state[b-kywpqfyj1p] {
    border: 1px dashed var(--border-subtle, #d6dee6);
    border-radius: 0.75rem;
    padding: 1rem;
    background: #fbfdff;
}

.discovery-event-card[b-kywpqfyj1p] {
    cursor: pointer;
    transition: border-color 0.18s ease, box-shadow 0.18s ease, transform 0.18s ease;
}

.discovery-event-card:hover[b-kywpqfyj1p],
.discovery-event-card.is-hovered[b-kywpqfyj1p] {
    border-color: #7cb5ff;
    box-shadow: 0 8px 20px rgba(13, 110, 253, 0.12);
    transform: translateY(-1px);
}

.discovery-event-card.is-selected[b-kywpqfyj1p] {
    border-color: #0d6efd;
    box-shadow: 0 10px 24px rgba(13, 110, 253, 0.16);
}

.discovery-event-card:focus-visible[b-kywpqfyj1p] {
    outline: 2px solid #0d6efd;
    outline-offset: 1px;
}

.events-card-skeleton[b-kywpqfyj1p] {
    height: 170px;
    border-radius: 0.75rem;
    border: 1px solid var(--border-subtle, #e5eaef);
    background: linear-gradient(100deg, #f3f5f8 20%, #e9edf3 40%, #f3f5f8 60%);
    background-size: 200% 100%;
    animation: eventsSkeletonPulse-b-kywpqfyj1p 1.25s ease-in-out infinite;
}

@keyframes eventsSkeletonPulse-b-kywpqfyj1p {
    0% {
        background-position: 200% 0;
    }

    100% {
        background-position: -200% 0;
    }
}

@media (max-width: 1199.98px) {
    .events-discovery-layout[b-kywpqfyj1p] {
        min-height: auto;
    }
}

@media (min-width: 992px) {
    .events-discovery-layout[b-kywpqfyj1p] {
        height: clamp(620px, calc(100vh - 170px), 920px);
    }

    .events-map-panel[b-kywpqfyj1p],
    .events-results-panel[b-kywpqfyj1p] {
        height: 100%;
    }
}

@media (max-width: 991.98px) {
    .events-map-panel[b-kywpqfyj1p] {
        min-height: 360px;
    }

    .events-results-panel[b-kywpqfyj1p] {
        max-height: none;
    }

    .events-results-list[b-kywpqfyj1p] {
        max-height: none;
        overflow: visible;
    }
}

@media (max-width: 575.98px) {
    .events-map[b-kywpqfyj1p] {
        min-height: 260px;
    }

    .events-discovery-header[b-kywpqfyj1p] {
        padding: 0.75rem;
    }

    .events-results-list[b-kywpqfyj1p] {
        padding: 0.75rem;
    }
}

.volunteer-request-list[b-kywpqfyj1p] {
    max-height: min(58vh, 560px);
    overflow-y: auto;
}

.volunteer-request-item[b-kywpqfyj1p] {
    background: var(--surface-card, var(--bs-body-bg));
}

.volunteer-avatar-placeholder[b-kywpqfyj1p] {
    width: 2.25rem;
    height: 2.25rem;
    border-radius: 9999px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    background: var(--bs-secondary-bg);
    color: var(--bs-body-color);
    font-size: 0.75rem;
    font-weight: 700;
}

.volunteer-empty-state[b-kywpqfyj1p] {
    background: var(--surface-subtle, var(--bs-secondary-bg));
}

.volunteer-contact-link[b-kywpqfyj1p] {
    word-break: break-word;
}
/* /Components/Pages/EventSidePanel.razor.rz.scp.css */
.event-details-side-column[b-fn26xj8wm3] {
    display: grid;
    gap: 1rem;
}

.event-details-side-panel-inner[b-fn26xj8wm3] {
    display: grid;
    gap: 1rem;
}

@media (min-width: 992px) {
    .event-details-side-column[b-fn26xj8wm3] {
        position: sticky;
        top: 1rem;
        align-self: start;
    }
}
/* /Components/Pages/EventVolunteerInfoTab.razor.rz.scp.css */
.volunteer-info-tab[b-r0ahrpbbxp] {
    display: grid;
    gap: 1rem;
}

.volunteer-info-loading[b-r0ahrpbbxp] {
    display: grid;
    gap: 0.75rem;
}

/* Edit overlay */
.volunteer-msg-edit-overlay[b-r0ahrpbbxp] {
    position: fixed;
    inset: 0;
    background: rgba(0, 0, 0, 0.4);
    z-index: 1000;
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 1rem;
}

.volunteer-msg-edit-panel[b-r0ahrpbbxp] {
    width: 100%;
    max-width: 560px;
    display: grid;
    gap: 0.75rem;
    padding: 1.25rem;
    border-radius: var(--radius-md);
    background: var(--surface-card, #fff);
}

.volunteer-msg-edit-textarea[b-r0ahrpbbxp] {
    resize: vertical;
    min-height: 80px;
}

.volunteer-msg-edit-actions[b-r0ahrpbbxp] {
    display: flex;
    gap: 0.5rem;
    justify-content: flex-end;
}
/* /Components/Pages/EventVolunteerMessageCard.razor.rz.scp.css */
.volunteer-info-card[b-9xin923jii] {
    position: relative;
}

.volunteer-msg-pinned-badge[b-9xin923jii] {
    display: inline-flex;
    align-items: center;
    gap: 0.25rem;
    font-size: 0.75rem;
    font-weight: 600;
    color: var(--color-warning, #b45309);
    background: var(--color-warning-bg, #fef3c7);
    border-radius: 999px;
    padding: 0.15rem 0.6rem;
    margin-bottom: 0.5rem;
}

.volunteer-msg-header[b-9xin923jii] {
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    gap: 0.4rem;
    margin-bottom: 0.5rem;
}

.volunteer-msg-type-badge[b-9xin923jii] {
    font-size: 0.7rem;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 0.04em;
    padding: 0.15rem 0.55rem;
    border-radius: 999px;
    background: var(--color-info-bg, #e0f2fe);
    color: var(--color-info, #0369a1);
}

.volunteer-msg-type-badge.volunteer-msg-type-urgent[b-9xin923jii] {
    background: #fee2e2;
    color: #b91c1c;
}

.volunteer-msg-type-badge.volunteer-msg-type-logistics[b-9xin923jii] {
    background: #f3e8ff;
    color: #7c3aed;
}

.volunteer-msg-type-badge.volunteer-msg-type-equipment[b-9xin923jii] {
    background: #dcfce7;
    color: #15803d;
}

.volunteer-msg-author[b-9xin923jii] {
    font-weight: 600;
    font-size: 0.875rem;
}

.volunteer-msg-date[b-9xin923jii] {
    font-size: 0.8rem;
    color: var(--text-muted, #6b7280);
}

.volunteer-msg-edited[b-9xin923jii] {
    font-size: 0.775rem;
    color: var(--text-muted, #9ca3af);
    font-style: italic;
}

.volunteer-msg-body[b-9xin923jii] {
    font-size: 0.925rem;
    line-height: 1.65;
    white-space: pre-wrap;
    margin: 0;
}

.volunteer-msg-actions[b-9xin923jii] {
    display: flex;
    gap: 0.5rem;
    margin-top: 0.75rem;
}
/* /Components/Pages/EventVolunteerMessageComposer.razor.rz.scp.css */
.volunteer-msg-composer[b-cv2cgancjx] {
    display: grid;
    gap: 0.5rem;
    margin-bottom: 0.5rem;
}

.volunteer-msg-textarea[b-cv2cgancjx] {
    resize: vertical;
    min-height: 80px;
}

.volunteer-msg-composer-footer[b-cv2cgancjx] {
    display: flex;
    justify-content: flex-end;
}
/* /Components/Pages/EventVolunteerMessageList.razor.rz.scp.css */
.volunteer-msg-list[b-dhq33hbj4m] {
    display: grid;
    gap: 0.75rem;
    margin: 0;
    padding: 0;
}

.volunteer-info-empty[b-dhq33hbj4m] {
    font-size: 0.9rem;
    text-align: center;
    padding: 1.5rem 0;
    color: var(--text-muted, #6b7280);
}
/* /Components/Pages/PublicHome.razor.rz.scp.css */
/* ═══════════════════════════════════════════════════════════════
   Civyx · Public Homepage  —  Premium Design
   ═══════════════════════════════════════════════════════════════ */

/* ── BASE ───────────────────────────────────────────────────── */
.public-home[b-9vvmiu519w] {
    min-height: 100vh;
    background: #ffffff;
    color: #3f3f46;
    font-family: "Manrope", "Segoe UI", system-ui, -apple-system, sans-serif;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
}

.public-home-shell[b-9vvmiu519w] {
    width: min(1200px, calc(100% - 3rem));
    margin: 0 auto;
}

/* ── BUTTONS ─────────────────────────────────────────────────── */
.btn[b-9vvmiu519w] {
    border-radius: 8px;
    font-weight: 600;
    font-size: 0.9375rem;
    letter-spacing: -0.01em;
    padding: 0.6rem 1.35rem;
    transition: background 0.15s ease, box-shadow 0.15s ease, transform 0.15s ease, border-color 0.15s ease, color 0.15s ease;
    display: inline-flex;
    align-items: center;
    gap: 0.375rem;
    line-height: 1.5;
}

.btn-sm[b-9vvmiu519w] {
    font-size: 0.8125rem;
    padding: 0.375rem 0.875rem;
}

.btn-primary[b-9vvmiu519w] {
    background: linear-gradient(135deg, #7c3aed 0%, #4f46e5 100%);
    border: 0;
    color: #fff;
    box-shadow: 0 1px 2px rgba(0, 0, 0, 0.08), 0 4px 16px rgba(124, 58, 237, 0.3);
}

.btn-primary:hover[b-9vvmiu519w],
.btn-primary:focus-visible[b-9vvmiu519w] {
    background: linear-gradient(135deg, #6d28d9 0%, #4338ca 100%);
    box-shadow: 0 2px 4px rgba(0, 0, 0, 0.1), 0 8px 24px rgba(124, 58, 237, 0.42);
    transform: translateY(-1px);
    color: #fff;
}

.btn-outline-primary[b-9vvmiu519w] {
    background: #fff;
    border: 1.5px solid #e4e4e7;
    color: #3f3f46;
}

.btn-outline-primary:hover[b-9vvmiu519w],
.btn-outline-primary:focus-visible[b-9vvmiu519w] {
    background: #fafafb;
    border-color: #c4b5fd;
    color: #5b21b6;
}

.btn-outline-secondary[b-9vvmiu519w] {
    background: transparent;
    border: 1.5px solid rgba(255, 255, 255, 0.22);
    color: #a1a1aa;
}

.btn-outline-secondary:hover[b-9vvmiu519w],
.btn-outline-secondary:focus-visible[b-9vvmiu519w] {
    border-color: #e4e4e7;
    color: #3f3f46;
    background: #fff;
}

/* ── HEADER ──────────────────────────────────────────────────── */
.public-home-header[b-9vvmiu519w] {
    position: sticky;
    top: 0;
    z-index: 90;
    transition: background 0.2s ease, box-shadow 0.2s ease, border-color 0.2s ease;
    border-bottom: 1px solid transparent;
    background: rgba(255, 255, 255, 0.55);
    backdrop-filter: blur(14px);
    -webkit-backdrop-filter: blur(14px);
}

.public-home-header.is-scrolled[b-9vvmiu519w] {
    background: rgba(255, 255, 255, 0.97);
    border-color: rgba(0, 0, 0, 0.07);
    box-shadow: 0 1px 2px rgba(0, 0, 0, 0.04), 0 4px 16px rgba(0, 0, 0, 0.06);
}

.public-home-header .public-home-shell[b-9vvmiu519w] {
    display: grid;
    grid-template-columns: auto 1fr auto;
    align-items: center;
    gap: 2rem;
    min-height: 72px;
}

.brand-logo[b-9vvmiu519w] {
    height: 38px;
    width: auto;
}

.header-nav[b-9vvmiu519w] {
    display: flex;
    justify-content: center;
    gap: 0.125rem;
}

.header-nav a[b-9vvmiu519w] {
    color: #52525b;
    text-decoration: none;
    font-size: 0.875rem;
    font-weight: 600;
    padding: 0.375rem 0.75rem;
    border-radius: 6px;
    transition: color 0.15s ease, background 0.15s ease;
    border-bottom: none;
}

.header-nav a:hover[b-9vvmiu519w],
.header-nav a:focus-visible[b-9vvmiu519w] {
    color: #18181b;
    background: #f4f4f5;
    border-color: transparent;
}

.header-actions[b-9vvmiu519w] {
    display: flex;
    align-items: center;
    gap: 0.5rem;
}

.language-switch[b-9vvmiu519w] {
    display: inline-flex;
    border: 1px solid #e4e4e7;
    border-radius: 8px;
    background: #fafafa;
    padding: 2px;
    gap: 2px;
}

.lang-chip[b-9vvmiu519w] {
    min-width: 34px;
    display: inline-flex;
    justify-content: center;
    align-items: center;
    border-radius: 6px;
    text-decoration: none;
    font-size: 0.75rem;
    font-weight: 700;
    color: #71717a;
    padding: 0.2rem 0.45rem;
    transition: background 0.15s ease, color 0.15s ease;
}

.lang-chip:hover[b-9vvmiu519w] {
    color: #18181b;
}

.lang-chip.is-active[b-9vvmiu519w] {
    background: #18181b;
    color: #fff;
}

.menu-toggle[b-9vvmiu519w] {
    display: none;
    width: 36px;
    height: 36px;
    border-radius: 8px;
    border: 1px solid #e4e4e7;
    background: #fff;
    cursor: pointer;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    gap: 5px;
    padding: 0;
}

.menu-toggle span[b-9vvmiu519w] {
    display: block;
    width: 16px;
    height: 1.5px;
    background: #3f3f46;
    border-radius: 2px;
}

/* ── ANCHOR SCROLL OFFSET ────────────────────────────────────── */
/* Compensates for the 72px sticky header so anchor links land
   with the section heading visible, not hidden under the header. */
.hero[b-9vvmiu519w],
.audiences[b-9vvmiu519w],
.how-it-works[b-9vvmiu519w],
.recognition[b-9vvmiu519w],
.product-preview[b-9vvmiu519w],
.final-cta[b-9vvmiu519w] {
    scroll-margin-top: 72px;
}

/* ── HERO ────────────────────────────────────────────────────── */
.hero[b-9vvmiu519w] {
    position: relative;
    padding: 5.5rem 0 6.5rem;
    overflow: hidden;
    isolation: isolate;
}

/* Large purple/violet gradient blobs */
.hero[b-9vvmiu519w]::before {
    content: "";
    position: absolute;
    inset: 0;
    background:
        radial-gradient(ellipse 90% 70% at 75% -5%, rgba(124, 58, 237, 0.14) 0%, transparent 55%),
        radial-gradient(ellipse 55% 55% at 100% 65%, rgba(79, 70, 229, 0.09) 0%, transparent 55%),
        radial-gradient(ellipse 45% 50% at -8% 85%, rgba(167, 139, 250, 0.08) 0%, transparent 55%);
    z-index: -1;
    pointer-events: none;
}

/* Subtle dot grid in the right half where the preview cards sit */
.hero[b-9vvmiu519w]::after {
    content: "";
    position: absolute;
    inset: 0;
    background-image: radial-gradient(circle, rgba(124, 58, 237, 0.1) 1px, transparent 1px);
    background-size: 24px 24px;
    z-index: -1;
    mask-image: radial-gradient(ellipse 65% 70% at 80% 30%, black 20%, transparent 70%);
    -webkit-mask-image: radial-gradient(ellipse 65% 70% at 80% 30%, black 20%, transparent 70%);
    pointer-events: none;
}

.hero-grid[b-9vvmiu519w] {
    display: grid;
    grid-template-columns: minmax(0, 1fr) minmax(380px, 560px);
    align-items: center;
    gap: 4rem;
}

.hero-copy[b-9vvmiu519w] {
    animation: heroReveal-b-9vvmiu519w 0.55s cubic-bezier(0.22, 1, 0.36, 1) both;
}

.hero-copy h1[b-9vvmiu519w] {
    margin: 0;
    font-family: "Fraunces", Georgia, serif;
    font-size: clamp(2.75rem, 5.5vw, 4.75rem);
    font-weight: 600;
    line-height: 0.97;
    letter-spacing: -0.035em;
    color: #09090b;
    max-width: 13ch;
}

.hero-copy > p[b-9vvmiu519w] {
    margin: 1.625rem 0 0;
    color: #52525b;
    font-size: 1.125rem;
    line-height: 1.7;
    max-width: 46ch;
    font-weight: 500;
}

.hero-cta-row[b-9vvmiu519w] {
    display: flex;
    flex-wrap: wrap;
    gap: 0.5rem;
    margin-top: 2.25rem;
}

.hero-secondary-link[b-9vvmiu519w] {
    display: inline-flex;
    align-items: center;
    gap: 0.375rem;
    margin-top: 1.5rem;
    color: #71717a;
    font-size: 0.875rem;
    font-weight: 600;
    text-decoration: none;
    transition: color 0.15s ease;
}

.hero-secondary-link[b-9vvmiu519w]::after {
    content: "↓";
    font-size: 0.9em;
    line-height: 1;
}

.hero-secondary-link:hover[b-9vvmiu519w],
.hero-secondary-link:focus-visible[b-9vvmiu519w] {
    color: #3f3f46;
    text-decoration: none;
}

/* Preview cards composition */
.hero-preview[b-9vvmiu519w] {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 12px;
    position: relative;
    animation: heroReveal-b-9vvmiu519w 0.55s 0.1s cubic-bezier(0.22, 1, 0.36, 1) both;
}

.hero-preview[b-9vvmiu519w]::before {
    content: "";
    position: absolute;
    inset: -20px;
    border-radius: 28px;
    background: linear-gradient(140deg, rgba(124, 58, 237, 0.05), rgba(79, 70, 229, 0.04));
    border: 1px solid rgba(124, 58, 237, 0.1);
    z-index: 0;
}

.preview-card[b-9vvmiu519w] {
    position: relative;
    z-index: 1;
    background: #fff;
    border: 1px solid rgba(0, 0, 0, 0.07);
    border-radius: 16px;
    padding: 1.25rem;
    box-shadow:
        0 0 0 1px rgba(0, 0, 0, 0.03),
        0 2px 4px rgba(0, 0, 0, 0.04),
        0 8px 24px rgba(0, 0, 0, 0.08);
    transition: box-shadow 0.2s ease, transform 0.2s ease;
}

.preview-card:hover[b-9vvmiu519w] {
    box-shadow:
        0 0 0 1px rgba(124, 58, 237, 0.08),
        0 4px 8px rgba(0, 0, 0, 0.06),
        0 16px 32px rgba(0, 0, 0, 0.1);
    transform: translateY(-2px);
}

.preview-main[b-9vvmiu519w] {
    grid-column: 1 / span 2;
}

.preview-tag[b-9vvmiu519w] {
    display: inline-flex;
    align-items: center;
    margin-bottom: 0.75rem;
    border-radius: 6px;
    background: #f5f3ff;
    border: 1px solid #ddd6fe;
    color: #5b21b6;
    font-weight: 700;
    font-size: 0.6875rem;
    text-transform: uppercase;
    letter-spacing: 0.07em;
    padding: 0.25rem 0.625rem;
}

.preview-card h3[b-9vvmiu519w],
.preview-card h4[b-9vvmiu519w] {
    margin: 0;
    font-size: 0.9375rem;
    font-weight: 700;
    color: #18181b;
    letter-spacing: -0.015em;
}

.preview-card p[b-9vvmiu519w] {
    margin: 0.5rem 0 0;
    color: #71717a;
    font-size: 0.8125rem;
    line-height: 1.55;
}

.preview-pill-row[b-9vvmiu519w] {
    display: flex;
    flex-wrap: wrap;
    gap: 0.375rem;
    margin-top: 0.875rem;
}

.preview-pill-row span[b-9vvmiu519w] {
    border-radius: 6px;
    padding: 0.25rem 0.625rem;
    background: #f4f4f5;
    border: 1px solid #e4e4e7;
    color: #52525b;
    font-size: 0.75rem;
    font-weight: 600;
}

.map-dots[b-9vvmiu519w] {
    display: flex;
    gap: 0.5rem;
    margin-top: 0.875rem;
}

.map-dots span[b-9vvmiu519w] {
    width: 10px;
    height: 10px;
    border-radius: 50%;
    background: linear-gradient(135deg, #7c3aed, #4f46e5);
    box-shadow: 0 0 0 3px rgba(124, 58, 237, 0.14);
}

.map-dots span:nth-child(2)[b-9vvmiu519w] {
    opacity: 0.55;
}

.map-dots span:nth-child(3)[b-9vvmiu519w] {
    opacity: 0.28;
}

.preview-points strong[b-9vvmiu519w] {
    display: inline-flex;
    margin-top: 0.75rem;
    font-size: 1.625rem;
    font-weight: 800;
    letter-spacing: -0.04em;
    background: linear-gradient(135deg, #7c3aed, #4f46e5);
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
    background-clip: text;
    color: transparent;
}

/* ── SECTIONS COMMON ─────────────────────────────────────────── */
section[b-9vvmiu519w] {
    padding: 5rem 0;
}

.section-heading[b-9vvmiu519w] {
    margin-bottom: 3rem;
}

.section-heading h2[b-9vvmiu519w] {
    margin: 0;
    font-family: "Fraunces", Georgia, serif;
    font-size: clamp(1.875rem, 3.5vw, 2.875rem);
    font-weight: 600;
    letter-spacing: -0.032em;
    color: #09090b;
    line-height: 1.12;
}

.section-heading p[b-9vvmiu519w] {
    margin: 0.875rem 0 0;
    color: #71717a;
    font-size: 1.0625rem;
    line-height: 1.65;
    font-weight: 500;
    max-width: 60ch;
}

/* ── AUDIENCES ───────────────────────────────────────────────── */
.audiences[b-9vvmiu519w] {
    background: #fafafa;
    border-top: 1px solid #f4f4f5;
    border-bottom: 1px solid #f4f4f5;
}

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

.audience-card[b-9vvmiu519w] {
    background: #fff;
    border: 1px solid rgba(0, 0, 0, 0.07);
    border-radius: 18px;
    padding: 2rem 1.75rem;
    box-shadow: 0 1px 3px rgba(0, 0, 0, 0.04), 0 4px 16px rgba(0, 0, 0, 0.05);
    transition: transform 0.2s ease, box-shadow 0.2s ease, border-color 0.2s ease;
    display: flex;
    flex-direction: column;
}

.audience-card:hover[b-9vvmiu519w] {
    transform: translateY(-4px);
    box-shadow: 0 4px 8px rgba(0, 0, 0, 0.06), 0 20px 40px rgba(0, 0, 0, 0.09);
    border-color: rgba(124, 58, 237, 0.15);
}

.audience-icon[b-9vvmiu519w] {
    width: 52px;
    height: 52px;
    border-radius: 14px;
    margin-bottom: 1.375rem;
}

.icon-volunteer[b-9vvmiu519w] {
    background: linear-gradient(135deg, #7c3aed, #4f46e5);
    box-shadow: 0 4px 14px rgba(124, 58, 237, 0.32);
}

.icon-association[b-9vvmiu519w] {
    background: linear-gradient(135deg, #0ea5e9, #6366f1);
    box-shadow: 0 4px 14px rgba(14, 165, 233, 0.28);
}

.icon-company[b-9vvmiu519w] {
    background: linear-gradient(135deg, #10b981, #0d9488);
    box-shadow: 0 4px 14px rgba(16, 185, 129, 0.28);
}

.audience-card h3[b-9vvmiu519w] {
    margin: 0;
    font-size: 1.125rem;
    font-weight: 700;
    letter-spacing: -0.02em;
    color: #18181b;
}

.audience-card > p[b-9vvmiu519w] {
    margin: 0.625rem 0 1.125rem;
    color: #71717a;
    font-size: 0.9375rem;
    line-height: 1.6;
    font-weight: 500;
    flex-grow: 0;
}

.audience-card ul[b-9vvmiu519w] {
    margin: 0;
    padding: 0;
    list-style: none;
    flex-grow: 1;
}

.audience-card li[b-9vvmiu519w] {
    padding: 0.5rem 0;
    font-size: 0.875rem;
    font-weight: 600;
    color: #3f3f46;
    display: flex;
    align-items: flex-start;
    gap: 0.5rem;
    border-bottom: 1px solid #f4f4f5;
}

.audience-card li:last-child[b-9vvmiu519w] {
    border-bottom: none;
}

.audience-card li[b-9vvmiu519w]::before {
    content: "✓";
    color: #7c3aed;
    font-size: 0.75rem;
    font-weight: 800;
    margin-top: 0.15em;
    flex-shrink: 0;
}

.audience-card .btn[b-9vvmiu519w] {
    margin-top: 1.625rem;
    align-self: flex-start;
}

/* ── HOW IT WORKS ────────────────────────────────────────────── */
.how-it-works[b-9vvmiu519w] {
    background: #ffffff;
    position: relative;
}

.how-it-works[b-9vvmiu519w]::before {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    height: 1px;
    background: linear-gradient(90deg, transparent 0%, rgba(124, 58, 237, 0.25) 50%, transparent 100%);
}

.steps-grid[b-9vvmiu519w] {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 1px;
    background: #f0f0f0;
    border: 1px solid #f0f0f0;
    border-radius: 20px;
    overflow: hidden;
}

.step-card[b-9vvmiu519w] {
    background: #fff;
    padding: 2rem 1.75rem;
    position: relative;
}

.step-index[b-9vvmiu519w] {
    width: 38px;
    height: 38px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    border-radius: 10px;
    background: linear-gradient(135deg, #7c3aed, #4f46e5);
    color: #fff;
    font-size: 0.875rem;
    font-weight: 800;
    margin-bottom: 1.125rem;
    box-shadow: 0 2px 8px rgba(124, 58, 237, 0.3);
}

.step-card h3[b-9vvmiu519w] {
    margin: 0;
    font-size: 1rem;
    font-weight: 700;
    letter-spacing: -0.015em;
    color: #18181b;
}

.step-card p[b-9vvmiu519w] {
    margin: 0.5rem 0 0;
    color: #71717a;
    font-size: 0.875rem;
    line-height: 1.65;
    font-weight: 500;
}

/* ── RECOGNITION ─────────────────────────────────────────────── */
.recognition[b-9vvmiu519w] {
    background: #09090b;
    position: relative;
    overflow: hidden;
}

.recognition[b-9vvmiu519w]::before {
    content: "";
    position: absolute;
    inset: 0;
    background:
        radial-gradient(ellipse 65% 85% at 85% 50%, rgba(124, 58, 237, 0.2) 0%, transparent 60%),
        radial-gradient(ellipse 45% 65% at 10% 20%, rgba(79, 70, 229, 0.13) 0%, transparent 60%);
    pointer-events: none;
}

.recognition-grid[b-9vvmiu519w] {
    position: relative;
    display: grid;
    grid-template-columns: minmax(0, 1fr) minmax(300px, 460px);
    align-items: center;
    gap: 5rem;
}

.recognition-copy h2[b-9vvmiu519w] {
    margin: 0;
    font-family: "Fraunces", Georgia, serif;
    font-size: clamp(1.875rem, 3.5vw, 2.875rem);
    font-weight: 600;
    letter-spacing: -0.032em;
    color: #fafafa;
    line-height: 1.12;
}

.recognition-copy p[b-9vvmiu519w] {
    margin: 1rem 0 0;
    color: #a1a1aa;
    font-size: 1.0625rem;
    line-height: 1.65;
    font-weight: 500;
}

.recognition-copy ul[b-9vvmiu519w] {
    margin: 1.875rem 0 0;
    padding: 0;
    list-style: none;
    display: flex;
    flex-direction: column;
    gap: 0.875rem;
}

.recognition-copy li[b-9vvmiu519w] {
    color: #d4d4d8;
    font-size: 0.9375rem;
    font-weight: 500;
    display: flex;
    align-items: center;
    gap: 0.75rem;
}

.recognition-copy li[b-9vvmiu519w]::before {
    content: "";
    display: inline-block;
    width: 6px;
    height: 6px;
    border-radius: 50%;
    background: linear-gradient(135deg, #a78bfa, #818cf8);
    flex-shrink: 0;
}

.recognition-preview[b-9vvmiu519w] {
    background: rgba(255, 255, 255, 0.03);
    border: 1px solid rgba(255, 255, 255, 0.09);
    border-radius: 22px;
    padding: 2.25rem;
    backdrop-filter: blur(16px);
    -webkit-backdrop-filter: blur(16px);
    box-shadow:
        inset 0 1px 0 rgba(255, 255, 255, 0.07),
        0 32px 64px rgba(0, 0, 0, 0.4);
}

.recognition-label[b-9vvmiu519w] {
    margin: 0;
    font-size: 0.6875rem;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 0.09em;
    color: #a78bfa;
}

.recognition-panel h3[b-9vvmiu519w] {
    margin: 0.625rem 0 0;
    font-size: 1.3125rem;
    font-weight: 700;
    letter-spacing: -0.02em;
    color: #fafafa;
}

.recognition-badges[b-9vvmiu519w] {
    display: flex;
    flex-wrap: wrap;
    gap: 0.5rem;
    margin-top: 1.375rem;
}

.recognition-badges span[b-9vvmiu519w] {
    border-radius: 8px;
    padding: 0.375rem 0.875rem;
    background: #2e1065;
    border: 1px solid #6d28d9;
    color: #ede9fe;
    font-size: 0.8125rem;
    font-weight: 600;
}

/* ── PRODUCT PREVIEW ─────────────────────────────────────────── */
.product-preview[b-9vvmiu519w] {
    background: #fafafa;
    border-top: 1px solid #f4f4f5;
    border-bottom: 1px solid #f4f4f5;
}

.product-grid[b-9vvmiu519w] {
    display: grid;
    grid-template-columns: repeat(5, minmax(0, 1fr));
    gap: 1rem;
}

.product-card[b-9vvmiu519w] {
    background: #fff;
    border: 1px solid rgba(0, 0, 0, 0.07);
    border-radius: 14px;
    padding: 1.5rem 1.25rem;
    box-shadow: 0 1px 3px rgba(0, 0, 0, 0.04), 0 4px 12px rgba(0, 0, 0, 0.04);
    transition: transform 0.18s ease, box-shadow 0.18s ease;
}

.product-card:hover[b-9vvmiu519w] {
    transform: translateY(-3px);
    box-shadow: 0 4px 8px rgba(0, 0, 0, 0.06), 0 12px 28px rgba(0, 0, 0, 0.09);
}

.product-card[b-9vvmiu519w]::before {
    content: "";
    display: block;
    width: 28px;
    height: 4px;
    border-radius: 4px;
    background: linear-gradient(90deg, #7c3aed, #4f46e5);
    margin-bottom: 1rem;
}

.product-card h3[b-9vvmiu519w] {
    margin: 0;
    font-size: 0.9375rem;
    font-weight: 700;
    letter-spacing: -0.015em;
    color: #18181b;
}

.product-card p[b-9vvmiu519w] {
    margin: 0.5rem 0 0;
    color: #71717a;
    font-size: 0.8125rem;
    line-height: 1.6;
    font-weight: 500;
}

/* ── TRUST ───────────────────────────────────────────────────── */
.trust[b-9vvmiu519w] {
    background: #0f172a;
    position: relative;
    overflow: hidden;
}

.trust[b-9vvmiu519w]::before {
    content: "";
    position: absolute;
    inset: 0;
    background: radial-gradient(ellipse 55% 100% at 50% 60%, rgba(124, 58, 237, 0.1) 0%, transparent 70%);
    pointer-events: none;
}

.trust .section-heading[b-9vvmiu519w] {
    position: relative;
    max-width: none;
    text-align: center;
}

.trust .section-heading h2[b-9vvmiu519w] {
    color: #f8fafc;
}

.trust .section-heading p[b-9vvmiu519w] {
    color: #94a3b8;
    margin-left: auto;
    margin-right: auto;
    max-width: 54ch;
}

.trust-grid[b-9vvmiu519w] {
    position: relative;
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 1.25rem;
}

.trust-card[b-9vvmiu519w] {
    background: rgba(255, 255, 255, 0.04);
    border: 1px solid rgba(255, 255, 255, 0.07);
    border-radius: 18px;
    padding: 2.25rem 2rem;
    text-align: center;
    transition: background 0.2s ease, border-color 0.2s ease;
}

.trust-card:hover[b-9vvmiu519w] {
    background: rgba(255, 255, 255, 0.07);
    border-color: rgba(167, 139, 250, 0.3);
}

.trust-card strong[b-9vvmiu519w] {
    display: block;
    font-family: "Fraunces", Georgia, serif;
    font-size: clamp(2.25rem, 4vw, 3.25rem);
    font-weight: 600;
    letter-spacing: -0.04em;
    background: linear-gradient(135deg, #c4b5fd 0%, #818cf8 100%);
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
    background-clip: text;
    color: transparent;
    line-height: 1;
}

.trust-card span[b-9vvmiu519w] {
    display: block;
    margin-top: 0.625rem;
    color: #94a3b8;
    font-size: 0.9375rem;
    font-weight: 600;
}

/* ── FINAL CTA ───────────────────────────────────────────────── */
.final-cta[b-9vvmiu519w] {
    background: linear-gradient(135deg, #4c1d95 0%, #4338ca 55%, #1d4ed8 100%);
    position: relative;
    overflow: hidden;
    padding: 6rem 0;
}

.final-cta[b-9vvmiu519w]::before {
    content: "";
    position: absolute;
    inset: 0;
    background:
        radial-gradient(ellipse 65% 80% at 85% 15%, rgba(255, 255, 255, 0.07) 0%, transparent 55%),
        radial-gradient(ellipse 40% 55% at 8% 85%, rgba(255, 255, 255, 0.04) 0%, transparent 55%);
    pointer-events: none;
}

.final-cta-panel[b-9vvmiu519w] {
    position: relative;
    text-align: center;
}

.final-cta-panel h2[b-9vvmiu519w] {
    margin: 0;
    font-family: "Fraunces", Georgia, serif;
    font-size: clamp(1.875rem, 3.5vw, 2.875rem);
    font-weight: 600;
    letter-spacing: -0.032em;
    color: #fff;
    line-height: 1.12;
}

.final-cta-panel p[b-9vvmiu519w] {
    margin: 1.125rem 0 0;
    color: rgba(255, 255, 255, 0.72);
    font-size: 1.0625rem;
    font-weight: 500;
}

.final-cta-buttons[b-9vvmiu519w] {
    display: flex;
    justify-content: center;
    flex-wrap: wrap;
    gap: 0.75rem;
    margin-top: 2.25rem;
}

.final-cta .btn-primary[b-9vvmiu519w] {
    background: #ffffff;
    color: #5b21b6;
    box-shadow: 0 2px 8px rgba(0, 0, 0, 0.14), 0 0 0 1px rgba(255, 255, 255, 0.5);
    border: 0;
}

.final-cta .btn-primary:hover[b-9vvmiu519w],
.final-cta .btn-primary:focus-visible[b-9vvmiu519w] {
    background: #f5f3ff;
    color: #4c1d95;
    transform: translateY(-1px);
}

.final-cta .btn-outline-light[b-9vvmiu519w] {
    background: #4c1d95;
    border: 1.5px solid rgba(255, 255, 255, 0.3);
    color: #fff;
    border-radius: 8px;
    font-weight: 600;
    font-size: 0.9375rem;
    padding: 0.6rem 1.35rem;
    display: inline-flex;
    align-items: center;
    line-height: 1.5;
    transition: background 0.15s ease, border-color 0.15s ease;
    text-decoration: none;
}

.final-cta .btn-outline-light:hover[b-9vvmiu519w],
.final-cta .btn-outline-light:focus-visible[b-9vvmiu519w] {
    background: rgba(255, 255, 255, 0.18);
    border-color: rgba(255, 255, 255, 0.4);
}

/* ── FOOTER ──────────────────────────────────────────────────── */
.public-footer[b-9vvmiu519w] {
    background: #09090b;
    padding: 4rem 0 0;
    border-top: 1px solid rgba(255, 255, 255, 0.06);
}

.footer-grid[b-9vvmiu519w] {
    display: grid;
    grid-template-columns: 1.6fr repeat(4, minmax(0, 1fr));
    gap: 2rem;
    padding-bottom: 3.5rem;
    border-bottom: 1px solid rgba(255, 255, 255, 0.06);
}

.footer-logo[b-9vvmiu519w] {
    height: 32px;
    width: auto;
    filter: brightness(0) invert(1);
    opacity: 0.88;
    margin-bottom: 0.875rem;
}

.public-footer p[b-9vvmiu519w] {
    margin: 0.5rem 0 0;
    color: #71717a;
    font-size: 0.875rem;
    line-height: 1.65;
    font-weight: 500;
}

.public-footer h3[b-9vvmiu519w] {
    margin: 0;
    color: #fafafa;
    font-size: 0.8125rem;
    font-weight: 700;
    letter-spacing: -0.01em;
    text-transform: none;
}

.public-footer a[b-9vvmiu519w] {
    display: block;
    margin-top: 0.625rem;
    color: #71717a;
    text-decoration: none;
    font-size: 0.875rem;
    font-weight: 500;
    transition: color 0.15s ease;
}

.public-footer a:hover[b-9vvmiu519w],
.public-footer a:focus-visible[b-9vvmiu519w] {
    color: #d4d4d8;
}

.public-footer .language-switch[b-9vvmiu519w] {
    margin-top: 0.75rem;
    border-color: rgba(255, 255, 255, 0.1);
    background: rgba(255, 255, 255, 0.04);
}

.public-footer .lang-chip[b-9vvmiu519w] {
    color: #71717a;
}

.public-footer .lang-chip:hover[b-9vvmiu519w] {
    color: #d4d4d8;
}

.public-footer .lang-chip.is-active[b-9vvmiu519w] {
    background: #27272a;
    color: #fafafa;
}

.footer-meta[b-9vvmiu519w] {
    padding: 1.375rem 0;
    text-align: center;
    color: #52525b;
    font-size: 0.8125rem;
    font-weight: 500;
}

/* ── MOBILE ──────────────────────────────────────────────────── */
@media (max-width: 900px) {
    .recognition-grid[b-9vvmiu519w] {
        grid-template-columns: minmax(0, 1fr);
        gap: 2.5rem;
    }
}

@media (max-width: 768px) {
    .menu-toggle[b-9vvmiu519w] {
        display: flex;
    }

    .public-home-header .public-home-shell[b-9vvmiu519w] {
        display: flex;
        flex-wrap: wrap;
        align-items: center;
        min-height: 60px;
        padding-block: 0.75rem;
        gap: 0.5rem;
    }

    .brand[b-9vvmiu519w] {
        flex: 1;
    }

    .header-nav[b-9vvmiu519w] {
        display: none;
        order: 10;
        flex-direction: column;
        width: 100%;
        gap: 0;
        padding: 0.5rem 0 0.75rem;
        border-top: 1px solid #f4f4f5;
    }

    .header-nav.is-open[b-9vvmiu519w] {
        display: flex;
    }

    .header-nav a[b-9vvmiu519w] {
        padding: 0.6rem 0.5rem;
        border-radius: 6px;
    }

    .header-actions[b-9vvmiu519w] {
        display: none;
        order: 11;
        width: 100%;
        justify-content: center;
        flex-wrap: wrap;
        padding-bottom: 0.75rem;
    }

    .header-actions.is-open[b-9vvmiu519w] {
        display: flex;
    }

    .hero[b-9vvmiu519w] {
        padding: 3.5rem 0 4rem;
    }

    .hero-grid[b-9vvmiu519w] {
        grid-template-columns: minmax(0, 1fr);
        gap: 2.5rem;
        text-align: center;
    }

    .hero-copy h1[b-9vvmiu519w] {
        max-width: none;
    }

    .hero-copy > p[b-9vvmiu519w] {
        margin-left: auto;
        margin-right: auto;
    }

    .hero-cta-row[b-9vvmiu519w] {
        justify-content: center;
    }

    .hero-secondary-link[b-9vvmiu519w] {
        margin: 1rem auto 0;
    }

    .audience-grid[b-9vvmiu519w] {
        grid-template-columns: minmax(0, 1fr);
        gap: 1rem;
    }

    .steps-grid[b-9vvmiu519w] {
        grid-template-columns: 1fr 1fr;
        border-radius: 14px;
    }

    .product-grid[b-9vvmiu519w] {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .trust-grid[b-9vvmiu519w] {
        grid-template-columns: minmax(0, 1fr);
        gap: 1rem;
    }

    .footer-grid[b-9vvmiu519w] {
        grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
        gap: 1.5rem;
    }
}

@media (max-width: 480px) {
    .hero-preview[b-9vvmiu519w] {
        grid-template-columns: minmax(0, 1fr);
    }

    .preview-main[b-9vvmiu519w] {
        grid-column: auto;
    }

    .steps-grid[b-9vvmiu519w] {
        grid-template-columns: minmax(0, 1fr);
    }

    .product-grid[b-9vvmiu519w] {
        grid-template-columns: minmax(0, 1fr);
    }

    .footer-grid[b-9vvmiu519w] {
        grid-template-columns: minmax(0, 1fr);
    }
}

/* ── ANIMATION ───────────────────────────────────────────────── */
@keyframes heroReveal-b-9vvmiu519w {
    from {
        opacity: 0;
        transform: translateY(18px);
    }

    to {
        opacity: 1;
        transform: translateY(0);
    }
}
/* /Components/Shared/CookieConsentBanner.razor.rz.scp.css */
/* ════════════════════════════════════════
   Cookie Consent Banner — scoped styles
   ════════════════════════════════════════ */

.cookie-banner[b-k3l021huye] {
    position: fixed;
    bottom: 0;
    left: 0;
    right: 0;
    z-index: 9999;
    background: rgba(9, 9, 11, 0.97);
    border-top: 1px solid rgba(255, 255, 255, 0.08);
    backdrop-filter: blur(12px);
    -webkit-backdrop-filter: blur(12px);
    padding: 1rem 1.5rem;
    animation: banner-slide-up-b-k3l021huye 0.25s ease-out;
}

@keyframes banner-slide-up-b-k3l021huye {
    from {
        transform: translateY(100%);
        opacity: 0;
    }
    to {
        transform: translateY(0);
        opacity: 1;
    }
}

.cookie-banner-inner[b-k3l021huye] {
    max-width: 1200px;
    margin: 0 auto;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 1.5rem;
    flex-wrap: wrap;
}

.cookie-banner-text[b-k3l021huye] {
    flex: 1;
    min-width: 0;
}

.cookie-banner-text p[b-k3l021huye] {
    margin: 0;
    font-size: 0.875rem;
    line-height: 1.6;
    color: #a1a1aa;
    font-weight: 500;
}

.cookie-banner-text a[b-k3l021huye] {
    color: #a78bfa;
    text-decoration: underline;
    text-underline-offset: 2px;
    transition: color 0.15s ease;
    white-space: nowrap;
}

.cookie-banner-text a:hover[b-k3l021huye] {
    color: #c4b5fd;
}

.cookie-banner-actions[b-k3l021huye] {
    display: flex;
    gap: 0.625rem;
    flex-shrink: 0;
    flex-wrap: wrap;
}

.cookie-btn[b-k3l021huye] {
    padding: 0.5rem 1.25rem;
    border-radius: 8px;
    font-size: 0.875rem;
    font-weight: 600;
    font-family: 'Manrope', sans-serif;
    cursor: pointer;
    transition: background 0.15s ease, color 0.15s ease, border-color 0.15s ease;
    white-space: nowrap;
}

.cookie-btn-essential[b-k3l021huye] {
    background: transparent;
    color: #71717a;
    border: 1px solid rgba(255, 255, 255, 0.1);
}

.cookie-btn-essential:hover[b-k3l021huye] {
    background: rgba(255, 255, 255, 0.06);
    color: #d4d4d8;
    border-color: rgba(255, 255, 255, 0.2);
}

.cookie-btn-accept[b-k3l021huye] {
    background: #7c3aed;
    color: #fff;
    border: 1px solid transparent;
}

.cookie-btn-accept:hover[b-k3l021huye] {
    background: #6d28d9;
}

@media (max-width: 600px) {
    .cookie-banner-inner[b-k3l021huye] {
        flex-direction: column;
        align-items: flex-start;
    }

    .cookie-banner-actions[b-k3l021huye] {
        width: 100%;
        justify-content: flex-end;
    }
}
/* /Components/Shared/LegalPageShell.razor.rz.scp.css */
/* ════════════════════════════════════════
   Legal Page Shell — scoped styles
   ════════════════════════════════════════ */

/* Root shell */
.legal-shell[b-xxbvjmvnv7] {
    min-height: 100vh;
    background: #09090b;
    color: #fafafa;
    font-family: 'Manrope', sans-serif;
    display: flex;
    flex-direction: column;
}

/* Shared container */
.legal-shell-container[b-xxbvjmvnv7] {
    width: 100%;
    max-width: 760px;
    margin: 0 auto;
    padding: 0 1.5rem;
}

/* ── Header ─────────────────────────────── */
.legal-shell-header[b-xxbvjmvnv7] {
    border-bottom: 1px solid rgba(255, 255, 255, 0.06);
    padding: 1.125rem 0;
    background: #09090b;
    position: sticky;
    top: 0;
    z-index: 100;
}

.legal-shell-header .legal-shell-container[b-xxbvjmvnv7] {
    display: flex;
    align-items: center;
    justify-content: space-between;
}

.legal-brand[b-xxbvjmvnv7] {
    display: flex;
    align-items: center;
    text-decoration: none;
}

.legal-brand-logo[b-xxbvjmvnv7] {
    height: 28px;
    width: auto;
    filter: brightness(0) invert(1);
    opacity: 0.88;
}

.legal-back-link[b-xxbvjmvnv7] {
    font-size: 0.8125rem;
    font-weight: 600;
    color: #71717a;
    text-decoration: none;
    transition: color 0.15s ease;
    letter-spacing: -0.01em;
}

.legal-back-link:hover[b-xxbvjmvnv7],
.legal-back-link:focus-visible[b-xxbvjmvnv7] {
    color: #d4d4d8;
}

/* ── Hero ───────────────────────────────── */
.legal-hero[b-xxbvjmvnv7] {
    padding: 3.5rem 0 2.5rem;
    border-bottom: 1px solid rgba(255, 255, 255, 0.06);
}

.legal-hero h1[b-xxbvjmvnv7] {
    font-family: 'Fraunces', serif;
    font-size: clamp(1.75rem, 4vw, 2.5rem);
    font-weight: 700;
    color: #fafafa;
    margin: 0 0 0.625rem;
    line-height: 1.2;
    letter-spacing: -0.03em;
}

.legal-last-updated[b-xxbvjmvnv7] {
    font-size: 0.8125rem;
    color: #52525b;
    margin: 0;
    font-weight: 500;
}

/* ── Main content ───────────────────────── */
.legal-main[b-xxbvjmvnv7] {
    flex: 1;
    padding: 3rem 0 4rem;
}

/* Prose styles — applied to content passed via ChildContent */
.legal-content[b-xxbvjmvnv7]  h2 {
    font-family: 'Manrope', sans-serif;
    font-size: 1.125rem;
    font-weight: 700;
    color: #fafafa;
    margin: 2.5rem 0 0.875rem;
    letter-spacing: -0.02em;
    padding-bottom: 0.5rem;
    border-bottom: 1px solid rgba(255, 255, 255, 0.06);
}

.legal-content[b-xxbvjmvnv7]  h3 {
    font-family: 'Manrope', sans-serif;
    font-size: 0.9375rem;
    font-weight: 700;
    color: #e4e4e7;
    margin: 1.75rem 0 0.625rem;
    letter-spacing: -0.01em;
}

.legal-content[b-xxbvjmvnv7]  p {
    font-size: 0.9375rem;
    line-height: 1.75;
    color: #a1a1aa;
    margin: 0 0 1rem;
}

.legal-content[b-xxbvjmvnv7]  ul,
.legal-content[b-xxbvjmvnv7]  ol {
    font-size: 0.9375rem;
    line-height: 1.75;
    color: #a1a1aa;
    margin: 0 0 1rem;
    padding-left: 1.5rem;
}

.legal-content[b-xxbvjmvnv7]  li {
    margin-bottom: 0.375rem;
}

.legal-content[b-xxbvjmvnv7]  a {
    color: #a78bfa;
    text-decoration: underline;
    text-underline-offset: 2px;
    transition: color 0.15s ease;
}

.legal-content[b-xxbvjmvnv7]  a:hover {
    color: #c4b5fd;
}

.legal-content[b-xxbvjmvnv7]  strong {
    color: #d4d4d8;
    font-weight: 600;
}

.legal-content[b-xxbvjmvnv7]  .legal-table {
    width: 100%;
    border-collapse: collapse;
    margin: 1rem 0 1.5rem;
    font-size: 0.875rem;
}

.legal-content[b-xxbvjmvnv7]  .legal-table th {
    text-align: left;
    font-weight: 700;
    color: #e4e4e7;
    padding: 0.625rem 0.75rem;
    border-bottom: 1px solid rgba(255, 255, 255, 0.1);
    background: rgba(255, 255, 255, 0.03);
}

.legal-content[b-xxbvjmvnv7]  .legal-table td {
    padding: 0.625rem 0.75rem;
    color: #a1a1aa;
    border-bottom: 1px solid rgba(255, 255, 255, 0.05);
    vertical-align: top;
}

/* ── Footer ─────────────────────────────── */
.legal-shell-footer[b-xxbvjmvnv7] {
    border-top: 1px solid rgba(255, 255, 255, 0.06);
    padding: 2rem 0;
    background: #09090b;
}

.legal-shell-footer .legal-shell-container[b-xxbvjmvnv7] {
    display: flex;
    flex-direction: column;
    gap: 1.25rem;
}

.legal-footer-links[b-xxbvjmvnv7] {
    display: flex;
    flex-wrap: wrap;
    gap: 0.25rem 1.75rem;
}

.legal-footer-links a[b-xxbvjmvnv7] {
    font-size: 0.8125rem;
    font-weight: 500;
    color: #52525b;
    text-decoration: none;
    transition: color 0.15s ease;
}

.legal-footer-links a:hover[b-xxbvjmvnv7],
.legal-footer-links a:focus-visible[b-xxbvjmvnv7] {
    color: #a1a1aa;
}

.legal-footer-meta[b-xxbvjmvnv7] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    flex-wrap: wrap;
    gap: 0.75rem;
}

.legal-footer-meta small[b-xxbvjmvnv7] {
    font-size: 0.75rem;
    color: #3f3f46;
}

/* Language switch */
.legal-lang-switch[b-xxbvjmvnv7] {
    display: flex;
    border: 1px solid rgba(255, 255, 255, 0.1);
    border-radius: 6px;
    overflow: hidden;
    background: rgba(255, 255, 255, 0.04);
}

.legal-lang-switch .lang-chip[b-xxbvjmvnv7] {
    padding: 0.3125rem 0.75rem;
    font-size: 0.75rem;
    font-weight: 700;
    letter-spacing: 0.04em;
    color: #52525b;
    text-decoration: none;
    transition: color 0.15s ease, background 0.15s ease;
}

.legal-lang-switch .lang-chip:hover[b-xxbvjmvnv7] {
    color: #a1a1aa;
    background: rgba(255, 255, 255, 0.06);
}

.legal-lang-switch .lang-chip.is-active[b-xxbvjmvnv7] {
    color: #fafafa;
    background: rgba(255, 255, 255, 0.1);
}

/* ── Responsive ─────────────────────────── */
@media (max-width: 600px) {
    .legal-hero[b-xxbvjmvnv7] {
        padding: 2.5rem 0 2rem;
    }

    .legal-footer-meta[b-xxbvjmvnv7] {
        flex-direction: column;
        align-items: flex-start;
    }
}
