/*
 * Nakładka zgodności Joomla 6 dla szablonu a4joomla-triplex3r (KM-4903).
 *
 * Szablon powstał pod Bootstrap 2 i zna wyłącznie klasy siatki .spanN.
 * Joomla 4+ renderuje moduły z parametrem bootstrap_size jako .col-md-N,
 * których ten szablon nie definiuje — bez tego mapowania moduły ustawione
 * obok siebie (np. "Nowości" i "Najczęściej czytane") rozjeżdżają się na
 * pełną szerokość.
 *
 * Mapujemy siatkę Bootstrap 5 na odpowiedniki Bootstrap 2 używane w szablonie.
 */

.row-fluid .col-md-1,
.row-fluid .col-md-2,
.row-fluid .col-md-3,
.row-fluid .col-md-4,
.row-fluid .col-md-5,
.row-fluid .col-md-6,
.row-fluid .col-md-7,
.row-fluid .col-md-8,
.row-fluid .col-md-9,
.row-fluid .col-md-10,
.row-fluid .col-md-11,
.row-fluid .col-md-12 {
    display: block;
    float: left;
    width: 100%;
    min-height: 30px;
    margin-left: 2.127659574468085%;
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
}

.row-fluid .col-md-1:first-child,
.row-fluid .col-md-2:first-child,
.row-fluid .col-md-3:first-child,
.row-fluid .col-md-4:first-child,
.row-fluid .col-md-5:first-child,
.row-fluid .col-md-6:first-child,
.row-fluid .col-md-7:first-child,
.row-fluid .col-md-8:first-child,
.row-fluid .col-md-9:first-child,
.row-fluid .col-md-10:first-child,
.row-fluid .col-md-11:first-child,
.row-fluid .col-md-12:first-child {
    margin-left: 0;
}

.row-fluid .col-md-1  { width: 6.382978723404255%; }
.row-fluid .col-md-2  { width: 14.893617021276595%; }
.row-fluid .col-md-3  { width: 23.404255319148934%; }
.row-fluid .col-md-4  { width: 31.914893617021278%; }
.row-fluid .col-md-5  { width: 40.42553191489362%; }
.row-fluid .col-md-6  { width: 48.93617021276595%; }
.row-fluid .col-md-7  { width: 57.44680851063829%; }
.row-fluid .col-md-8  { width: 65.95744680851064%; }
.row-fluid .col-md-9  { width: 74.46808510638297%; }
.row-fluid .col-md-10 { width: 82.97872340425532%; }
.row-fluid .col-md-11 { width: 91.48936170212765%; }
.row-fluid .col-md-12 { width: 100%; }

/* Poza .row-fluid (moduły renderowane bezpośrednio) */
.moduletable.col-md-6,
.moduletable .col-md-6 { width: 48.93617021276595%; float: left; }
.moduletable.col-md-4,
.moduletable .col-md-4 { width: 31.914893617021278%; float: left; }
.moduletable.col-md-3,
.moduletable .col-md-3 { width: 23.404255319148934%; float: left; }

/*
 * Układ bloga. Joomla 3 renderowała wiersze jako
 *   .items-row.cols-2.row-fluid > .item.column-1.span6
 * Joomla 6 renderuje płaską listę
 *   .blog-items.columns-2 > .blog-item
 * i liczy na własną siatkę, której ten szablon nie ma — bez tego wszystkie
 * wpisy (plakaty zajęć) układają się jeden pod drugim zamiast w dwóch kolumnach.
 */
.blog-items.columns-2,
.blog-items.columns-3,
.blog-items.columns-4 {
    display: flex;
    flex-wrap: wrap;
    margin-left: -2.127659574468085%;
}

.blog-items.columns-2 > .blog-item,
.blog-items.columns-3 > .blog-item,
.blog-items.columns-4 > .blog-item {
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
    margin-left: 2.127659574468085%;
}

.blog-items.columns-2 > .blog-item { width: 47.87234042553192%; }
.blog-items.columns-3 > .blog-item { width: 31.20567375886525%; }
.blog-items.columns-4 > .blog-item { width: 22.87234042553192%; }

@media (max-width: 767px) {
    .blog-items.columns-2 > .blog-item,
    .blog-items.columns-3 > .blog-item,
    .blog-items.columns-4 > .blog-item {
        width: 100%;
        margin-left: 0;
    }
    .blog-items.columns-2,
    .blog-items.columns-3,
    .blog-items.columns-4 { margin-left: 0; }
}

/*
 * Paginacja. Joomla 6 wypuszcza <ul class="pagination">, a szablon z ery
 * Bootstrap 2 nie stylizuje tej listy — bez tego numery stron renderują się
 * jako punktowana lista z kropkami.
 */
.pagination {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    gap: 6px;
    margin: 12px 0;
    padding: 0;
    list-style: none;
}

.pagination li { list-style: none; margin: 0; }

.pagination li > a,
.pagination li > span {
    display: inline-block;
    padding: 3px 10px;
    border: 1px solid #ddd;
    border-radius: 3px;
    text-decoration: none;
    line-height: 1.5;
}

.pagination li.active > span,
.pagination li > a:hover {
    background: #f2f2f2;
}

.pagination-wrapper,
.com-content-article__pagination { text-align: center; }

/*
 * Joomla 6 renderuje strzałki paginacji jako ikony fontowe (icon-angle-*),
 * a ten szablon nie ładuje zestawu ikon Joomli — bez tego przyciski
 * "start / poprzedni / następny / koniec" są puste.
 */
.pagination .icon-angle-double-left::before  { content: "\00AB"; }
.pagination .icon-angle-left::before         { content: "\2039"; }
.pagination .icon-angle-right::before        { content: "\203A"; }
.pagination .icon-angle-double-right::before { content: "\00BB"; }

.pagination [class^="icon-"],
.pagination [class*=" icon-"] {
    font-style: normal;
    font-weight: bold;
    line-height: 1;
}

.pagination li.disabled > .page-link {
    color: #aaa;
    background: #fafafa;
}

/* Licznik stron "Strona 1 z 2" */
.counter, .pagenavcounter { text-align: center; display: block; margin-top: 8px; }

/*
 * Bootstrap 5 wprowadził .visually-hidden dla tekstów czytników ekranu.
 * Szablon z ery Bootstrap 2 tej klasy nie zna, więc ukryte etykiety
 * (np. zdublowane "Poprzedni artykuł") stają się widoczne.
 */
.visually-hidden,
.visually-hidden-focusable:not(:focus):not(:focus-within) {
    position: absolute !important;
    width: 1px !important;
    height: 1px !important;
    padding: 0 !important;
    margin: -1px !important;
    overflow: hidden !important;
    clip: rect(0, 0, 0, 0) !important;
    white-space: nowrap !important;
    border: 0 !important;
}
