    
.ekl-wrapper { width: 100%; }
.ekl-cols {
  display: grid;
  grid-template-columns: var(--ekl-left, 280px) var(--ekl-right, 1fr);
  gap: var(--ekl-gap, 24px);
}

@media (max-width: 900px) {
  .ekl-cols { grid-template-columns: 1fr; }
}

.ekl-content { position: relative; min-height: 40px; }
.ekl-content.is-loading::after {
  content: 'Ładowanie...';
  position: absolute; inset: 0;
  display: flex; align-items: center; justify-content: center;
  background: rgba(255,255,255,.6);
  font-weight: 600;
}

.ekl-posts { list-style: none; margin: 0; padding: 0; }
.ekl-post { padding: 14px 0; border-bottom: 1px solid #eef0f4; }
.ekl-post:last-child { border-bottom: none; }
.ekl-post__title { font-weight: 600; text-decoration: none; }
.ekl-post__title:hover { text-decoration: underline; }
.ekl-post__meta { font-size: 13px; opacity: .8; margin-top: 4px; }
.ekl-empty { opacity: .8; }


/* Separators (Elementor-stylable) */
.ekl-cat-sep, .ekl-subcat-sep { display:block; width:100%; border-top: 0 solid transparent; }



/* --- Rozwijacz treści wpisu --- */
.ekl-post__toggle {
  display: inline-block;
  margin-top: 0.25rem;
  padding: 0.25rem 0.5rem;
  border: none;
  border-radius: 6px;
  background: transparent;
  cursor: pointer;
  font: inherit;
  line-height: 1.2;
}

.ekl-post__toggle.is-open { opacity: 0.9; }

.ekl-post__content[hidden] { display: none; }
.ekl-post__content { margin-top: 0.5rem; }

.ekl-post__content.is-loading { opacity: 0.6; }

.ekl-post-full__header { margin-bottom: 0.5rem; }
.ekl-post-full__title { margin: 0 0 0.25rem; font-size: 1.125rem; }
.ekl-post-full__date { font-size: 0.875rem; opacity: 0.8; }


/* --- Wiersz tytuł + przycisk na jednej linii --- */
.ekl-post__row {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 0.75rem;
}
.ekl-post__title {
  flex: 1 1 auto;
  display: inline-block;
  text-decoration: none;
}
.ekl-post__toggle {
  flex: 0 0 auto;
  white-space: nowrap;
}
@media (max-width: 600px) {
  .ekl-post__row { gap: 0.5rem; }
  .ekl-post__toggle { padding: 0.2rem 0.5rem; font-size: 0.95em; }
}


/* --- Skrajne wyrównanie przycisku w prawej kolumnie --- */
.ekl-post { position: relative; }
.ekl-post__row { padding-right: var(--ekl-toggle-space, 10rem); }
.ekl-post__toggle {
  position: absolute;
  right: 0;
  top: 0;
}
@media (max-width: 600px) {
  .ekl-post__row { padding-right: var(--ekl-toggle-space, 8rem); }
}


/* --- Hard align toggle to the far right of the posts column --- */
.ekl-content .ekl-post__row {
  position: relative;
  padding-right: var(--ekl-toggle-space, 10rem);
}
.ekl-content .ekl-post .ekl-post__toggle {
  position: absolute;
  right: 0;
  top: 0;
}

/* === EKL FIX 2025-09-09: ensure toggle is pinned to the right regardless of wrapper structure === */
.ekl-posts-wrap .ekl-post__row{
  position: relative;
  padding-right: var(--ekl-toggle-space, 10rem);
}
.ekl-posts-wrap .ekl-post__toggle{
  position: absolute !important;
  right: 0;
  top: 0;
  width: auto;
  display: inline-block;
}
.ekl-posts-wrap .ekl-post__title{
  display: inline-block;
  flex: 1 1 auto;
  min-width: 0;
}
/* Guard against global button width rules in themes/Elementor */
.ekl-posts-wrap .ekl-post__toggle,
.ekl-posts-wrap .ekl-post__toggle button,
.ekl-posts-wrap .ekl-post__toggle .elementor-button{
  width: auto !important;
}

/* === EKL FIX 2025-09-09: make category/subcategory button background auto-fit the sidebar width === */
.ekl-sidebar .ekl-cats,
.ekl-sidebar .ekl-subcats { list-style: none; margin: 0; padding: 0; }

.ekl-sidebar .ekl-cat-item,
.ekl-sidebar .ekl-subcat-item { width: 100%; }

/* Ensure the background applied via Elementor controls covers full column width */
.ekl-sidebar .ekl-cat-btn {
  display: block !important;
  width: 100% !important;
  box-sizing: border-box;
  text-align: left;
}

/* Avoid theme rules forcing inline/auto width */
.ekl-sidebar .ekl-subcat-btn,
.ekl-sidebar .ekl-subcat-item .ekl-cat-btn {
  display: block !important;
  width: 100% !important;
  box-sizing: border-box;
  text-align: left;
}

/* Permalink below each post */
.ekl-post__permalink{ margin-top:.25rem; font-size: 13px; }


/* Tags above post title */
.ekl-post-tags{display:flex;flex-wrap:wrap;gap:.35rem;margin-bottom:.5rem}
.ekl-tag{display:inline-flex;align-items:center;line-height:1;padding:.15rem .5rem;border:1px solid transparent;border-radius:.375rem;font-size:.85em}
.ekl-tag-main{}
.ekl-tag-sub{}

/* Pagination */
.ekl-pagination {
  display: flex;
  gap: .5rem;
  align-items: center;
  justify-content: center;
  margin-top: 1rem;
  flex-wrap: wrap;
}

  background: var(--ekl-bg, #fff);
  padding: .35rem .6rem;
  border-radius: .5rem;
  cursor: pointer;
}
.ekl-pagination .ekl-page.ekl-current {
  font-weight: 600;
  outline: 2px solid var(--ekl-accent, #333);
}
.ekl-content.is-loading .ekl-pagination { opacity: .5; pointer-events: none; }

.ekl-pagination .ekl-page.is-disabled { opacity:.5; pointer-events:none; }


/* EKL fix: remove default borders in pagination */
.ekl-pagination .ekl-page,
.ekl-pagination a,
.ekl-pagination button,
.ekl-pagination .page-numbers {
  border: none !important;
  box-shadow: none;
}



/* EKL 1.1.10: hide meta button */
.ekl--hide-meta .ekl-post__meta{display:none!important}

/* 1.1.13: AJAX meta toggle safety */
.ekl--hide-meta-ajax .ekl-post__meta{display:none !important}


/* Years bar */
.ekl-years {
  display: flex;
  gap: .5rem;
  flex-wrap: wrap;
  align-items: center;
  margin-top: 1rem;
}
.ekl-year-btn {
  border: 1px solid currentColor;
  background: transparent;
  padding: .35rem .6rem;
  border-radius: .5rem;
  cursor: pointer;
  font: inherit;
  line-height: 1;
}
.ekl-year-btn:hover, .ekl-year-btn.is-active {
  background: rgba(0,0,0,.06);
}


/* Years bar moved to top */
.ekl-wrapper .ekl-years-bar{
  grid-column: 1 / -1;
  display: block;
  width: 100%;
}
.ekl-wrapper .ekl-years{
  justify-content: flex-start;
  display: flex;
  flex-wrap: wrap;
  gap: var(--ekl-years-gap, .5rem);
  margin-bottom: .5rem;
}
.ekl-wrapper .ekl-years-sep{
  border-bottom: 1px solid currentColor;
  opacity: 0.5;
}
/* Ensure grid places years bar above columns */
.ekl-wrapper{
  display: grid;
  grid-template-columns: var(--ekl-left, 280px) minmax(0,1fr);
  column-gap: var(--ekl-gap, 24px);
  row-gap: var(--ekl-gap, 24px);
}
.ekl-wrapper > .ekl-cols{ grid-column: 1 / -1; display: grid; grid-template-columns: var(--ekl-left, 280px) minmax(0,1fr); column-gap: var(--ekl-gap, 24px); }
