/* =========================================================
   Reference Výpis – filtry + stránkování
   Styly POUZE pro filtr a stránkování.
   Styling karet řeší Breakdance Global Block.
   ========================================================= */

:root {
  --rv-barva-primarni:     var(--bde-palette-color-1-59df94c0-fc5c-4078-ad03-5fe63d157d15);   /* tmavě modrá – aktivní tlačítko */
  --rv-barva-primarni-hover: #243d78;
  --rv-barva-text:         #1a2e5a;
  --rv-barva-ohraniceni:   #1a2e5a;
  --rv-barva-aktivni-text: #ffffff;
  --rv-barva-bg-hover:     #f0f4ff;
  --rv-barva-strankovani-aktivni: var(--bde-palette-color-1-f24c3641-6edc-4817-87cc-28ef958773d9); /* červená – číslo aktivní strany */
  --rv-radius:             9999px;    /* pill tvar tlačítek */
  --rv-mezera:             0.5rem;
  --rv-font:               inherit;
  --rv-prechodova-doba:    180ms;
}

/* ---------------------------------------------------------
   Wrapper filtru
   --------------------------------------------------------- */
.rv-filtr {
  margin-bottom: 60px;
  text-align: center;
}

.rv-filtr__nadpis {
  font-size: 20px;
  font-weight: 700;
  color: var(--rv-barva-text);
  margin-bottom: 20px;
}

/* ---------------------------------------------------------
   Skupina tlačítek
   --------------------------------------------------------- */
.rv-filtr__tlacitka {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: var(--rv-mezera);
}

/* ---------------------------------------------------------
   Základní tlačítko filtru
   --------------------------------------------------------- */
.rv-filtr__btn {
  display: inline-flex;
  align-items: center;
  gap: 0.3em;
  padding: 0.45em 1.1em;
  font-family: var(--rv-font);
  font-size: 0.8125rem;
  font-weight: 700;
  letter-spacing: 0.03em;
  text-transform: uppercase;
  color: var(--rv-barva-text);
  background: transparent;
  border: 2px solid var(--rv-barva-ohraniceni);
  border-radius: var(--rv-radius);
  cursor: pointer;
  text-decoration: none;
  line-height: 1.4;
  transition:
    background var(--rv-prechodova-doba) ease,
    color      var(--rv-prechodova-doba) ease,
    box-shadow var(--rv-prechodova-doba) ease;
  -webkit-appearance: none;
  appearance: none;
}
@media (hover: hover) {
.rv-filtr__btn:hover,
.rv-filtr__btn:focus-visible {
  background: var(--rv-barva-bg-hover);
  outline: none;
}
.rv-filtr__btn--aktivni:hover,
.rv-filtr__btn[aria-pressed="true"]:hover {
    border-color: var(--rv-barva-primarni);
	background: #fff;
	color: var(--rv-barva-primarni);
}
}
.rv-filtr__btn:focus-visible {
  box-shadow: 0 0 0 3px rgba(26, 46, 90, 0.25);
}

/* Aktivní stav */
.rv-filtr__btn--aktivni,
.rv-filtr__btn[aria-pressed="true"] {
  background: var(--rv-barva-primarni)!important;
  color:      var(--rv-barva-aktivni-text)!important;
  border-color: var(--rv-barva-primarni)!important;
}



/* Externí tlačítka (BVT, Servis) – vypadají stejně, jen jsou to <a> */
.rv-filtr__btn--externi {
  position: relative;
}

.rv-ikona-externi {
  display: inline-block;
  vertical-align: middle;
  flex-shrink: 0;
}

/* ---------------------------------------------------------
   Grid karet
   --------------------------------------------------------- */
.rv-grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 1.5rem;
  margin-bottom: 2rem;
  min-height: 200px; /* zabrání poskoku layoutu při načítání */
  transition: opacity 200ms ease;
}

.rv-grid__item {
  display:flex;
}

.rv-grid--nacitani {
  opacity: 0.45;
  pointer-events: none;
}

/* Prázdný stav */
.rv-prazdny {
  grid-column: 1 / -1;
  text-align: center;
  padding: 3rem 1rem;
  color: #666;
  font-size: 1rem;
}

/* ---------------------------------------------------------
   Stránkování
   --------------------------------------------------------- */
.rv-strankovani {
  display: flex;
  justify-content: center;
  align-items: center;
  gap:0rem;
  margin-top: 1.5rem;
}

.rv-strankovani__btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-width: 2rem;
  height: 2rem;
  padding: 0 0.4rem;
  font-family: var(--rv-font);
  font-size: 0.9375rem;
  font-weight: 600;
  color: var(--rv-barva-text);
  background: transparent;
  border: none;
  border-radius: 2px;
  cursor: pointer;
  transition: color var(--rv-prechodova-doba) ease;
  -webkit-appearance: none;
  appearance: none;
  line-height: 1;
}

.rv-strankovani__btn:hover,
.rv-strankovani__btn:focus-visible {
  color: var(--rv-barva-strankovani-aktivni);
  outline: none;
}

.rv-strankovani__btn:focus-visible {
  box-shadow: 0 0 0 2px rgba(229, 51, 58, 0.3);
  border-radius: 3px;
}

.rv-strankovani__btn--aktivni,
.rv-strankovani__btn[aria-current="page"] {
  color: var(--rv-barva-strankovani-aktivni);
}

.rv-strankovani__btn--prev,
.rv-strankovani__btn--next {
  font-size: 1.1rem;
  color: #999;
}

/* ---------------------------------------------------------
   Responzivita
   --------------------------------------------------------- */
@media (max-width: 1024px) {
  .rv-grid {
    grid-template-columns: repeat(2, 1fr);
  }
}

@media (max-width: 600px) {
  .rv-grid {
    grid-template-columns: 1fr;
  }

  .rv-filtr__tlacitka {
    gap: 0.4rem;
  }

  .rv-filtr__btn {
    font-size: 0.75rem;
    padding: 0.4em 0.9em;
  }
}
