/* Dodatkowe style ponad Tailwind */
#slider-dots button[aria-current="true"] {
  background-color: rgb(71 85 105); /* slate-600 */
}

#slider-dots button[aria-current="false"] {
  background-color: rgb(203 213 225); /* slate-300 */
}

.no-select {
  user-select: none;
  -webkit-user-select: none;
  -ms-user-select: none;
}

.entry-card {
  height: 240px;
  display: flex;
  flex-direction: column;
}

@media (max-width: 640px) {
  .entry-card {
    height: 260px;
  }
}

/* Przycięcie tekstu do 6 linii */
.entry-msg {
  --lh: 1.5;
  line-height: var(--lh);
  max-height: calc(var(--lh) * 1em * 6);
  display: -webkit-box;
  -webkit-line-clamp: 6;
  -webkit-box-orient: vertical;
  overflow: hidden;
  text-overflow: ellipsis;
}

/* Strzałki: „pills”, blur, lekki cień, animacja */
.m-arrow{
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  z-index: 5;
  width: 44px;
  height: 44px;
  border-radius: 9999px;
  display: grid;
  place-items: center;
  border: 1px solid rgba(0,0,0,.08);
  background: rgba(255,255,255,.8);
  backdrop-filter: blur(6px);
  box-shadow: 0 6px 20px rgba(0,0,0,.12);
  cursor: pointer;
  transition: transform .12s ease, box-shadow .12s ease, background .12s ease;
}
.m-arrow:hover{ transform: translateY(-50%) scale(1.05); box-shadow: 0 8px 24px rgba(0,0,0,.18); }
.m-arrow:active{ transform: translateY(-50%) scale(0.98); }
#m-prev{ left: 14px; }
#m-next{ right: 14px; }

/* Ikona strzałki – prosty chevron */
.m-arrow svg{
  width: 22px; height: 22px;
  stroke: #0f172a;        /* ciemny slate */
  stroke-width: 2.5;
  fill: none;
}

/* Strzałki: „pills”, blur, lekki cień, animacja */
.m-arrow{
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  z-index: 5;
  width: 44px;
  height: 44px;
  border-radius: 9999px;
  display: grid;
  place-items: center;
  border: 1px solid rgba(0,0,0,.08);
  background: rgba(255,255,255,.8);
  backdrop-filter: blur(6px);
  box-shadow: 0 6px 20px rgba(0,0,0,.12);
  cursor: pointer;
  transition: transform .12s ease, box-shadow .12s ease, background .12s ease;
}
.m-arrow:hover{ transform: translateY(-50%) scale(1.05); box-shadow: 0 8px 24px rgba(0,0,0,.18); }
.m-arrow:active{ transform: translateY(-50%) scale(0.98); }
#m-prev{ left: 14px; }
#m-next{ right: 14px; }

/* Ikona strzałki – prosty chevron */
.m-arrow svg{
  width: 22px; height: 22px;
  stroke: #0f172a;        /* ciemny slate */
  stroke-width: 2.5;
  fill: none;
}

/* ==== Responsive fixes (auto-injected) ==== */
img, svg, video, canvas { max-width: 100%; height: auto; display: block; }
.container, .wrapper, .page { width: 100%; max-width: 720px; margin: 0 auto; padding-inline: 16px; box-sizing: border-box; }
.card, .section, .panel { width: 100%; box-sizing: border-box; }
input, select, textarea, button { font-size: 16px; line-height: 1.4; }
input, select, textarea { width: 100%; max-width: 100%; box-sizing: border-box; }
html, body { overflow-x: hidden; }
* { max-width: 100%; }
.hero img { width: 100%; height: auto; object-fit: cover; aspect-ratio: 16 / 7; }
.upload-row { display:flex; flex-wrap:wrap; gap:8px; align-items:center; }
.upload-row .info { min-width:0; flex:1 1 auto; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }
@media (max-width: 768px){
  body, .container, .wrapper, .page { min-width: 0 !important; }
}

/* === Patch: widen language switch container === */
.lang-switch, .lang, .language, .lang-container, .dropdown.lang, .lang-menu { min-width: 220px; }
.lang-switch .dropdown-toggle, .lang .dropdown-toggle, .language .dropdown-toggle, .lang-container .dropdown-toggle {
  min-width: 220px; width: auto; display:flex; align-items:center; justify-content:space-between; gap:8px; white-space:nowrap; padding:8px 12px; box-sizing:border-box;
}
.lang-switch .dropdown-menu, .lang .dropdown-menu, .language .dropdown-menu, .lang-container .dropdown-menu {
  min-width: 240px; width: max-content; white-space: nowrap;
}
.lang-switch img, .lang img, .language img { width: 20px; height: auto; }

.font-libre {
  font-family: 'Libre Baskerville', serif;
}

/* --- KARTY: miniatura zawsze ten sam wymiar --- */
.entry-card .card-photo{
  width: 100%;
  height: 220px;           /* możesz zmienić np. na 200/240 */
  object-fit: cover;       /* wypełnia kafel bez zniekształceń */
  border-radius: 12px;
  display:block;
}

/* --- MODAL: zdjęcie zawsze się mieści --- */
#m-photo-wrap{
  position: relative;
  /* wysokość obszaru obrazka: elastyczna, ale nigdy za duża */
  height: clamp(300px, 70vh, 80vh);
  width: 100%;
  display: grid;
  place-items: center;     /* centrowanie img w pionie i poziomie */
  overflow: hidden;        /* brak przewijania, brak wycieku */
  background: #fff;
  border-radius: 12px;
}

#m-img{
  max-width: 100%;
  max-height: 100%;
  width: auto;
  height: auto;
  object-fit: contain;     /* pokaż całe zdjęcie, żadnych „wyjść poza” */
  display:block;
}

/* Strzałki na stronie Wszystkie wpisy */
#entries-slider .entries-arrow {
  top: 50%;
  transform: translateY(-50%);
}

/* odsunięcie od krawędzi karty */
#entries-slider .entries-arrow-left {
  left: -14px;
}

#entries-slider .entries-arrow-right {
  right: -14px;
}

/* jeśli chcesz, żeby na telefonie strzałek nie było */
@media (max-width: 768px) {
  #entries-slider .entries-arrow {
    display: none;
  }
}

/* Strzałki w modalu zdjęć na entries.php */
#photo-prev { left: 14px; }
#photo-next { right: 14px; }

.font-hurricane {
  font-family: "Hurricane", cursive;
}

.font-markazi {
  font-family: "Markazi Text", serif;
}
