.navia-agenda{
  --na-red:#814C3B;
  --na-red-dark:#6A3E30;
  --na-pill-bg:rgba(129,76,59,.09);
  --na-ink:#2b2b2b;
  --na-muted:#8a8a8a;
  --na-line:#ececec;
  --na-card-radius:16px;
  color:var(--na-ink);
  width:100%;
  max-width:100%;
  margin:0 auto;
  font-family:"Source Sans 3",sans-serif;
}
.navia-agenda *{box-sizing:border-box}

.na-loading{padding:40px 0;text-align:center;color:var(--na-muted)}

/* ---------- Calendario ---------- */
.na-cal-head{
  display:flex;align-items:center;justify-content:space-between;
  padding:8px 6px 22px;
}
.na-month{
  flex:1;text-align:center;
  font-family:'Playfair Display',Georgia,serif;
  font-size:30px;font-weight:600;color:var(--na-red);
  letter-spacing:.2px;
}
.na-nav{
  border:1px solid var(--na-line);background:#fff;cursor:pointer;
  width:60px;height:60px;border-radius:50%;
  display:flex;align-items:center;justify-content:center;
  color:var(--na-red);transition:background .15s,border-color .15s,box-shadow .15s;
  flex:0 0 auto;
}
.na-nav:hover{background:var(--na-red);color:#fff;border-color:var(--na-red);box-shadow:0 6px 16px rgba(129,76,59,.22)}
.na-nav svg{width:28px;height:28px}

.na-days{
  display:flex;gap:10px;overflow-x:auto;
  padding:4px 2px 18px;scroll-behavior:smooth;
  -webkit-overflow-scrolling:touch;
}
.na-days::-webkit-scrollbar{height:8px}
.na-days::-webkit-scrollbar-thumb{background:#e0e0e0;border-radius:4px}
.na-day{
  flex:0 0 auto;min-width:74px;
  border:0;background:transparent;cursor:pointer;
  display:flex;flex-direction:column;align-items:center;gap:9px;
  padding:14px 10px 14px;border-radius:16px;
  transition:background .15s,color .15s;
  position:relative;font-family:inherit;
}
.na-day .na-wd{font-size:14px;color:var(--na-muted);text-transform:uppercase;letter-spacing:.5px}
.na-day .na-dn{font-size:24px;color:var(--na-ink);font-weight:500;line-height:1}
.na-day .na-dot{
  width:7px;height:7px;border-radius:50%;background:var(--na-red);
  margin-top:2px;
}
.na-day.has-events{background:var(--na-pill-bg)}
.na-day:hover{background:rgba(129,76,59,.14)}
.na-day.is-selected{background:var(--na-red)}
.na-day.is-selected .na-wd,
.na-day.is-selected .na-dn{color:#fff}
.na-day.is-selected .na-dot{background:#fff}
.na-day.no-events{cursor:default}
.na-day.no-events:hover{background:transparent}

/* ---------- Barra de filtro por día ---------- */
.na-filterbar{
  display:none;align-items:center;justify-content:space-between;gap:12px;
  margin:2px 4px 14px;padding:10px 14px;
  background:var(--na-pill-bg);border-radius:10px;font-size:14px;
}
.na-filterbar.show{display:flex}
.na-filterbar .na-seeall{
  border:0;background:var(--na-red);color:#fff;cursor:pointer;
  padding:7px 14px;border-radius:20px;font-size:13px;white-space:nowrap;
}
.na-filterbar .na-seeall:hover{background:var(--na-red-dark)}

/* ---------- Lista de eventos ---------- */
.na-list{display:flex;flex-direction:column;gap:20px;padding:2px 2px 8px}
.na-empty{padding:36px 4px;text-align:center;color:var(--na-muted);font-size:16px}

.na-card{
  display:flex;align-items:stretch;gap:0;
  background:#fff;border:1px solid var(--na-line);
  border-radius:var(--na-card-radius);overflow:hidden;
  box-shadow:0 1px 2px rgba(0,0,0,.03);
  transition:box-shadow .18s,transform .18s;
}
.na-card:hover{box-shadow:0 8px 24px rgba(0,0,0,.08);transform:translateY(-1px)}
.na-thumb{
  flex:0 0 168px;width:168px;align-self:stretch;
  background-size:cover;background-position:center;background-color:#f0f0f0;
  margin:18px 0 18px 18px;border-radius:12px;min-height:118px;
}
.na-body{flex:1;min-width:0;padding:22px 26px;display:flex;flex-direction:column;justify-content:center;gap:11px}
.na-pill{
  align-self:flex-start;background:var(--na-pill-bg);color:var(--na-red);
  font-size:13.5px;font-weight:600;padding:6px 15px;border-radius:20px;
  text-transform:capitalize;
}
.na-title{
  font-family:'Playfair Display',Georgia,serif;
  font-size:25px;font-weight:600;line-height:1.22;margin:0;color:var(--na-ink);
}
.na-title a{color:inherit;text-decoration:none}
.na-title a:hover{color:var(--na-red)}
.na-meta{display:flex;flex-wrap:wrap;gap:22px;font-size:15.5px;color:var(--na-muted)}
.na-meta span{display:inline-flex;align-items:center;gap:7px}
.na-meta .na-ic{width:17px;height:17px;flex:0 0 auto;opacity:.75}
.na-meta .na-loc{color:var(--na-red)}
.na-actions{display:flex;align-items:center;padding:0 24px 0 8px}
.na-add{
  border:0;background:var(--na-red);color:#fff;cursor:pointer;
  padding:14px 28px;border-radius:26px;font-size:15.5px;white-space:nowrap;
  transition:background .15s;font-family:inherit;text-decoration:none;display:inline-block;
}
.na-add:hover{background:var(--na-red-dark)}

/* ---------- Responsive ---------- */
@media (max-width:640px){
  .na-card{flex-wrap:wrap}
  .na-thumb{flex:0 0 100%;width:auto;margin:12px 12px 0;height:150px}
  .na-actions{width:100%;padding:0 16px 16px 16px}
  .na-add{width:100%}
  .na-meta{gap:12px}
  .na-day{min-width:48px}
}
