:root {
    --portlet-bg: #f5f5f5;
    --portlet-border: #f5f5f5;
    --portlet-cell-padding: 4px 7px;
    --portlet-gap: 14px;
    --portlet-tile-min: 160px;
    --portlet-tile-col-gap: 28px;
    --portlet-badge-pdf: #d9463e;
    --portlet-badge-doc: #2b6cb0;
    --portlet-badge-xls: #2f855a;
    --portlet-badge-ppt: #c05621;
    --portlet-badge-image: #6b46c1;
    --portlet-badge-archiv: #8a6d1f;
    --portlet-badge-text: #4a5568;
    --portlet-badge-default: #6b7280;
}

.portlet {
    margin-bottom: var(--portlet-gap);
}

.portlet-content-photo a {
    display: block;
    border-radius: 0;
}

.portlet-content-photo-container img {
    display: block;
    object-fit: cover !important;
    max-width: 100%;
    border-radius: 0;
}

.portlet-content-subtitle,
.portlet-content-desc {
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

.portlet-content-desc {
    display: none;
}

.portlet .portlet-content-subtitle,
.portlet .portlet-content-desc {
    display: block;
}

.portlet-content-subtitle {
    padding-top: 7px;
    font-weight: bolder;
}

.portlet-content-desc {
    opacity: .7;
}

.portlet-content-gallery a {
    display: block;
    border-radius: 0;
}

.portlet-content-gallery-container {
    height: 150px;
    overflow: hidden;
    text-align: center;
    vertical-align: middle;
}
.portlet-gallery-thumbs,
.portlet-album-tiles {
    display: flex;
    flex-wrap: wrap;
    align-items: flex-start;
}
.portlet-album-tiles > .portlet-fixed-width-container {
    flex: 0 1 290px;
    min-width: 0;
    max-width: 100%;
}
.portlet-album-slozky {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(var(--portlet-tile-min), 1fr));
    gap: var(--portlet-gap);
    margin: 0;
    padding: 0;
    list-style: none;
}
.portlet-album-slozka > a {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 4px;
    height: 100%;
    padding: 14px 10px;
    background: var(--portlet-bg);
    border: 1px solid var(--portlet-border);
    text-align: center;
    text-decoration: none;
}
.portlet-album-slozka-ikona { flex: none; }
.portlet-album-slozka-nazev { overflow-wrap: anywhere; }
.portlet-album-slozka-pocet { font-size: 0.85em; opacity: 0.75; }

.portlet-content-full-gallery {
    width: 140px;
    height: 140px;
    overflow: hidden;
    text-align: center;
    vertical-align: middle;
    margin-right: 7px;
    margin-bottom: 7px;
    display: inline-block;
}
.portlet-album-expanded-gallery {
    margin-bottom: calc(var(--portlet-gap) * 1.5);
}

.portlet-album-expanded-gallery:last-child {
    margin-bottom: 0;
}

.portlet-content-full-gallery img {
    display: block;
    object-fit: cover !important;
    border-radius: 0;
    max-width: initial !important;
    max-height: 100% !important;
}

.portlet-content-gallery-container img {
    display: block;
    object-fit: cover !important;
    max-width: 100%;
    border-radius: 0;
}

.portlet-content-gallery.fixed-width {}

.portlet img {
    min-width: initial !important;
    border-radius: 0;
}

.portlet-fixed-width-container {
    display: inline-block;
    width: 290px;
    margin-right: var(--portlet-gap);
    margin-bottom: var(--portlet-gap);
}

.portlet-content-desc {
    max-width: 600px;
}

.portlet-dokument-container {
    display: table;
    table-layout: fixed;
    width: 100%;
    height: 24px;
    border-collapse: collapse;
}

.portlet-dokument-nazev {
    display: table-cell;
    font-weight: bolder;
}

.portlet-table-border {
    border-bottom: 2px solid var(--portlet-border);
    border-right: 2px solid var(--portlet-border);
}

.portlet-cell-border {
    border-top: 2px solid var(--portlet-border);
    border-left: 2px solid var(--portlet-border);
    padding: var(--portlet-cell-padding);
}

.portlet-row-bg:hover {
    background-color: var(--portlet-bg);
}

.portlet-dokument-prop {
    display: table-cell;
    width: 50px;
    text-align: right;
}

.portlet-dokument-prop small span {
    text-transform: lowercase !important;
}

.portlet-content-deska .portlet-dokument-prop {
    width: 72px;
}

.portlet-dokument-prop.portlet-wider-prop {
    width: 80px;
}
.portlet-content-deska .portlet-dokument-nazev {
    max-width: calc(100% - 79px);
}

.portlet-list-all .portlet-content-subtitle {
    margin-top: var(--portlet-gap);
}

.portlet-search-header {
    display: table;
    table-layout: fixed;
}

.portlet-search-col {
    display: table-cell;
    padding-right: var(--portlet-gap);
}

