
.sidebar-item {
    background: var(--surface-color);
    border-radius: 8px;
    box-shadow: 0 5px 15px rgba(0, 0, 0, 0.05);
    margin-bottom: 2rem;
    padding: 1.5rem;
}

    .sidebar-item .sidebar-title {
        font-size: 1.25rem;
        font-weight: 600;
        position: relative;
        margin-bottom: 1.25rem;
        padding-bottom: 0.75rem;
    }

        .sidebar-item .sidebar-title:after {
            content: "";
            position: absolute;
            bottom: 0;
            left: 0;
            height: 3px;
            width: 60px;
            background: var(--accent-color);
        }

    .sidebar-item.featured-event .featured-event-content img {
        border-radius: 6px;
        margin-bottom: 1rem;
    }

    .sidebar-item.featured-event .featured-event-content h4 {
        font-size: 1.1rem;
        margin-bottom: 0.5rem;
    }

    .sidebar-item.featured-event .featured-event-content p {
        margin-bottom: 0.75rem;
        color: color-mix(in srgb, var(--default-color), transparent 10%);
        font-size: 0.95rem;
    }

        .sidebar-item.featured-event .featured-event-content p i {
            color: var(--accent-color);
            margin-right: 0.25rem;
        }

    .sidebar-item.featured-event .featured-event-content .btn-register {
        display: inline-block;
        background: var(--accent-color);
        color: var(--contrast-color);
        padding: 0.5rem 1.25rem;
        border-radius: 50px;
        font-weight: 600;
        transition: background-color 0.3s ease;
        margin-top: 0.5rem;
    }

        .sidebar-item.featured-event .featured-event-content .btn-register:hover {
            background: color-mix(in srgb, var(--accent-color), transparent 15%);
        }

    .sidebar-item .categories ul {
        padding: 0;
        list-style: none;
        margin: 0;
    }

        .sidebar-item .categories ul li {
            border-bottom: 1px solid color-mix(in srgb, var(--heading-color), transparent 90%);
        }

            .sidebar-item .categories ul li:last-child {
                border-bottom: none;
            }

            .sidebar-item .categories ul li a {
                display: flex;
                justify-content: space-between;
                color: color-mix(in srgb, var(--default-color), transparent 15%);
                padding: 0.75rem 0;
                transition: color 0.3s ease;
            }

                .sidebar-item .categories ul li a:hover {
                    color: var(--accent-color);
                }

                .sidebar-item .categories ul li a span {
                    color: color-mix(in srgb, var(--default-color), transparent 40%);
                    background: color-mix(in srgb, var(--heading-color), transparent 90%);
                    border-radius: 50px;
                    padding: 0.15rem 0.5rem;
                    font-size: 0.8rem;
                    transition: background-color 0.3s ease;
                }

                .sidebar-item .categories ul li a:hover span {
                    background: color-mix(in srgb, var(--accent-color), transparent 85%);
                    color: var(--accent-color);
                }
.line-clamp-4 {
    display: -webkit-box;
    -webkit-line-clamp: 4; /* limit to 4 lines */
    -webkit-box-orient: vertical;
    overflow: hidden;
    text-overflow: ellipsis;
}








