/* SIB Termine — externe Events (öffentliche Anzeige). Scoped auf /termine-extern-konzept/. */
.tip{font-family:Inter,-apple-system,"Segoe UI",Arial,sans-serif;color:#1a1d22;max-width:1180px;margin:0 auto;padding:8px 16px 48px}
.tip .tip-i{width:15px;height:15px;stroke:currentColor;stroke-width:2;fill:none;stroke-linecap:round;stroke-linejoin:round;vertical-align:-2px}
.tip-empty{color:#6b7280;font-size:15px;text-align:center;padding:48px 16px;background:#f8f8f9;border:1px solid #e6e7ea;border-radius:8px}

.tip-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(330px,1fr));gap:22px}

.tip-card{position:relative;display:flex;flex-direction:column;background:#fff;border:1px solid #e7e7ea;border-radius:8px;overflow:hidden;box-shadow:0 1px 4px rgba(0,0,0,.05);transition:box-shadow .14s,transform .14s}
.tip-card:hover{box-shadow:0 10px 28px rgba(0,0,0,.11);transform:translateY(-2px)}

/* Kennzeichnung „Externe Veranstaltung" */
.tip-flag{position:absolute;top:12px;left:12px;z-index:2;display:inline-flex;align-items:center;gap:5px;font-size:11px;font-weight:800;letter-spacing:.03em;color:#fff;background:#6b21a8;border-radius:4px;padding:4px 9px;box-shadow:0 2px 8px rgba(0,0,0,.25)}
.tip-flag .tip-i{width:13px;height:13px}

/* Banner der Quelle */
.tip-banner{aspect-ratio:2/1;background:#eef0f2;overflow:hidden}
.tip-banner img{width:100%;height:100%;object-fit:cover;display:block}
.tip-banner--ph{display:flex;align-items:center;justify-content:center;background:linear-gradient(120deg,#1a1d22 0 60%,#D50C2F 60% 100%)}
.tip-banner--ph span{color:#fff;font-weight:800;font-size:15px;padding:0 16px;text-align:center;text-shadow:0 1px 6px rgba(0,0,0,.4)}

.tip-body{display:flex;flex-direction:column;gap:9px;padding:16px 18px 18px;flex:1}

/* Datums-Knoten (Timeline-Sprache) */
.tip-datebar{display:flex;align-items:center;gap:11px}
.tip-daynode{display:flex;flex-direction:column;align-items:center;justify-content:center;width:50px;height:50px;flex:0 0 auto;background:#D50C2F;color:#fff;border-radius:8px;line-height:1}
.tip-daynode .tip-d{font-size:20px;font-weight:800;font-variant-numeric:tabular-nums}
.tip-daynode .tip-m{font-size:10.5px;font-weight:700;text-transform:uppercase;letter-spacing:.04em;margin-top:2px}
.tip-dateline{display:flex;flex-direction:column;gap:2px}
.tip-dl-1{font-size:13.5px;font-weight:700;color:#374151;font-variant-numeric:tabular-nums}
.tip-dl-2{font-size:12.5px;color:#6b7280;font-variant-numeric:tabular-nums;display:inline-flex;align-items:center;gap:5px}

.tip-title{font-size:17px;font-weight:800;line-height:1.28;margin:2px 0 0;letter-spacing:-.01em}
.tip-loc{display:inline-flex;align-items:center;gap:6px;font-size:13px;color:#475569;font-weight:600;margin:0}
.tip-loc .tip-i{color:#D50C2F}
.tip-desc{font-size:13.5px;color:#4b5563;line-height:1.55;margin:0}

.tip-org{display:flex;align-items:flex-start;gap:7px;font-size:12.5px;color:#6b21a8;font-weight:600;margin:2px 0 0}
.tip-org .tip-i{color:#6b21a8;flex:0 0 auto;margin-top:1px}
.tip-org a{color:#6b21a8;font-weight:800;text-decoration:none}
.tip-org a:hover{text-decoration:underline}

.tip-cta{display:inline-flex;align-items:center;justify-content:center;gap:6px;margin-top:auto;align-self:flex-start;font-weight:800;font-size:14px;color:#fff;background:#D50C2F;border-radius:8px;padding:11px 18px;text-decoration:none;transition:background .12s}
.tip-cta:hover{background:#bd0a29;color:#fff}
.tip .tip-cta:focus-visible{outline:2px solid #1a1d22;outline-offset:2px}

.tip a:focus-visible,.tip-card:focus-visible{outline:2px solid #D50C2F;outline-offset:2px;border-radius:4px}

@media(max-width:560px){
  .tip-grid{grid-template-columns:1fr}
  .tip-cta{align-self:stretch}
}
@media(prefers-reduced-motion:reduce){
  .tip-card{transition:none}
  .tip-card:hover{transform:none}
}