.portlet-w-160 {
    width: 160px;
}
.portlet_cancel_btn {
    display: inline-block;
    height: 24px;
    line-height: 24px;
    padding: 0 var(--portlet-gap);
    text-align: center;
    vertical-align: middle;
    background-color: var(--portlet-bg);
    border: 0;
    color: inherit;
    font: inherit;
    text-decoration: none;
    cursor: pointer;
}
.a3-deska-prazdno,
.a3-portlet-prazdno {
    padding: var(--portlet-gap) 0;
}
.a3-portlet-filtr-info {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: var(--portlet-gap);
    margin-bottom: var(--portlet-gap);
}
.a3-kat-zalozky {
    display: flex;
    flex-wrap: wrap;
    gap: var(--portlet-gap);
    margin-bottom: var(--portlet-gap);
}

.a3-kat-zalozka {
    text-decoration: none;
}

.search_by_cat {
    height: 24px;
}

.portlet-horizontal-spacer {
    width: 100%;
    display: table-cell;
}

.portlet-cat-prop {
    width: 190px;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
    text-align: left;
}

@media (max-width: 698px) {
    .portlet-search-header {
        display: block;
    }
    .portlet-search-col {
        margin-bottom: var(--portlet-gap);
        display: inline-block;
    }
    .portlet-cat-prop {
        display: none;
    }
    .portlet-dokument-container .portlet-wider-prop:nth-child(4) {
        display: none;
    }
}

@media (max-width: 480px) {
    .portlet-dokument-prop {
        width: 40px;
    }
    .portlet-dokument-prop.portlet-wider-prop {
        width: 60px;
    }
    .portlet-content-deska .portlet-dokument-nazev {
        max-width: calc(100% - 79px);
    }
}

.no-break-btns {
    width: 110px;
}

.no-break-btns button {
    display: inline-block;
}

.portlet-cell-border small {
    white-space: nowrap;
}

.portlet-table-header {
    background-color: var(--portlet-bg);
    font-weight: bolder;
}

.portlet-sidebar-box {
    background-color: var(--portlet-bg);
    padding: var(--portlet-gap);
    margin-bottom: var(--portlet-gap);
}

.portlet-sidebar-title {
    font-weight: bolder;
    padding-bottom: 7px;
}

.portlet .info-th {
    font-weight: bolder;
}

.portlet .info-title {
    font-size: 14px;
}

.portlet .info-box {
    padding: 7px;
}

.portlet-subheader {
    font-weight: bolder;
    margin-top: 7px;
    margin-bottom: 4px;
}

.portlet-subcontent {
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

.portlet-sidebar-box .portlet-content-photo img {
    max-height: 179px;
}

.portlet-content-photo-container.portlet-photo-align-center {
    text-align: center;
}

.portlet-content-photo-container.portlet-photo-align-center img {
    display: inline-block !important;
}

.portlet-content-photo-container.portlet-photo-align-right {
    text-align: right;
}

.portlet-content-photo-container.portlet-photo-align-right img {
    display: inline-block !important;
}

.portlet-sidebar-content .portlet-content-photo-container img {
    margin: 0 auto;
}
img[loading="lazy"] {
    opacity: 0;
    transition: opacity .3s ease;
}
img[loading="lazy"].loaded {
    opacity: 1;
}
.a3-info-urad {
    display: flex;
    flex-wrap: wrap;
    align-items: flex-start;
    gap: var(--portlet-gap);
}

.info_left_normal {
    flex: 1 1 320px;
    min-width: 0;
}

.info_right {
    flex: 0 1 210px;
    min-width: 0;
}

.info_novy_nadpis {
    display: inline-block;
    color: inherit;
    border-bottom: 1px solid var(--portlet-border);
    padding-bottom: 3px;
    margin-bottom: 4px;
}

.urad_lista_box {
    margin-bottom: var(--portlet-gap);
}

.urad_lista_box_nadpis {
    background-color: var(--portlet-bg);
    font-weight: bolder;
    font-size: 0.85em;
    padding: var(--portlet-cell-padding);
    margin-bottom: 4px;
}

.urad_lista_box_obsah {
    padding: 4px 0;
}

.urad_lista_box_obsah img {
    max-width: 100%;
    height: auto;
}
.a3-info-geo {
    margin: 0;
}

.a3-info-geo dt {
    font-weight: bolder;
}

.a3-info-geo dd {
    margin-left: 0;
    overflow-wrap: anywhere;
}
@media (max-width: 768px) {
    .info_left_normal,
    .info_right {
        flex-basis: 100%;
    }
}

.zastupitel_info {
    margin-right: var(--portlet-gap);
    overflow: hidden;
}

.povinf_heading {
    font-size: 1.15em;
    font-weight: bolder;
    margin-bottom: var(--portlet-gap);
}

.povinf_oddil {
    background-color: var(--portlet-bg);
    font-weight: bolder;
    padding: var(--portlet-cell-padding);
    margin: var(--portlet-gap) 0;
    scroll-margin-top: var(--a3-kotva-odstup, var(--portlet-gap));
}
.povinf_obsah {
    list-style: none;
    margin: 0 0 var(--portlet-gap);
    padding: 0;
}

.povinf_obsah li {
    margin-bottom: calc(var(--portlet-gap) / 4);
}

.oddelovnik {
    border: none;
    border-top: 2px solid var(--portlet-border);
    margin: var(--portlet-gap) 0;
}

.article-clear {
    clear: both;
}

.article-meta-datetime {
    font-size: 0.9em;
    opacity: 0.75;
}

.datetime-clanek,
.datetime-udalost {
    font-size: 0.9em;
    opacity: 0.75;
}

.portlet-doc-tiles {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(var(--portlet-tile-min), 1fr));
    column-gap: var(--portlet-tile-col-gap);
    row-gap: var(--portlet-gap);
    margin-top: var(--portlet-gap);
}

