.kics-cal-legacy{font:inherit}

/* Filter */
.kics-cal-legacy .filter{display:flex;flex-wrap:wrap;gap:.5rem;margin:0 0 1rem}
.kics-cal-legacy .badge{
  display:inline-flex;align-items:center;gap:.4rem;
  padding:.35rem .7rem;border-radius:999px;
  background:#f3f4f6;border:1px solid #e5e7eb;
  font-weight:600;text-decoration:none;color:#111827;
}
.kics-cal-legacy .badge.is-active{background:#111827;color:#fff}
/* farbige Badges (inline style setzt --badge) */
.kics-cal-legacy .badge.is-colored{color:#fff;border-color:transparent;background:var(--badge,#111827)}

/* Karte */
.kics-cal-legacy .card{
  display:grid;grid-template-columns:90px 1fr;gap:.9rem;
  background:#fff;border:1px solid #e5e7eb;border-radius:12px;
  padding:.75rem; /* kleinerer Innenabstand */
  box-shadow:0 6px 16px rgba(0,0,0,.06); /* stärkerer Schatten */
  margin:0 0 .85rem;
}
.kics-cal-legacy .meta{display:flex;flex-direction:column;gap:.45rem}

/* Kopfzeile */
.kics-cal-legacy .head{display:flex;align-items:center;gap:1rem}
.kics-cal-legacy .title{font-weight:800;color:#111827;line-height:1.2}
.kics-cal-legacy .logo{height:auto;max-height:38px;max-width:300px;object-fit:contain;margin-left:auto}

.kics-cal-legacy .place{color:#374151;display:flex;align-items:center;gap:.45rem}
.kics-cal-legacy .place a{color:inherit;text-decoration:none;border-bottom:1px solid rgba(0,0,0,.06)}
.kics-cal-legacy .place a:hover{border-bottom-color:currentColor}
.kics-cal-legacy .desc{color:#4b5563;font-size:.95rem}

/* Datumsspalte links – Farbe kommt inline per style=background */
.kics-cal-legacy .datebox{display:flex;flex-direction:column;align-items:center;justify-content:center;color:#fff;border-radius:10px;width:90px}
.kics-cal-legacy .datebox .dow{font-size:.8rem;opacity:.95}
.kics-cal-legacy .datebox .day{font-size:1.8rem;font-weight:800;line-height:1}
.kics-cal-legacy .datebox .mon{font-size:.85rem;letter-spacing:.03em}
.kics-cal-legacy .datebox .year{font-size:.75rem;opacity:.9}

/* Zeit + Ticket/Reservierung nebeneinander */
.kics-cal-legacy .row-inline{display:flex;align-items:center;gap:.5rem}

/* Zeit-Pille */
.kics-cal-legacy .pill{
  display:inline-flex;align-items:center;gap:.35rem;
  border-radius:999px;background:#f3f4f6;border:1px solid #e5e7eb;
  padding:.2rem .55rem;font-weight:700;white-space:nowrap
}

/* Ticket/Reservierung – etwas kleiner + Puls */
.kics-cal-legacy .tix{
  display:inline-flex;align-items:center;gap:.3rem;
  border-radius:999px;padding:.14rem .5rem; /* kleiner */
  font-weight:800;font-size:.92rem;color:#fff;white-space:nowrap;position:relative
}
.kics-cal-legacy .tix.t{background:#4f46e5}
.kics-cal-legacy .tix.r{background:#dc2626}
.kics-cal-legacy .tix{box-shadow:0 0 0 0 rgba(0,0,0,0)}
.kics-cal-legacy .tix.t{animation:kics-pulse-t 1.8s ease-out infinite}
.kics-cal-legacy .tix.r{animation:kics-pulse-r 1.8s ease-out infinite}
@keyframes kics-pulse-t{0%{box-shadow:0 0 0 0 rgba(79,70,229,.45)}70%{box-shadow:0 0 0 12px rgba(79,70,229,0)}100%{box-shadow:0 0 0 0 rgba(79,70,229,0)}}
@keyframes kics-pulse-r{0%{box-shadow:0 0 0 0 rgba(220,38,38,.45)}70%{box-shadow:0 0 0 12px rgba(220,38,38,0)}100%{box-shadow:0 0 0 0 rgba(220,38,38,0)}}

/* POI-Icon */
.kics-cal-legacy .poi{
  width:16px;height:16px;display:inline-block;color:#B31312;background:currentColor;
  mask:url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 16 16"><path fill="white" d="M8 0a6 6 0 0 0-6 6c0 4.5 6 10 6 10s6-5.5 6-10a6 6 0 0 0-6-6zm0 8.5A2.5 2.5 0 1 1 8 3.5a2.5 2.5 0 0 1 0 5z"/></svg>') no-repeat center / contain
}

/* Kleinzeug */
.kics-cal-legacy .muted{color:#6b7280}

/* ==== Mobile Verbesserungen: Logo unter Titel, Badges unter Uhrzeit ==== */
@media (max-width: 600px) {
  .kics-cal-legacy .head{
    flex-direction: column;
    align-items: flex-start;
    gap: .25rem;
  }
  .kics-cal-legacy .logo{
    margin-left: 0;
    max-width: 160px;
    max-height: 44px;
  }
  .kics-cal-legacy .row-inline{
    flex-wrap: wrap;
  }
  .kics-cal-legacy .row-inline .pill{
    flex: 0 0 auto;
  }
  .kics-cal-legacy .row-inline .tix{
    flex: 1 1 100%;
    margin-top: .25rem;
  }
}
