/* Gemeenschappelijke CSS voor zowel grid- als lijstweergave */
.klasbord-nieuws {
    display: flex;
    flex-wrap: wrap;
    gap: 20px;
}

/* CSS voor de nieuwsitems */
.klasbord-nieuws-item {
    border: 1px solid #ddd;
    width: 30%;
    box-sizing: border-box;
    border-radius: 8px;
}

/* Afbeeldingen in lijstweergave */
.klasbord-nieuws.list .klasbord-nieuws-item {
    display: flex;
    align-items: flex-start;
    width: 100%;
}

.klasbord-nieuws.list .klasbord-nieuws-item .nieuws-item-list {
    display: flex;
    width: 100%;
    gap: 20px;
}

.klasbord-nieuws.list .klasbord-nieuws-item .nieuws-item-afbeelding {
    width: 30%;
    cursor:zoom-in;
}

.klasbord-nieuws .klasbord-nieuws-item .nieuws-item-afbeelding img {
    width: 100%;
    height: 300px;
    object-fit: cover;
    border-radius: 8px;
}

.klasbord-nieuws .klasbord-nieuws-item .nieuws-item-tekst {
    width: 70%;
    padding:20px;
}

.klasbord-nieuws.grid{
    display: grid;
    grid-template-columns: 1fr 1fr 1fr;
}
.klasbord-nieuws.grid .klasbord-nieuws-item{
    width:100%;
}


.klasbord-nieuws .carousel {
    display: flex;
}
.klasbord-nieuws .carousel .slide {
    width: 100%;
    margin-right: 10px;
}
.klasbord-nieuws .carousel .slide a{
    cursor: zoom-in;
}
.klasbord-nieuws .carousel img {
    display: block;
    width: 100%;
    object-position: center;
    border-radius: 6px;
}

.klasbord-nieuws .carousel  .glightbox{
    width: 100%;
    height: 300px;
    display: block;
}

.carousel .flickity-viewport{width:100%;}

/* Algemene stijl voor de agenda */
.calendar {
    font-family: Arial, sans-serif;
    border: 1px solid #ddd;
    border-radius: 8px;
    width: 100%;
    margin: 20px auto;
    padding: 10px;
    background-color: #fff;
}

/* Kalender header met maandnaam en navigatieknoppen */
.calendar-header {
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin-bottom: 10px;
}

.calendar-header a {
    text-decoration: none;
    color: #0073e6;
    font-weight: bold;
    font-size: 14px;
}

.calendar-header span {
    font-size: 18px;
    font-weight: bold;
    color: #333;
}

/* Kalenderdagen (weergave van de datums en evenementen) */
.calendar-days {
    display: grid;
    grid-template-columns: repeat(7, 1fr); /* Zeven kolommen (voor elke dag van de week) */
    gap: 5px;
    padding: 10px;
}

.calendar-day {
    display: flex;
    flex-direction: column;
    align-items: center;
    padding: 10px;
    background-color: #f9f9f9;
    border-radius: 4px;
    min-height: 80px;
    position: relative;
}

.calendar-day.empty {
    background-color: #e0e0e0; /* Donkere achtergrond voor lege dagen */
    cursor: default;
}

.calendar-day:hover {
    background-color: #e0f7fa;
}

.calendar-day .day-number {
    font-size: 14px;
    font-weight: bold;
    color: #333;
}

.calendar-day .event-title {
    font-size: 12px;
    color: #0073e6;
    margin-top: 5px;
}

/* Styling voor knoppen voor maandnavigatie */
.prev-month, .next-month {
    padding: 5px 10px;
    background-color: #fff;
    color: white;
    border-radius: 4px;
    font-weight: bold;
    text-decoration: none;
    cursor: pointer;
}


@media (max-width: 1300px) {
    .klasbord-nieuws.grid{
        grid-template-columns: 1fr 1fr;
    }
}


/* Zorg ervoor dat de kalender goed responsive is */
@media (max-width: 600px) {
    .calendar {
        width: 100%;
        padding: 15px;
    }

    .calendar-header {
        flex-direction: column;
        align-items: center;
    }

    .calendar-days {
        grid-template-columns: 1fr; /* Weergave in drie kolommen op kleinere schermen */
    }

    .calendar-day{
        display:none;
    }
    .calendar-day:has(.event-title){
        display:block;
    }

    .klasbord-nieuws.grid{
        grid-template-columns: 1fr;
    }
}




.klasbordagenda .agenda-list {
    list-style: none;
    padding: 0;
    margin: 0;
}
.agenda-item {
    display: flex;
    align-items: center;
    color: white;
    border-radius: 8px;
    padding: 10px 0;
    margin-bottom: 12px;
}
.agenda-icon {
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    margin-right: 16px;
    background-color: #fff;
    height: 60px;
    width: 60px;
    border-radius: 0 20px 0px 20px;
}
.agenda-day {
    font-size: 18px;
    font-weight: 700;
    line-height: 24px;
    color:var(--blauw);
}
.agenda-month {
    font-size: 11px;
    line-height:13px;
    text-transform: lowercase;
    color:var(--blauw);
}
.agenda-content {
    display: flex;
    flex-direction: column;
    width: calc(100% - 70px);
}
.agenda-title {
    font-weight: 700;
    font-size: 18px;
    color: var(--oranje);
}
.agenda-time {
    font-size: 16px;
    color: #ffffff;
}


.agenda-month-list .agenda-header{
    display:flex;
    justify-content: space-between;
}

.agenda-month-list .agenda-list{
    padding-left:0;
}

.agenda-month-list .agenda-header a{
    background-color:var(--oranje);
    color: #fff;
    border:1px solid var(--oranje);
    font-size: 15px;
    padding: 5px 10px;
    border-radius: 0px 10px 0px 10px;
    text-decoration: none;
    height:34.5px;
}
.agenda-month-list .agenda-header a:hover{
    background-color: #fff;
    color:var(--lichtoranje)
}
.agenda-month-list .agenda-header h2{
    margin-top:0;
}
.agenda-month-list .agenda-icon{
    background-color:var(--lichtoranje);
    color:#fff;
}
.agenda-month-list .agenda-icon .agenda-day,
.agenda-month-list .agenda-icon .agenda-month{
    color:#fff;
}
.agenda-month-list .agenda-time,
.agenda-month-list .agenda-description,
.agenda-month-list .agenda-groups{
    color:#444
}