.portlet-doc-tile {
    display: block;
    text-decoration: none;
    color: inherit;
}
.portlet-doc-thumb {
    position: relative;
    aspect-ratio: 4 / 3;
    background-color: var(--portlet-bg);
    overflow: hidden;
    text-align: center;
}
@supports not (aspect-ratio: 1 / 1) {
    .portlet-doc-thumb {
        height: 0;
        padding-bottom: 75%;
    }
    .portlet-doc-thumb > * {
        position: absolute;
        top: 0;
        left: 0;
    }
}

.portlet-doc-thumb .portlet-doc-img,
.portlet-doc-thumb canvas {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: top center;
}
.portlet-doc-thumb canvas {
    object-fit: contain;
}

.portlet-doc-thumb.is-loading {
    opacity: .6;
}
.portlet-doc-badge {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    padding: 4px 10px;
    font-weight: 700;
    font-size: 0.8em;
    color: #fff;
    background-color: var(--portlet-badge-default);
}

.portlet-doc-badge-pdf     { background-color: var(--portlet-badge-pdf); }
.portlet-doc-badge-doc     { background-color: var(--portlet-badge-doc); }
.portlet-doc-badge-xls     { background-color: var(--portlet-badge-xls); }
.portlet-doc-badge-ppt     { background-color: var(--portlet-badge-ppt); }
.portlet-doc-badge-image   { background-color: var(--portlet-badge-image); }
.portlet-doc-badge-default { background-color: var(--portlet-badge-default); }

.portlet-doc-caption {
    padding: 6px 2px;
}

