/*
 * Obsah článku vložený z redakčního systému.
 * Selektory jsou omezené na .article-body, aby neovlivnily okolní prvky stránky.
 */

.article-body {
    overflow-wrap: anywhere;
}

.article-body > :first-child {
    margin-top: 0;
}

.article-body > :last-child {
    margin-bottom: 0;
}

/* Odkazy */
.article-body a {
    color: #168454;
    font-weight: 500;
    text-decoration: underline;
    text-decoration-color: rgba(22, 132, 84, 0.45);
    text-decoration-thickness: 1px;
    text-underline-offset: 3px;
    transition: color 0.18s ease, text-decoration-color 0.18s ease;
}

.article-body a:visited {
    color: #496f5d;
    text-decoration-color: rgba(73, 111, 93, 0.45);
}

.article-body a:hover {
    color: #0f6f45;
    text-decoration-color: currentColor;
}

.article-body a:focus-visible {
    color: #0f6f45;
    border-radius: 2px;
    outline: 2px solid #17a05e;
    outline-offset: 3px;
    text-decoration-color: currentColor;
}

/* Nadpisy vytvořené v editoru */
.article-body h2,
.article-body h3,
.article-body h4,
.article-body h5,
.article-body h6 {
    margin: 1.8em 0 0.65em;
    color: #333;
    font-family: Roboto, sans-serif;
    font-weight: 700;
    line-height: 1.3;
}

.article-body h2 {
    padding-bottom: 0.35em;
    border-bottom: 1px solid #e3e8e5;
    font-size: 1.55em;
}

.article-body h3 { font-size: 1.3em; }
.article-body h4 { font-size: 1.12em; }
.article-body h5,
.article-body h6 { font-size: 1em; }

/* Odstavce a seznamy */
.article-body p,
.article-body ul,
.article-body ol,
.article-body dl,
.article-body blockquote,
.article-body table,
.article-body figure,
.article-body pre {
    margin-top: 0;
    margin-bottom: 23px;
}

.article-body ul,
.article-body ol {
    padding-left: 1.6em;
}

.article-body li {
    margin-bottom: 0.4em;
}

.article-body li::marker {
    color: #168454;
    font-weight: 700;
}

.article-body dt {
    color: #333;
    font-weight: 700;
}

.article-body dd {
    margin: 0 0 0.8em 1.4em;
}

.article-body blockquote {
    padding: 14px 18px;
    border-left: 4px solid #17a05e;
    background: #f3f8f5;
    color: #425047;
    font-style: italic;
}

.article-body blockquote > :last-child {
    margin-bottom: 0;
}

.article-body hr {
    height: 1px;
    margin: 32px 0;
    border: 0;
    background: #e3e8e5;
}

/* Tabulky */
.article-body table {
    width: 100%;
    border: 1px solid #dce4df;
    border-collapse: collapse;
    border-spacing: 0;
    background: #fff;
    color: #4d5651;
    font-size: 0.94em;
    line-height: 1.5;
}

.article-body caption {
    padding: 0 0 10px;
    color: #555;
    font-family: Roboto, sans-serif;
    font-size: 0.92em;
    font-weight: 500;
    text-align: left;
}

.article-body th,
.article-body td {
    padding: 11px 13px;
    border: 1px solid #dce4df;
    text-align: left;
    vertical-align: top;
}

.article-body thead th {
    border-color: #14794e;
    background: #168454;
    color: #fff;
    font-family: Roboto, sans-serif;
    font-weight: 700;
}

.article-body tbody th {
    background: #edf6f1;
    color: #35483e;
    font-weight: 700;
}

.article-body tbody tr:nth-child(even) td {
    background: #f7faf8;
}

.article-body tbody tr:hover td,
.article-body tbody tr:hover th {
    background: #eef7f2;
}

.article-body tfoot td,
.article-body tfoot th {
    background: #f0f3f1;
    color: #3f4944;
    font-weight: 700;
}

.article-body td > :last-child,
.article-body th > :last-child {
    margin-bottom: 0;
}

/* Obrázky a další vložená média */
.article-body img {
    max-width: 100%;
    height: auto;
}

.article-body figure img {
    display: block;
}

.article-body figcaption {
    margin-top: 8px;
    color: #888;
    font-size: 0.84em;
    line-height: 1.5;
}

.article-body iframe,
.article-body video {
    max-width: 100%;
}

.article-body code {
    padding: 0.12em 0.35em;
    border-radius: 2px;
    background: #f0f3f1;
    color: #3d5146;
    font-size: 0.9em;
}

.article-body pre {
    max-width: 100%;
    overflow-x: auto;
    padding: 16px 18px;
    background: #27312c;
    color: #f5f7f6;
    font-size: 0.88em;
    line-height: 1.6;
}

.article-body pre code {
    padding: 0;
    background: transparent;
    color: inherit;
}

@media (max-width: 767px) {
    .article-body table {
        display: block;
        max-width: 100%;
        overflow-x: auto;
        -webkit-overflow-scrolling: touch;
    }

    .article-body th,
    .article-body td {
        min-width: 120px;
        padding: 9px 10px;
    }
}

@media print {
    .article-body a {
        color: #000 !important;
        text-decoration: underline !important;
    }

    .article-body table {
        break-inside: avoid;
        color: #000;
        font-size: 9pt;
    }

    .article-body thead th {
        border-color: #777;
        background: #e8e8e8 !important;
        color: #000 !important;
    }
}
