.vjm-akce {
--vjm-modra: #2e7bbe;
--vjm-ruzova: #e83b68;
--vjm-tyrkys: #03c4eb;
--vjm-oranz: #f2a33a;
--vjm-seda: #6b7280;
--vjm-linka: #e5e7eb;
--vjm-typ: var(--vjm-modra);
margin: 0 0 2em;
}
.vjm-typ-lokalni-setkani { --vjm-typ: var(--vjm-modra); }
.vjm-typ-akce-pro-verejnost { --vjm-typ: var(--vjm-ruzova); }
.vjm-typ-debata { --vjm-typ: var(--vjm-tyrkys); }
.vjm-typ-dobre-rano { --vjm-typ: var(--vjm-oranz); }
.vjm-akce__den { margin: 0 0 2em; }
.vjm-akce__datum {
font-size: 1.15em;
margin: 0 0 0.75em;
padding: 0 0 0.35em;
border-bottom: 3px solid var(--vjm-ruzova);
text-transform: none;
letter-spacing: 0;
}
.vjm-akce__datum span { text-transform: capitalize; }
.vjm-akce__item {
display: flex;
gap: 1.25em;
padding: 1em 0;
border-bottom: 1px solid var(--vjm-linka);
border-left: 4px solid var(--vjm-typ);
padding-left: 1em;
margin: 0 0 0.75em;
background: #fff;
}
.vjm-akce__cas {
flex: 0 0 7.5em;
font-weight: 700;
color: var(--vjm-modra);
line-height: 1.3;
}
.vjm-akce__den-kratky { display: block; color: var(--vjm-ruzova); text-transform: capitalize; }
.vjm-akce__hodiny { display: block; }
.vjm-akce__obsah { flex: 1 1 auto; min-width: 0; }
.vjm-akce__typ {
display: inline-block;
font-size: 0.72em;
font-weight: 700;
letter-spacing: 0.06em;
text-transform: uppercase;
color: #fff;
background: var(--vjm-typ);
border-radius: 3px;
padding: 0.15em 0.6em;
margin: 0 0 0.4em;
}
.vjm-akce__nazev {
margin: 0 0 0.25em;
font-size: 1.1em;
line-height: 1.3;
text-transform: none;
letter-spacing: 0;
}
.vjm-akce__nazev a { color: #222; font-weight: 700; text-decoration: none; }
.vjm-akce__nazev a:hover { color: var(--vjm-modra); }
.vjm-akce__misto { color: var(--vjm-seda); margin: 0 0 0.4em; }
.vjm-akce__popis { margin: 0.25em 0 0.5em; }
.vjm-akce__kandidati { display: flex; flex-wrap: wrap; align-items: center; gap: 0.5em 0.75em; margin: 0.4em 0 0.5em; }
.vjm-akce__kandidati-label { font-size: 0.85em; color: var(--vjm-seda); }
.vjm-akce__kandidat {
display: inline-flex;
align-items: center;
gap: 0.4em;
font-size: 0.9em;
font-weight: 600;
color: var(--vjm-modra);
text-decoration: none;
background: #eef5fb;
border-radius: 999px;
padding: 0.15em 0.7em 0.15em 0.15em;
}
.vjm-akce__kandidat:hover { background: #dcebf7; }
.vjm-akce__kandidat-foto { width: 28px; height: 28px; border-radius: 50%; object-fit: cover; }
.vjm-akce__kandidat:not(:has(.vjm-akce__kandidat-foto)) { padding-left: 0.7em; }
.vjm-akce__odkazy { display: flex; flex-wrap: wrap; gap: 0.5em; margin-top: 0.4em; }
.vjm-akce__odkaz {
display: inline-block;
font-size: 0.8em;
font-weight: 600;
text-transform: uppercase;
letter-spacing: 0.04em;
color: var(--vjm-modra);
border: 1px solid var(--vjm-modra);
border-radius: 3px;
padding: 0.3em 0.8em;
text-decoration: none;
}
.vjm-akce__odkaz:hover { background: var(--vjm-modra); color: #fff; }
.vjm-akce__item--probehla { opacity: 0.7; }
.vjm-akce__probehlo { margin: 1.5em 0; border-top: 1px solid var(--vjm-linka); padding-top: 1em; }
.vjm-akce__probehlo summary { cursor: pointer; font-weight: 700; color: var(--vjm-seda); margin-bottom: 1em; }
.vjm-akce__pata { margin-top: 1.5em; font-size: 0.9em; color: var(--vjm-seda); }
.vjm-akce__poznamka { margin: 0 0 0.75em; font-style: italic; }
.vjm-akce__prazdne { font-style: italic; }
.vjm-akce__zpet { margin-top: 2em; } .vjm-akce--karty { display: grid; grid-template-columns: repeat(3, 1fr); gap: 1.25em; margin: 0; }
.vjm-akce--karty .vjm-akce__item {
flex-direction: column;
gap: 0.5em;
border: 1px solid var(--vjm-linka);
border-top: 5px solid var(--vjm-typ);
border-left: 1px solid var(--vjm-linka);
border-radius: 6px;
padding: 1.1em 1.25em 1.25em;
margin: 0;
box-shadow: 0 6px 18px rgba(0, 0, 0, 0.05);
}
.vjm-akce--karty .vjm-akce__cas { flex: 0 0 auto; }
.vjm-akce--karty .vjm-akce__nazev { font-size: 1.05em; }
.section-akce { background: #f7f9fb; }
.section-akce .vjm-akce__vice { text-align: center; margin: 2em 0 0; } .vjm-akce--detail { border-left: 4px solid var(--vjm-typ); padding-left: 1em; margin-bottom: 1.5em; }
.vjm-akce__detaily { display: grid; grid-template-columns: 6em 1fr; gap: 0.35em 1em; margin: 0.5em 0 0.75em; }
.vjm-akce__detaily dt { font-weight: 700; color: var(--vjm-modra); }
.vjm-akce__detaily dd { margin: 0; }
@media (max-width: 767px) {
.vjm-akce__item { flex-direction: column; gap: 0.35em; }
.vjm-akce__cas { flex-basis: auto; }
.vjm-akce--karty { grid-template-columns: 1fr; }
.vjm-akce__detaily { grid-template-columns: 1fr; gap: 0.1em; }
.vjm-akce__detaily dd { margin-bottom: 0.5em; }
}