/* Daftar agenda publik — kartu modern, responsif */
.np-agenda { max-width: 780px; }
.np-agenda-h {
    font-size: 20px;
    margin: 1.4em 0 0.8em;
    padding-left: 12px;
    border-left: 4px solid #166534;
    line-height: 1.3;
}
.np-agenda-h:first-child { margin-top: 0; }
.np-agenda-empty {
    background: #f9fafb;
    border: 1px dashed #d1d5db;
    border-radius: 10px;
    padding: 22px;
    text-align: center;
    color: #6b7280;
}
.np-agenda-item {
    background: #fff;
    border: 1px solid #e5e7eb;
    border-radius: 14px;
    overflow: hidden;
    margin-bottom: 18px;
    box-shadow: 0 1px 4px rgba(0, 0, 0, 0.06);
}
.np-agenda-photo {
    width: 100%;
    height: auto;
    max-height: 320px;
    object-fit: cover;
    display: block;
}
.np-agenda-body { padding: 16px 18px 18px; }
.np-agenda-top { display: flex; gap: 14px; align-items: flex-start; }
.np-agenda-day {
    flex: none;
    width: 58px;
    text-align: center;
    background: #166534;
    color: #fff;
    border-radius: 10px;
    padding: 8px 0 7px;
}
.np-agenda-day .d { display: block; font-size: 24px; font-weight: 800; line-height: 1.1; }
.np-agenda-day .m { display: block; font-size: 12px; text-transform: uppercase; letter-spacing: 0.5px; }
.np-agenda-head { min-width: 0; }
.np-agenda-title { font-size: 18px; font-weight: 700; line-height: 1.4; margin-bottom: 4px; }
.np-agenda-when {
    display: flex;
    align-items: center;
    gap: 5px;
    font-size: 13px;
    color: #4b5563;
    flex-wrap: wrap;
}
.np-agenda-when svg { width: 15px; height: 15px; flex: none; }
.np-count {
    background: #fef3c7;
    color: #92400e;
    font-weight: 700;
    font-size: 11px;
    padding: 2px 9px;
    border-radius: 20px;
    white-space: nowrap;
}
.np-agenda-meta {
    display: flex;
    align-items: center;
    gap: 10px;
    margin-top: 10px;
    flex-wrap: wrap;
    font-size: 13px;
    color: #4b5563;
}
.np-chip {
    font-size: 11px;
    font-weight: 700;
    padding: 3px 11px;
    border-radius: 20px;
    white-space: nowrap;
}
.np-chip-rutin { background: #dcfce7; color: #166534; }
.np-chip-insidental { background: #fef3c7; color: #92400e; }
.np-chip-undangan-mwc { background: #dbeafe; color: #1e40af; }
.np-chip-undangan-pcnu { background: #f3e8ff; color: #6b21a8; }
.np-chip-lainnya { background: #f3f4f6; color: #4b5563; }
.np-loc { display: inline-flex; align-items: center; gap: 5px; }
.np-loc svg { width: 15px; height: 15px; flex: none; }
.np-agenda-desc {
    font-size: 14px;
    line-height: 1.65;
    color: #374151;
    margin-top: 10px;
    padding-top: 10px;
    border-top: 1px solid #f3f4f6;
}
.np-agenda-past { border: 1px solid #e5e7eb; border-radius: 10px; overflow: hidden; }
.np-agenda-pastrow {
    display: flex;
    gap: 12px;
    padding: 9px 14px;
    font-size: 13px;
    border-bottom: 1px solid #f3f4f6;
}
.np-agenda-pastrow:last-child { border-bottom: 0; }
.np-past-date { flex: none; color: #9ca3af; min-width: 200px; }
.np-past-title { color: #4b5563; }
@media (max-width: 600px) {
    .np-agenda-title { font-size: 16px; }
    .np-agenda-day { width: 50px; }
    .np-agenda-day .d { font-size: 20px; }
    .np-past-date { min-width: 0; flex: none; }
    .np-agenda-pastrow { flex-direction: column; gap: 2px; }
}
/* Mode gelap */
html[data-theme="dark"] .np-agenda-item { background: #161e19; border-color: #263129; }
html[data-theme="dark"] .np-agenda-title { color: #e7ede9; }
html[data-theme="dark"] .np-agenda-when, html[data-theme="dark"] .np-agenda-meta { color: #9db0a4; }
html[data-theme="dark"] .np-agenda-desc { color: #b9c6bc; border-top-color: #263129; }
html[data-theme="dark"] .np-agenda-empty { background: #131a15; border-color: #263129; color: #9db0a4; }
html[data-theme="dark"] .np-agenda-past { border-color: #263129; }
html[data-theme="dark"] .np-agenda-pastrow { border-bottom-color: #1d2620; }
html[data-theme="dark"] .np-past-title { color: #b9c6bc; }
