/* Rigpa Kalender — v0.1.0 */

.rigpa-kalender-container { font-family: inherit; max-width: 100%; }

/* Typografie & Labels */
.rigpa-section-label { font-size: 11px; font-weight: 600; letter-spacing: .08em; text-transform: uppercase; color: #888; margin-bottom: 1rem; }
.rigpa-loading, .rigpa-empty, .rigpa-error { font-size: 14px; color: #888; padding: .5rem 0; }
.rigpa-error { color: #c00; }
.rigpa-divider { border: none; border-top: 1px solid #eee; margin: 1.5rem 0; }

/* Badges */
.rigpa-badge { display: inline-flex; align-items: center; gap: 4px; font-size: 11px; font-weight: 500; padding: 2px 8px; border-radius: 4px; }
.rigpa-badge i { font-size: 11px; }
.rigpa-badge--presenz { background: #f1f0f0; color: #555; }
.rigpa-badge--online  { background: #e6f1fb; color: #185fa5; }
.rigpa-badge--hybrid  { background: #faeeda; color: #854f0b; }
.rigpa-badge--highlight { background: #eaf3de; color: #3b6d11; }

/* Highlights */
.rigpa-highlight-section { margin-bottom: 1rem; }
.rigpa-highlights-grid { display: grid; grid-template-columns: repeat(auto-fit, minmax(200px, 1fr)); gap: 12px; margin-bottom: 1.5rem; }
.rigpa-highlight-card { background: #fff; border: 1px solid #eee; border-radius: 10px; padding: 1rem 1.25rem; display: flex; flex-direction: column; gap: 8px; }
.rigpa-highlight-card--featured { border: 2px solid #185fa5; }
.rigpa-highlight-badges { display: flex; flex-wrap: wrap; gap: 6px; }
.rigpa-highlight-title { font-size: 14px; font-weight: 600; color: #1a1a1a; line-height: 1.4; margin: 0; }
.rigpa-highlight-meta { font-size: 12px; color: #666; display: flex; align-items: center; gap: 5px; }
.rigpa-highlight-meta i { font-size: 13px; }
.rigpa-highlight-action { margin-top: auto; }

/* Slots (mehrtägige Events) */
.rigpa-slots { margin-top: 6px; padding: 6px 10px; background: #f9f9f9; border-radius: 6px; }
.rigpa-slot-row { display: flex; gap: 10px; font-size: 12px; padding: 2px 0; }
.rigpa-slot-day  { color: #666; min-width: 90px; }
.rigpa-slot-time { color: #1a1a1a; font-weight: 500; }

/* Buttons */
.rigpa-btn { display: inline-flex; align-items: center; gap: 5px; font-size: 13px; padding: 7px 14px; border: 1px solid #ccc; border-radius: 6px; text-decoration: none; color: #1a1a1a; background: #fff; cursor: pointer; transition: background .15s; }
.rigpa-btn:hover { background: #f5f5f5; }
.rigpa-btn--zoom { border-color: #185fa5; color: #185fa5; }
.rigpa-btn--sm { font-size: 12px; padding: 5px 10px; }
.rigpa-no-reg { font-size: 11px; color: #aaa; }

/* Filter */
.rigpa-filter { display: flex; align-items: center; flex-wrap: wrap; gap: 8px; margin-bottom: 1.25rem; }
.rigpa-filter-label { font-size: 13px; color: #666; display: flex; align-items: center; gap: 4px; }
.rigpa-chips { display: flex; flex-wrap: wrap; gap: 6px; }
.rigpa-chip { font-size: 12px; padding: 4px 12px; border-radius: 20px; border: 1px solid #ddd; background: #fff; cursor: pointer; color: #555; transition: all .15s; }
.rigpa-chip:hover { border-color: #999; color: #1a1a1a; }
.rigpa-chip--active { background: #1a1a1a; color: #fff; border-color: #1a1a1a; }

/* Zeitgruppen */
.rigpa-time-group { margin-bottom: 1.5rem; }
.rigpa-time-label { font-size: 12px; font-weight: 600; color: #888; padding-bottom: 8px; border-bottom: 1px solid #eee; margin-bottom: 4px; }

/* Event-Zeilen */
.rigpa-event-row { display: flex; align-items: flex-start; gap: 12px; padding: 10px 0; border-bottom: 1px solid #f0f0f0; }
.rigpa-event-date { min-width: 40px; text-align: center; padding-top: 2px; }
.rigpa-event-day   { display: block; font-size: 20px; font-weight: 600; color: #1a1a1a; line-height: 1; }
.rigpa-event-month { display: block; font-size: 10px; color: #aaa; text-transform: uppercase; letter-spacing: .05em; }
.rigpa-event-info  { flex: 1; }
.rigpa-event-title { font-size: 13px; font-weight: 600; color: #1a1a1a; margin-bottom: 3px; display: flex; align-items: center; gap: 6px; }
.rigpa-event-meta  { font-size: 12px; color: #888; display: flex; align-items: center; flex-wrap: wrap; gap: 4px; }
.rigpa-event-action { align-self: center; }
.rigpa-recurring-icon { font-size: 12px; color: #aaa; }

/* Dark Mode */
@media (prefers-color-scheme: dark) {
    .rigpa-highlight-card { background: #1e1e1e; border-color: #333; }
    .rigpa-highlight-card--featured { border-color: #378add; }
    .rigpa-highlight-title, .rigpa-event-title, .rigpa-event-day { color: #f0f0f0; }
    .rigpa-highlight-meta, .rigpa-event-meta, .rigpa-filter-label { color: #aaa; }
    .rigpa-badge--presenz { background: #2a2a2a; color: #bbb; }
    .rigpa-badge--online  { background: #0c1e30; color: #85b7eb; }
    .rigpa-badge--hybrid  { background: #2a1e0a; color: #ef9f27; }
    .rigpa-badge--highlight { background: #1a2e0a; color: #97c459; }
    .rigpa-slots { background: #2a2a2a; }
    .rigpa-slot-day { color: #aaa; }
    .rigpa-slot-time { color: #f0f0f0; }
    .rigpa-btn { background: #2a2a2a; border-color: #444; color: #f0f0f0; }
    .rigpa-btn:hover { background: #333; }
    .rigpa-chip { background: #2a2a2a; border-color: #444; color: #bbb; }
    .rigpa-chip--active { background: #f0f0f0; color: #1a1a1a; border-color: #f0f0f0; }
    .rigpa-time-label { color: #777; border-color: #333; }
    .rigpa-event-row { border-color: #2a2a2a; }
    .rigpa-divider { border-color: #333; }
    .rigpa-section-label { color: #666; }
}

/* Pretix-Quell-Badge */
.rigpa-badge--pretix { background: #f0eafa; color: #533ab7; }
@media (prefers-color-scheme: dark) {
    .rigpa-badge--pretix { background: #1e1530; color: #afa9ec; }
}
