.pe1hud-agenda {
    width: 100%;
    max-width: 900px;
    margin: 20px auto;
    font-family: inherit;
}

.pe1hud-agenda-title {
    margin: 0 0 15px;
    font-size: 1.55rem;
    line-height: 1.3;
}

.pe1hud-agenda-list {
    display: grid;
    gap: 9px;
    margin: 0;
    padding: 0;
    list-style: none;
}

/*
 * De !important-regels zijn bewust beperkt tot de agenda zelf. Daarmee kunnen
 * algemene thema-instellingen de gekozen agenda-opmaak niet meer overschrijven.
 */
body #content .pe1hud-agenda .pe1hud-agenda-list .pe1hud-agenda-item,
body .pe1hud-agenda .pe1hud-agenda-list .pe1hud-agenda-item {
    position: relative;
    box-sizing: border-box;
    margin: 0;
    padding: 14px 16px;
    border: 1px solid var(--pe1hud-agenda-border, #d3d3d3) !important;
    background-color: var(--pe1hud-agenda-bg1, #fafafa) !important;
    background-image: none !important;
}

body #content .pe1hud-agenda .pe1hud-agenda-list .pe1hud-agenda-item:nth-child(even),
body .pe1hud-agenda .pe1hud-agenda-list .pe1hud-agenda-item:nth-child(even) {
    background-color: var(--pe1hud-agenda-bg2, #f1f1f1) !important;
}

body .pe1hud-agenda .pe1hud-agenda-date {
    display: block;
    margin: 0 0 7px;
    font-size: 1.05rem;
    font-weight: 700;
    line-height: 1.4;
    color: var(--pe1hud-agenda-date-color, #333333) !important;
}

body .pe1hud-agenda .pe1hud-agenda-month {
    display: inline-block;
    padding: 1px 5px;
    border-bottom: 2px solid currentColor;
}

body #content .pe1hud-agenda .pe1hud-agenda-text,
body .pe1hud-agenda .pe1hud-agenda-text {
    margin: 0;
    line-height: 1.55;
    color: var(--pe1hud-agenda-text-color, #333333) !important;
}

body #content .pe1hud-agenda .pe1hud-agenda-text + .pe1hud-agenda-text,
body .pe1hud-agenda .pe1hud-agenda-text + .pe1hud-agenda-text {
    margin-top: 2px;
}

body #content .pe1hud-agenda .pe1hud-agenda-list .pe1hud-agenda-item.is-current-month,
body .pe1hud-agenda .pe1hud-agenda-list .pe1hud-agenda-item.is-current-month {
    padding: 13px 15px;
    border: 2px solid var(--pe1hud-agenda-accent, #b44a18) !important;
    background-color: var(--pe1hud-agenda-current-bg, #fff8e8) !important;
    background-image: none !important;
    box-shadow: 0 2px 8px rgba(0, 0, 0, 0.08);
}

body #content .pe1hud-agenda .pe1hud-agenda-list .pe1hud-agenda-item.is-current-month:nth-child(even),
body .pe1hud-agenda .pe1hud-agenda-list .pe1hud-agenda-item.is-current-month:nth-child(even) {
    background-color: var(--pe1hud-agenda-current-bg, #fff8e8) !important;
}

body .pe1hud-agenda .pe1hud-agenda-item.is-current-month .pe1hud-agenda-date {
    color: var(--pe1hud-agenda-current-date-color, #913600) !important;
}

body .pe1hud-agenda .pe1hud-agenda-item.is-current-month .pe1hud-agenda-text {
    color: var(--pe1hud-agenda-current-text-color, #333333) !important;
}

body .pe1hud-agenda .pe1hud-agenda-item.is-current-month .pe1hud-agenda-month {
    padding: 2px 7px;
    border-bottom-color: var(--pe1hud-agenda-accent, #b44a18) !important;
    background-color: var(--pe1hud-agenda-accent, #b44a18) !important;
    background-image: none !important;
    color: #ffffff !important;
}

body .pe1hud-agenda .pe1hud-agenda-current-label {
    position: absolute;
    top: 10px;
    right: 12px;
    padding: 3px 7px;
    background-color: var(--pe1hud-agenda-accent, #b44a18) !important;
    background-image: none !important;
    color: #ffffff !important;
    font-size: 0.68rem;
    font-weight: 700;
    letter-spacing: 0.04em;
    text-transform: uppercase;
}

body .pe1hud-agenda-empty {
    padding: 14px 16px;
    border: 1px solid var(--pe1hud-agenda-border, #d3d3d3) !important;
    background-color: var(--pe1hud-agenda-bg1, #fafafa) !important;
    color: var(--pe1hud-agenda-text-color, #333333) !important;
}

@media (max-width: 600px) {
    body #content .pe1hud-agenda .pe1hud-agenda-list .pe1hud-agenda-item,
    body .pe1hud-agenda .pe1hud-agenda-list .pe1hud-agenda-item {
        padding: 12px;
    }

    body #content .pe1hud-agenda .pe1hud-agenda-list .pe1hud-agenda-item.is-current-month,
    body .pe1hud-agenda .pe1hud-agenda-list .pe1hud-agenda-item.is-current-month {
        padding: 11px;
    }

    body .pe1hud-agenda .pe1hud-agenda-current-label {
        position: static;
        display: table;
        margin: 0 0 8px;
    }

    body .pe1hud-agenda .pe1hud-agenda-date {
        font-size: 1rem;
    }
}
