/* Minimal, clean tweaks */
.card-hover:hover { transform: translateY(-2px); transition: transform .15s ease; }
img.thumb { object-fit: cover; width: 100%; height: 180px; border-radius: .5rem; }
.grid { display: grid; gap: 1rem; }
.grid-4 { grid-template-columns: repeat(auto-fill, minmax(220px, 1fr)); }

/* FullCalendar status badges */
.fc-badge {
  display: inline-block;
  font-size: 11px;
  line-height: 1;
  padding: .25rem .4rem;
  border-radius: .5rem;
  margin-left: .25rem;
}
.fc-badge-warning  { background: #fff3cd; color: #856404; }
.fc-badge-secondary{ background: #e2e3e5; color: #41464b; }
.fc-badge-danger   { background: #f8d7da; color: #842029; }
.fc-badge-info     { background: #cff4fc; color: #055160; }

/* Optische accenten per status */
.ev-cancelled .fc-event-title { text-decoration: line-through; opacity: .85; }
.ev-soldout   .fc-event-title { font-weight: 700; }
.ev-lastcall  .fc-event-title { font-style: italic; }
/* .ev-moved kan je eventueel een subtiele border geven */
.ev-moved { outline: 1px dashed rgba(255,193,7,.6); outline-offset: 1px; }

/* ===== Badges als 'stickers' ===== */
.fc-badge{
  display:inline-block;
  font-size:11px;
  line-height:1;
  padding:.28rem .48rem;
  border-radius:.35rem;
  text-transform:uppercase;
  font-weight:700;
  letter-spacing:.02em;
  border:2px solid transparent;
  text-decoration:none !important; /* nooit mee doorstrepen */
}

/* Kleurvarianten */
.fc-badge-danger   { background:#dc3545; border-color:#dc3545; color:#fff; }  /* GEANNULEERD */
.fc-badge-warning  { background:#ffc107; border-color:#ffc107; color:#212529; } /* VERPLAATST */
.fc-badge-secondary{ background:#6c757d; border-color:#6c757d; color:#fff; }  /* ALGEMEEN */
.fc-badge-info     { background:#0dcaf0; border-color:#0dcaf0; color:#052c65; }/* LAATSTE KAARTJES */

/* Alleen de titel doorstrepen als geannuleerd (in kalender) */
.ev-cancelled .fc-event-title { text-decoration:line-through; }

/* alleen header & footer full width maken */
.navbar > .container,
footer > .container {
  max-width: 50% !important;
  padding-left: 16px;
  padding-right: 16px;
}
.article-body img { max-width:100%; height:auto; }
.article-body table { width:100%; border-collapse: collapse; }
.article-body th, .article-body td { border:1px solid #dee2e6; padding:.5rem; }
}
.avatar { width: 40px; height: 40px; border-radius: 50%; object-fit: cover; }
.avatar-sm { width: 28px; height: 28px; border-radius: 50%; object-fit: cover; }
.avatar-xs { width: 22px; height: 22px; border-radius: 50%; object-fit: cover; }
}