.portlet-doc-name {
    font-weight: 600;
    line-height: 1.3;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.portlet-doc-meta {
    font-size: 0.8em;
    opacity: 0.7;
}

.a3-portlet-paged.a3-pager-loading {
    opacity: 0.5;
}

.strankovani.a3-pager {
    display: flex;
    flex-wrap: wrap;
    align-items: left;
    gap: 4px;
}

.strankovani.a3-pager a,
.strankovani.a3-pager strong,
.strankovani.a3-pager .pager-disabled {
    padding: 2px 6px;
    text-decoration: none;
}
:root {
    --a3cal-accent:        #3b82f6;
    --a3cal-day-bg:        #ebebeb;
    --a3cal-day-hover:     #e0e0e0;
    --a3cal-day-color:     #333333;
    --a3cal-active-bg:     #dbe8fb;
    --a3cal-active-hover:  #c7dcfa;
    --a3cal-active-color:  #1a2b45;
    --a3cal-today-bg:      #333333;
    --a3cal-today-color:   #ffffff;
    --a3cal-weekend-bg:    #cccccc;
    --a3cal-gridline:      #ffffff;
    --a3cal-bar-height:    4px;
    --a3cal-bar-radius:    2px;
    --a3cal-badge-bg:      #333333;
    --a3cal-badge-color:   #ffffff;
}

.a3-cal {
    margin-bottom: var(--portlet-gap);
}

.a3-cal-header {
    display: flex;
    align-items: center;
    justify-content: space-between;
    flex-wrap: wrap;
    gap: 8px;
    margin-bottom: 8px;
}

.a3-cal-title {
    font-weight: bolder;
}

.a3-cal-controls {
    display: flex;
    align-items: center;
    gap: 10px;
}

.a3-cal-nav {
    cursor: pointer;
    user-select: none;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 28px;
    height: 28px;
    line-height: 1;
    font-size: 20px;
    text-decoration: none;
    color: inherit;
}

.a3-cal-period {
    min-width: 9em;
    text-align: center;
}
.a3-cal .responsive-calendar .days {
    font-size: 0;
}

.a3-cal .responsive-calendar .day {
    display: inline-block;
    position: relative;
    vertical-align: top;
    width: 14.2857142857%;
    font-size: 14px;
    text-align: center;
}

.a3-cal .responsive-calendar .day a {
    display: block;
    cursor: pointer;
    padding: 12% 0 calc(12% + var(--a3cal-bar-height) + 4px);
    color: var(--a3cal-day-color);
    background-color: var(--a3cal-day-bg);
    border-top: 1px solid var(--a3cal-gridline);
    border-left: 1px solid var(--a3cal-gridline);
    text-decoration: none;
}

.a3-cal .responsive-calendar .day a:hover {
    background-color: var(--a3cal-day-hover);
    text-decoration: none;
}
.a3-cal .responsive-calendar .day.sat a,
.a3-cal .responsive-calendar .day.sun a {
    background-color: var(--a3cal-weekend-bg);
}

.a3-cal .responsive-calendar .day.active a {
    background-color: var(--a3cal-active-bg);
    color: var(--a3cal-active-color);
    font-weight: bold;
}

.a3-cal .responsive-calendar .day.today a {
    background-color: var(--a3cal-today-bg);
    color: var(--a3cal-today-color);
    font-weight: bold;
}
.a3-cal .responsive-calendar .day.active a:hover {
    background-color: var(--a3cal-active-hover);
}

.a3-cal .responsive-calendar .day.not-current a {
    visibility: hidden;
}
.a3-cal .responsive-calendar .day .badge {
    position: absolute;
    top: 3px;
    right: 3px;
    z-index: 2;
    min-width: 16px;
    padding: 0 4px;
    border-radius: 999px;
    background-color: var(--a3cal-badge-bg);
    color: var(--a3cal-badge-color);
    font-size: 10px;
    font-weight: bold;
    line-height: 16px;
    text-align: center;
    pointer-events: none;
}
.a3-cal .responsive-calendar .day .a3-cal-bar {
    position: absolute;
    left: 18%;
    right: 18%;
    bottom: 8px;
    display: flex;
    gap: 2px;
    height: var(--a3cal-bar-height);
    border-radius: var(--a3cal-bar-radius);
    overflow: hidden;
    pointer-events: none;
    z-index: 1;
}

.a3-cal-bar-segment {
    flex: 1 1 0;
    min-width: 0;
}

.a3-cal .responsive-calendar .day.not-current .a3-cal-bar,
.a3-cal .responsive-calendar .day.not-current .badge {
    display: none;
}
.a3-cal-legend {
    display: flex;
    flex-wrap: wrap;
    gap: 6px 16px;
    margin-top: 12px;
}
.a3-cal-legend-item {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    font-size: 13px;
    color: inherit;
    text-decoration: none;
}

a.a3-cal-legend-item:hover,
a.a3-cal-legend-item:focus-visible {
    text-decoration: underline;
}

.a3-cal-legend-swatch {
    width: 12px;
    height: 12px;
    border-radius: 3px;
    flex-shrink: 0;
}
.a3-odber-form .a3-odber-radek {
    margin-bottom: 14px;
}

.a3-odber-form .a3-odber-volba {
    display: block;
    margin: 4px 0;
    font-weight: normal;
    cursor: pointer;
}

.a3-odber-kategorie {
    display: flex;
    flex-wrap: wrap;
    gap: 20px;
    margin: 10px 0;
}

.a3-odber-sekce {
    min-width: 180px;
}

.a3-odber-sekce ul {
    list-style: none;
    margin: 8px 0 0;
    padding: 0;
}
.a3-odber-vyber > summary {
    cursor: pointer;
    display: list-item;
}

.a3-odber-vyber > summary .a3-odber-pocet {
    opacity: .7;
}

.a3-odber-sekce label {
    font-weight: normal;
    cursor: pointer;
}
.a3rez-cal { margin: 12px 0; }
.a3rez-form { margin-top: 16px; }
.a3rez-field { margin-bottom: 10px; }
.a3rez-field > label { display: block; margin-bottom: 3px; }
.a3rez-termin { display: flex; flex-wrap: wrap; gap: 10px; }
.a3rez-termin .a3rez-field { flex: 1 1 8rem; margin-bottom: 0; }
.a3rez-termin .a3rez-field:first-child { flex-basis: 100%; }
.a3rez-termin input,
.a3rez-termin select { min-width: 0; }
.a3rez-termin select.a3rez-i-cas { width: 100%; }
.a3rez-cas-obal { position: relative; display: block; }
.a3rez-form input.a3rez-i-datum,
.a3rez-termin input.a3rez-i-datum,
.a3rez-termin select.a3rez-i-cas { cursor: pointer; }
.fc .a3rez-off  { background: rgba(0, 0, 0, 0.075); }
.fc .a3rez-mysel { background: rgba(47, 133, 90, 0.30); }
.fc .fc-event.a3rez-ceka {
    background-image: repeating-linear-gradient(-45deg, rgba(255, 255, 255, .2) 0 8px, transparent 8px 16px);
    border-style: dashed;
}

.fc .fc-event.a3rez-ceka .fc-event-main {
    text-shadow: 0 1px 2px rgba(0, 0, 0, .35);
}
.fc .fc-day.a3rez-den-off { background: rgba(0, 0, 0, 0.05); }
.fc .fc-daygrid-day:not(.fc-day-disabled) { cursor: pointer; }
.a3rez-selected { margin: 8px 0; }
.a3rez-selected-err { color: var(--a3msg-err-text, #742020); }
.a3rez-field-check > label,
.a3rez-gdpr > label { display: inline-flex; align-items: flex-start; gap: 6px; }
.a3rez-form input[type="text"],
.a3rez-form input[type="email"],
.a3rez-form input[type="tel"],
.a3rez-form input[type="number"],
.a3rez-form input.a3rez-i-datum,
.a3rez-form textarea,
.a3rez-form select { width: 100%; }
.fc table,
.fc thead,
.fc tbody,
.fc tr,
.fc td,
.fc th { margin: 0 !important; }
:root {
    --a3msg-radius:      6px;
    --a3msg-ok-bg:       #eaf7ee;   --a3msg-ok-border:   #2f855a;   --a3msg-ok-text:   #1c4d33;
    --a3msg-err-bg:      #fdecec;   --a3msg-err-border:  #c53030;   --a3msg-err-text:  #742020;
    --a3msg-warn-bg:     #fdf6e3;   --a3msg-warn-border: #b7791f;   --a3msg-warn-text: #6b4c14;
    --a3msg-info-bg:     #eaf2fb;   --a3msg-info-border: #2b6cb0;   --a3msg-info-text: #1e4568;
}

.a3-msg {
    margin: 12px 0;
    padding: 10px 14px;
    border: 1px solid transparent;
    border-left-width: 4px;
    border-radius: var(--a3msg-radius);
    line-height: 1.4;
}
.a3-msg:empty { display: none; }
.a3-msg-ok      { background: var(--a3msg-ok-bg);   border-color: var(--a3msg-ok-border);   color: var(--a3msg-ok-text); }
.a3-msg-err     { background: var(--a3msg-err-bg);  border-color: var(--a3msg-err-border);  color: var(--a3msg-err-text); }
.a3-msg-warning { background: var(--a3msg-warn-bg); border-color: var(--a3msg-warn-border); color: var(--a3msg-warn-text); }
.a3-msg-info    { background: var(--a3msg-info-bg); border-color: var(--a3msg-info-border); color: var(--a3msg-info-text); }
.a3-form-hp {
    position: absolute;
    left: -9999px;
    top: -9999px;
    width: 1px;
    height: 1px;
    overflow: hidden;
}

.a3-form-pole { margin-bottom: 10px; }
.a3-form-pole > label { display: block; margin-bottom: 3px; }
.a3-form-check > label { display: inline-flex; align-items: flex-start; gap: 6px; }
.a3-form-cekejte {
    margin-left: 10px;
    font-size: .9em;
}
.a3-form-msg:empty { display: none; }
.a3-form-missing {
    margin: 8px 0;
    font-size: 0.9em;
    color: var(--a3msg-err-text, #742020);
}
.a3-form-missing:empty { display: none; }
.a3-form-noscript { margin: 8px 0; }
.a3-form-submit { transition: opacity 0.15s ease; }
.a3-form-submit:disabled { opacity: 0.55; cursor: not-allowed; }
.a3-form-submit.is-loading { opacity: 0.7; cursor: progress; }
.a3-form-submit.is-loading::after {
    content: "";
    display: inline-block;
    width: 0.8em; height: 0.8em;
    margin-left: 8px;
    vertical-align: -1px;
    border: 2px solid currentColor;
    border-top-color: transparent;
    border-radius: 50%;
    animation: a3-form-spin 0.6s linear infinite;
}
@keyframes a3-form-spin { to { transform: rotate(360deg); } }
.a3kf-popis { margin-bottom: 14px; }
.a3kf-form input[type="text"],
.a3kf-form input[type="email"],
.a3kf-form input[type="tel"],
.a3kf-form input[type="number"],
.a3kf-form textarea,
.a3kf-form select { width: 100%; }
.a3-filetype {
    display: inline-flex;
    align-items: center;
    gap: 0.4em;
}

.a3-filetype-zkratka {
    text-transform: uppercase;
    white-space: nowrap;
}
.a3-fileicon {
    flex: none;
    width: 1.8rem;
}
.a3-fileicon-list {
    opacity: 0.55;
}
.a3-fileicon-stitek         { fill: var(--portlet-badge-default); }
.a3-fileicon-pdf    .a3-fileicon-stitek { fill: var(--portlet-badge-pdf); }
.a3-fileicon-doc    .a3-fileicon-stitek { fill: var(--portlet-badge-doc); }
.a3-fileicon-xls    .a3-fileicon-stitek { fill: var(--portlet-badge-xls); }
.a3-fileicon-ppt    .a3-fileicon-stitek { fill: var(--portlet-badge-ppt); }
.a3-fileicon-image  .a3-fileicon-stitek { fill: var(--portlet-badge-image); }
.a3-fileicon-archiv .a3-fileicon-stitek { fill: var(--portlet-badge-archiv); }
.a3-fileicon-text   .a3-fileicon-stitek { fill: var(--portlet-badge-text); }
.portlet-doc-badge-archiv { background-color: var(--portlet-badge-archiv); }
.portlet-doc-badge-text   { background-color: var(--portlet-badge-text); }
.a3-rozcestnik {
    container-type: inline-size;
    margin-bottom: var(--portlet-gap);
}

.a3-rozcestnik ul {
    list-style: none;
    margin: 0;
    padding: 0;
}
.a3-rozcestnik-seznam .a3-rozcestnik-seznam,
.a3-rozcestnik-podseznam ul {
    padding-left: var(--portlet-gap);
}

.a3-rozcestnik-odkaz {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: var(--portlet-gap);
    padding: var(--portlet-cell-padding);
    text-decoration: none;
    color: inherit;
}

.a3-rozcestnik-nazev {
    min-width: 0;
}
.a3-rozcestnik-dlazdice {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(var(--portlet-tile-min), 1fr));
    column-gap: var(--portlet-tile-col-gap);
    row-gap: var(--portlet-gap);
}

.a3-rozcestnik-dlazdice-odkaz {
    display: block;
    text-decoration: none;
    color: inherit;
}
.a3-rozcestnik-sumar {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: var(--portlet-gap);
    padding: var(--portlet-cell-padding);
    cursor: pointer;
}
.a3-rozcestnik-sumar { list-style: none; }
.a3-rozcestnik-sumar::-webkit-details-marker { display: none; }

.a3-rozcestnik-obsah {
    padding: var(--portlet-cell-padding);
}

.a3-kamera {
    margin-bottom: var(--portlet-gap);
}
.a3-kamera-ram {
    position: relative;
    aspect-ratio: var(--a3-kamera-pomer, auto);
    overflow: hidden;
}
.a3-kamera-obraz {
    display: block;
    width: 100%;
    height: 100%;
    max-width: 100%;
    object-fit: cover;
    border: 0;
}
.a3-kamera-ram:not([style*="--a3-kamera-pomer"]) .a3-kamera-obraz {
    height: auto;
}
.a3-kamera-zvetsit {
    position: absolute;
    right: 0;
    bottom: 0;
    padding: var(--portlet-cell-padding);
    line-height: 1;
    background: none;
    border: 0;
    cursor: pointer;
    color: inherit;
}

.a3-kamera-popisek {
    display: flex;
    align-items: baseline;
    justify-content: space-between;
    gap: var(--portlet-gap);
    padding: var(--portlet-cell-padding);
}
.a3-kamera-nazev { min-width: 0; }
.a3-kamera-cas   { white-space: nowrap; }
.a3-kamera-ram:fullscreen {
    aspect-ratio: auto;
    width: 100%;
    height: 100%;
}

.a3-kamera-ram:fullscreen .a3-kamera-obraz {
    height: 100%;
    object-fit: contain;
}

.a3-chmi {
    margin-bottom: var(--portlet-gap);
}

.a3-chmi-vystraha {
    border-left: 4px solid var(--a3-chmi-barva, currentColor);
    padding: var(--portlet-cell-padding);
    padding-left: var(--portlet-gap);
    margin-bottom: var(--portlet-gap);
}

.a3-chmi-vystraha:last-of-type { margin-bottom: 0; }

.a3-chmi-hlava {
    display: flex;
    align-items: flex-start;
    gap: var(--portlet-gap);
}
.a3-chmi-ikona {
    flex: 0 0 auto;
    display: block;
    color: var(--a3-chmi-barva, currentColor);
}

.a3-chmi-svg { display: block; }
.a3-chmi-titulek { min-width: 0; }

.a3-chmi-nazev {
    margin: 0;
    overflow-wrap: break-word;
}

.a3-chmi-stitek,
.a3-chmi-popis {
    margin: 0;
    overflow-wrap: break-word;
}
.a3-chmi-uroven   { font-weight: 700; }
.a3-chmi-platnost { white-space: normal; }

.a3-chmi-popis { margin-top: var(--portlet-gap); }

.a3-chmi-instrukce { margin-top: var(--portlet-cell-padding); }
.a3-chmi-instrukce-nadpis { cursor: pointer; }
.a3-chmi-instrukce-nadpis::-webkit-details-marker { display: none; }

.a3-chmi-instrukce-text { padding-top: var(--portlet-cell-padding); }

.a3-chmi-zdroj { margin: 0; }
.a3-chmi--zelena   { --a3-chmi-barva: #15803d; }
.a3-chmi--zluta    { --a3-chmi-barva: #b45309; }
.a3-chmi--oranzova { --a3-chmi-barva: #c2410c; }
.a3-chmi--cervena  { --a3-chmi-barva: #b91c1c; }
.a3-chmi--klid     { --a3-chmi-barva: #15803d; }
.a3-chmi--vyhled { border-left-style: dashed; }

@media (prefers-color-scheme: dark) {
    .a3-chmi--zelena,
    .a3-chmi--klid     { --a3-chmi-barva: #4ade80; }
    .a3-chmi--zluta    { --a3-chmi-barva: #fbbf24; }
    .a3-chmi--oranzova { --a3-chmi-barva: #fb923c; }
    .a3-chmi--cervena  { --a3-chmi-barva: #f87171; }
}
.a3-input-addon {
    display: flex;
    align-items: center;
    padding: 0.375rem 0.75rem;
}
@media (max-width: 991px) {
    .a3-hide-sm { display: none; }
}

.a3-hledani-filtry {
    display: flex;
    flex-wrap: wrap;
    gap: 0.5rem;
}

.a3-hledani-vysledky {
    list-style: none;
    margin: 0;
    padding: 0;
}

.a3-hledani-polozka { margin: 0 0 1.25rem; }

.a3-hledani-odkaz {
    display: inline-block;
    font-weight: 600;
}

.a3-hledani-meta {
    display: flex;
    flex-wrap: wrap;
    gap: 0.5rem;
    align-items: center;
}

.a3-hledani-uryvek { margin: 0.35rem 0 0; }
.a3-hledani mark {
    background: transparent;
    font-weight: 700;
}
.a3-hledani-ai[hidden] { display: none; }
.a3-hledani-ai-text.is-stream::after {
    content: "";
    display: inline-block;
    width: 0.5em;
    height: 1em;
    margin-left: 0.15em;
    vertical-align: text-bottom;
    background: currentColor;
    opacity: 0.6;
    animation: a3-hledani-ai-kurzor 1s steps(2, start) infinite;
}

@keyframes a3-hledani-ai-kurzor {
    to { visibility: hidden; }
}

@media (prefers-reduced-motion: reduce) {
    .a3-hledani-ai-text.is-stream::after { animation: none; }
}

.a3-hledani-ai-zdroje {
    display: flex;
    flex-wrap: wrap;
    gap: 0.5rem;
    list-style: none;
    margin: 0.5rem 0 0;
    padding: 0;
}
.a3-naseptavac {
    position: absolute;
    z-index: 30;
    left: 0;
    right: 0;
    list-style: none;
    margin: 0;
    padding: 0;
}

.a3-naseptavac[hidden] { display: none; }

.a3-naseptavac-polozka { cursor: pointer; }

.a3-anketa {
    container-type: inline-size;
    margin-bottom: var(--portlet-gap);
}

.a3-anketa-otazka {
    font-weight: 600;
    margin-bottom: calc(var(--portlet-gap) / 2);
}

.a3-anketa-popis {
    margin-bottom: var(--portlet-gap);
}
.a3-anketa-moznosti {
    display: flex;
    flex-direction: column;
    gap: calc(var(--portlet-gap) / 2);
    margin-bottom: var(--portlet-gap);
}

.a3-anketa-moznost {
    display: flex;
    align-items: flex-start;
    gap: calc(var(--portlet-gap) / 2);
    padding: var(--portlet-cell-padding);
    margin: 0;
    font-weight: normal;
    cursor: pointer;
}

.a3-anketa-moznost > span {
    min-width: 0;
}

.a3-anketa-moznost input {
    flex-shrink: 0;
    margin-top: 0.2em;
}
.a3-anketa-form[data-a3-anketa-jedna] .a3-anketa-moznost {
    position: relative;
}

.a3-anketa-form[data-a3-anketa-jedna] .a3-anketa-vyber {
    position: absolute;
    width: 1px;
    height: 1px;
    margin: -1px;
    padding: 0;
    border: 0;
    overflow: hidden;
    clip-path: inset(50%);
    white-space: nowrap;
}
.a3-anketa-form[data-a3-anketa-jedna] .a3-anketa-moznost:focus-within {
    outline: 2px solid currentColor;
    outline-offset: 2px;
}

.a3-anketa-form[data-a3-anketa-jedna] .a3-anketa-moznost:has(.a3-anketa-vyber:checked) {
    outline: 2px solid currentColor;
    outline-offset: -2px;
}

.a3-anketa-submit[hidden] {
    display: none;
}
.a3-anketa-moznost > .a3-anketa-radek {
    flex: 1;
    min-width: 0;
}

.a3-anketa-vysledky {
    display: flex;
    flex-direction: column;
    gap: var(--portlet-gap);
}

.a3-anketa-radek-hlavicka {
    display: flex;
    align-items: baseline;
    justify-content: space-between;
    gap: var(--portlet-gap);
}

.a3-anketa-radek-text {
    min-width: 0;
}

.a3-anketa-procenta {
    flex-shrink: 0;
    font-weight: 600;
}
.a3-anketa-pruh {
    height: 8px;
    margin: calc(var(--portlet-gap) / 4) 0;
    background: var(--portlet-bg);
    border-radius: 4px;
    overflow: hidden;
}
.a3-anketa-pruh-vypln {
    width: var(--a3-anketa-podil, 0%);
    height: 100%;
    background: currentColor;
    transition: width 200ms ease;
}

@media (prefers-reduced-motion: reduce) {
    .a3-anketa-pruh-vypln { transition: none; }
}

.a3-anketa-pocet,
.a3-anketa-celkem,
.a3-anketa-hotovo {
    font-size: 0.9em;
    opacity: 0.8;
}

.a3-anketa-celkem,
.a3-anketa-hotovo {
    margin-top: calc(var(--portlet-gap) / 2);
}
.a3-pocasi {
    container-type: inline-size;
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: var(--portlet-gap);
    margin-bottom: var(--portlet-gap);
}
.a3-pocasi-ted {
    display: flex;
    align-items: center;
    gap: 12px;
    flex: 0 0 auto;
}

.a3-pocasi-ted-ikona {
    display: flex;
    flex: 0 0 auto;
}

.a3-pocasi-doplnky {
    display: flex;
    flex-wrap: wrap;
    gap: 4px 12px;
}
.a3-pocasi-dny {
    display: flex;
    flex-wrap: wrap;
    gap: var(--portlet-gap);
    flex: 1 1 auto;
    margin: 0;
    padding: 0;
    list-style: none;
}

.a3-pocasi-den {
    display: flex;
    flex-direction: column;
    align-items: center;
    min-width: 4.5em;
}

.a3-pocasi-den-ikona {
    display: flex;
}

.a3-pocasi-den-teploty {
    display: flex;
    gap: 6px;
    white-space: nowrap;
}
.a3-pocasi-zdroj {
    flex: 1 0 100%;
    margin: 0;
}
.a3-pocasi-skryte {
    position: absolute;
    width: 1px;
    height: 1px;
    margin: -1px;
    padding: 0;
    overflow: hidden;
    clip: rect(0, 0, 0, 0);
    white-space: nowrap;
    border: 0;
}
.a3-pocasi-svg {
    display: block;
    flex: 0 0 auto;
}
@container (max-width: 30em) {
    .a3-pocasi-ted {
        flex: 1 0 100%;
    }

    .a3-pocasi-dny {
        flex: 1 0 100%;
        flex-wrap: nowrap;
        overflow-x: auto;
    }
}
.a3-stitky {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 6px;
    margin: var(--portlet-gap) 0;
}
.a3-stitek {
    display: inline-block;
    padding: 2px 10px;
    border: 1px solid var(--portlet-border);
    border-radius: 999px;
    background: var(--portlet-bg);
    text-decoration: none;
}
.a3-stitek-vypis { margin: 0; padding: 0; list-style: none; }
.a3-stitek-polozka { padding: 8px 0; border-bottom: 1px solid var(--portlet-border); }
.a3-stitek-druh { font-size: 0.85em; opacity: 0.75; }
.a3-stitek-perex { margin-top: 2px; }
.a3-akce-kalendar { margin: 6px 0 12px; }

.a3-qr-platba {
    display: flex;
    flex-wrap: wrap;
    align-items: flex-start;
    gap: var(--portlet-gap);
    margin-bottom: var(--portlet-gap);
}

.a3-qr-platba-text {
    flex: 1 1 260px;
    min-width: 0;
}

.a3-qr-platba-nazev {
    font-weight: 600;
    margin-bottom: calc(var(--portlet-gap) / 2);
}

.a3-qr-platba-popis {
    margin-bottom: var(--portlet-gap);
}

.a3-qr-platba-pole {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    gap: calc(var(--portlet-gap) / 2);
    margin-bottom: var(--portlet-gap);
}

.a3-qr-platba-pole label {
    display: flex;
    flex-direction: column;
    gap: 0.2em;
    margin: 0;
    font-weight: normal;
}

.a3-qr-platba-pole input {
    max-width: 100%;
}

.a3-qr-platba-udaje {
    display: grid;
    grid-template-columns: auto minmax(0, 1fr);
    gap: 0.2em 1em;
    margin: 0;
}

.a3-qr-platba-udaje dt {
    font-weight: normal;
    opacity: 0.75;
}

.a3-qr-platba-udaje dd {
    margin: 0;
}

.a3-qr-platba-kod {
    flex: 0 0 auto;
    width: min(100%, 200px);
    aspect-ratio: 1;
    background: #fff;
}

.a3-qr-platba-kod svg {
    display: block;
    width: 100%;
    height: 100%;
}

.a3-qr-platba-kod.is-empty {
    display: grid;
    place-items: center;
    padding: var(--portlet-cell-padding);
    border: 1px dashed currentColor;
    background: transparent;
    text-align: center;
    opacity: 0.8;
}
.flatpickr-calendar select.flatpickr-monthDropdown-months,
.flatpickr-calendar input.cur-year {
    width: auto;
    min-height: 0;
    height: auto;
    margin: 0;
    padding: 0 0 0 .5ch;
    background: transparent;
    border: 0;
    border-radius: 0;
    box-shadow: none;
    font: inherit;
    font-weight: 600;
    line-height: inherit;
}

.flatpickr-calendar input.cur-year {
    width: 6ch;
    padding: 0;
}
