.farina-regiondo-calendar {
    --farina-green: #1c493d;
    --farina-border: #dedede;
    --farina-muted: #666;
    margin-block: 2rem;
}
.farina-regiondo-day { margin-bottom:2rem; }
.farina-regiondo-day__title {
    margin-top: 0;
    margin-bottom: 1em;
}
.farina-regiondo-events { border-top:1px solid var(--farina-border); }
.farina-regiondo-event {
    display:grid;
    grid-template-columns:72px 1fr auto;
    gap:1rem;
    align-items:center;
    padding:1rem 0;
    border-bottom:1px solid var(--farina-border);
}
.farina-regiondo-event__time { font-variant-numeric:tabular-nums; font-weight:700; }
.farina-regiondo-event__title { font-weight:600; }
.farina-regiondo-event__meta { display:flex; flex-wrap:wrap; gap:.65rem; margin-top:.35rem; font-size:.875rem; color:var(--farina-muted); }
.farina-regiondo-event__category { color:var(--farina-green); }
.farina-regiondo-seats.is-low { color:#b42318; font-weight:600; }
.farina-regiondo-event__book { white-space:nowrap; }
.farina-regiondo-empty { padding:1rem; border:1px solid var(--farina-border); }
.farina-regiondo-updated { color:var(--farina-muted); font-size:.8rem; margin-top:1.25rem; }
@media (max-width: 650px) {
            .farina-regiondo-event { grid-template-columns:56px 1fr; }
    .farina-regiondo-event__book { grid-column:2; justify-self:start; }
}

.farina-regiondo-event.is-full .farina-regiondo-event__book.is-disabled {
    cursor: default;
    pointer-events: none;
    opacity: 0.65;
}

.farina-regiondo-loader {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: .75em;
    min-height: 4em;
    margin: 1em 0;
}
.farina-regiondo-loader__spinner {
    width: 1em;
    height: 1em;
    border: .15em solid currentColor;
    border-right-color: transparent;
    border-radius: 50%;
    animation: farina-regiondo-spin .7s linear infinite;
}
.farina-regiondo-loader.is-error .farina-regiondo-loader__spinner {
    display: none;
}
@keyframes farina-regiondo-spin {
    to { transform: rotate(360deg); }
}

.farina-regiondo-event.is-full {
    opacity: .35;
}
