.op-leaflet-kartta {
    --op-map-color: var(--wp--preset--color--primary);
}
.op-meta-rivi {
    display: flex;
    margin-bottom: 1rem;
    border-bottom: 1px solid rgba(0,0,0,0.05);
    padding-bottom: 1rem;
}
.framed{
    color: white;
    background-color: #d68061;
    border-radius: 0.15rem;
    -webkit-border-radius: 0.15rem;
    -moz-border-radius: 0.15rem;
    padding: 0.15em;
}

.op-meta-rivi:last-of-type {
    border-bottom: none;
    margin-bottom: 0;
    padding-bottom: 0;
}
.op-meta-label {
    min-width: 140px;
    font-weight: bold;
    color: var(--wp--preset--color--primary, #d68061);
}
.op-meta-arvo {
    flex: 1;
}
.c-emergency-red {
    color: #d9534f;
}
.tapahtuma-kartta-kooste {
    margin-top: 1.5rem;
    border-radius: 4px;
    overflow: hidden;
}
@media (max-width: 600px) {
    .op-meta-rivi {
        flex-direction: column;
        gap: 0.25rem;
    }
}

/* Ohjelmakoosteen tyylit */
.op-ohjelmakooste {
    display: grid;
    /* Luo automaattisesti vähintään 300px leveitä sarakkeita vierekkäin.
       Jos näyttö on kapea, ne putoavat automaattisesti allekkain. */
    grid-template-columns: repeat(auto-fit, minmax(300px, 1fr));
    gap: 1.5rem;
    align-items: start; /* Estää sarakkeita venymästä turhaan pystysuunnassa */

    font-family: var(--wp--preset--font-family--body, inherit);
    color: var(--wp--preset--color--text, inherit);
}

.op-paiva-otsikko {
    margin: .5rem;
}
.op-divider {
    background: var(--wp--preset--gradient--rainbow);
    min-height: 0.4em;
}
.op-tapahtuma-rivi {
    display: flex;
    gap: 1.5rem;
    padding: 1rem;
    border-top: 1px solid rgba(0,0,0,0.1);
}
.op-tapahtuma-aika {
    min-width: 60px;
    font-variant-numeric: tabular-nums;
    font-weight: 600;
}
.op-tapahtuma-otsikko {
    text-align: left;
}
.op-aika-alkaa {
    color: var(--wp--preset--color--primary, #d68061);
}
.op-aika-loppuu {
    opacity: 0.33;
}
.op-tapahtuma-tiedot h4 {
    margin: 0 0 0.25rem 0;
    font-size: 1.25rem;
}
.op-paiva-ryhma{
    background-color: var(--wp--preset--color--white, #fff);
    border-radius: 1rem;
    /* box-shadow: 0px 0px 35px 0px rgba(0,0,0,0.15); */
}
.op-tapahtuma-tiedot a {
    text-decoration: none;
    color: inherit;
}
.op-tapahtuma-tiedot a:hover {
    text-decoration: underline;
}
.op-tapahtuma-paikka {
    font-size: 0.9em;
    opacity: 0.8;
}

@media (max-width: 600px) {
    .op-tapahtuma-rivi {
        gap: 0.25rem;
    }
}