/* uvodka.css — štýly len pre túto časť webu, vyčlenené zo style.css 29. 10. 2026.
   Načítava ich komponent <CssCast nazov="uvodka" /> (lib/cssVerzia.ts). Nové pravidlá pre túto časť patria sem. */

/* First screen: search 75% + kraje 25% under site chrome */

.home-intro {
  --ks-site-chrome: 7.35rem;

  /*
   * Koľko hory visia POD čiarou hrebeňa: `.sec-ridge--hero svg` má
   * `height: 6.4rem` a `top: -3.55rem`, teda 6,4 − 3,55 = 2,85rem.
   * O toľko musí pás krajov aspoň začať nižšie, inak karty vojdú do siluety.
   * Keď sa zmení geometria hrebeňa, prepočítaj aj toto.
   */
  --ks-ridge-overhang: 2.85rem;

  display: flex;
  flex-direction: column;
  min-height: calc(100vh - var(--ks-site-chrome));
  min-height: calc(100dvh - var(--ks-site-chrome));
}

@media (min-width: 768px) {
  .home-intro {
    --ks-site-chrome: 11.1rem;
  }
}

.home-intro .discover-band {
  flex: 3 1 0;
  min-height: 0;
}

.home-intro .sec-ridge--hero {
  z-index: 9;
}

/*
 * Odsadenie zhora musí prekročiť presah hôr, inak karty sedia priamo na siluete.
 * Nestačí, že sú nad ňou vo vrstvách (`z-index: 10` nižšie) — vtedy síce nie sú
 * odrezané, ale medzi nimi a horami nie je vzduch a pás vyzerá zlepený.
 * Predtým tu bolo 1,5rem oproti presahu 2,85rem, teda karty zachádzali
 * 1,35rem do hôr.
 */

.home-intro .home-kraje-band,
.home-intro #home-kraje-grid {
  flex: 1 0 auto;
  min-height: 0;
  padding-top: calc(var(--ks-ridge-overhang) + 0.9rem);
  padding-bottom: 1.6rem;
  display: flex;
  flex-direction: column;
  justify-content: center;
  overflow: visible;
}

@media (min-width: 1100px) {
  .home-intro .home-kraje-band,
  .home-intro #home-kraje-grid {
    padding-top: calc(var(--ks-ridge-overhang) + 1.35rem);
    padding-bottom: 2.35rem;
  }
}

.home-intro #home-kraje-grid .ks-container,
.home-intro .home-kraje-band .ks-container {
  display: flex;
  flex-direction: column;
  justify-content: center;
  flex: 1 1 auto;
  min-height: 0;
  padding-top: 0;
  padding-bottom: 0;
}

.home-intro #home-kraje-grid .home-air-hd,
.home-intro .home-kraje-band .home-air-hd {
  margin-bottom: 0.4rem !important;
  padding-bottom: 0 !important;
}

.home-intro #home-kraje-grid .sec-h,
.home-intro .home-kraje-band .sec-h {
  font-size: clamp(1.05rem, 2vw, 1.28rem);
}

.home-intro .kraje-home-row {
  margin: 0;
}

.home-intro .kraje-home-card {
  padding: 0.5rem 0.35rem 0.42rem;
  gap: 0.2rem;
}

.home-intro .kraje-home-card__icon {
  font-size: clamp(1.15rem, 2vw, 1.45rem);
}

.home-intro .kraje-home-card__num {
  font-size: clamp(1.1rem, 2vw, 1.4rem);
}

.home-intro .kraje-home-card__name {
  font-size: clamp(0.78rem, 1.3vw, 0.92rem);
}

.home-intro .kraje-home-card__kraj {
  font-size: clamp(0.68rem, 1.1vw, 0.78rem);
}

.home-intro.is-rozhovor {
  min-height: calc(100dvh - var(--ks-site-chrome));
}

.home-intro.is-rozhovor .discover-band {
  flex: 1 1 auto;
}

/* DISCOVER SEARCH — full remaining viewport under site chrome */

.discover-band {
  --ks-site-chrome: 7.35rem;
  position: relative;
  z-index: 3;
  isolation: isolate;
  overflow: hidden;
  /* clip, nie hidden: z hidden je rolovací kontajner a scrollIntoView vlákna
     rozhovoru ho posunul (o ~170 px) — pod odpoveďou vznikla prázdna obloha. */
  overflow: clip;
  background:
    radial-gradient(ellipse 110% 48% at 72% 112%, rgba(255, 255, 255, 0.42), transparent 54%),
    linear-gradient(
      180deg,
      #08172c 0%,
      #12355c 26%,
      #1a5fa8 54%,
      #5aa6d8 78%,
      #b7e3f8 100%
    );
  padding: 0;
  display: flex;
  align-items: center;
  min-height: calc(100vh - var(--ks-site-chrome));
  min-height: calc(100dvh - var(--ks-site-chrome));
}

.discover-band::before {
  content: '';
  position: absolute;
  left: -50%;
  width: 200%;
  top: 4%;
  height: 42%;
  pointer-events: none;
  z-index: 0;
  background-repeat: repeat-x;
  background-position: 0 40%;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 1100 200'%3E%3Cg fill='%23ffffff'%3E%3Cellipse cx='180' cy='110' rx='80' ry='30'/%3E%3Cellipse cx='128' cy='100' rx='46' ry='24'/%3E%3Cellipse cx='228' cy='96' rx='52' ry='26'/%3E%3Cellipse cx='178' cy='84' rx='34' ry='18'/%3E%3Cellipse cx='720' cy='70' rx='92' ry='32'/%3E%3Cellipse cx='662' cy='62' rx='50' ry='24'/%3E%3Cellipse cx='782' cy='56' rx='58' ry='28'/%3E%3C/g%3E%3C/svg%3E");
  background-size: 920px 168px;
  opacity: 0.16;
  filter: blur(6px);
  animation: sky-scroll-a 70s linear infinite;
}

@keyframes sky-scroll-a {
  from { transform: translateX(0); }
  to { transform: translateX(-920px); }
}

.discover-band::after {
  content: '';
  position: absolute;
  z-index: 0;
  pointer-events: none;
  width: min(18rem, 42vw);
  height: min(18rem, 42vw);
  right: 5%;
  bottom: -18%;
  border-radius: 50%;
  background: radial-gradient(
    circle at 50% 50%,
    /* Jadro nie je biele: biele slnko splývalo s bielym nadpisom h1 a ťahalo
       oko z textu. Teplá žltá a nižšia sýtosť ho nechajú v pozadí. */
    #ffd98a 0%,
    #ffc861 14%,
    #f5a947 30%,
    rgba(240, 150, 50, 0.45) 46%,
    rgba(230, 120, 40, 0.16) 62%,
    transparent 74%
  );
  opacity: 0;
  transform: translate(12%, 22%) scale(0.82);
  animation: sky-sun 90s ease-out 5s forwards;
}

@keyframes sky-sun {
  0% {
    opacity: 0;
    transform: translate(12%, 22%) scale(0.82);
  }
  7% {
    opacity: 0.72;
    transform: translate(6%, 10%) scale(0.9);
  }
  100% {
    opacity: 0.72;
    transform: translate(-38%, -72%) scale(1);
  }
}

@media (prefers-reduced-motion: reduce) {
  .discover-band::before,
  .discover-band::after {
    animation: none;
  }
  .discover-band::after {
    opacity: 0.7;
    transform: translate(-18%, -40%) scale(1);
  }
}

@media (min-width: 768px) {
  .discover-band {
    --ks-site-chrome: 11.1rem;
  }
}

.discover-head {
  margin-bottom: clamp(1.35rem, 3.2vh, 2.1rem);
  max-width: 42rem;
}

.discover-band .sec-eye {
  display: none;
}

.discover-lead {
  margin: 0.95rem 0 0;
  max-width: 38rem;
  font-size: clamp(0.98rem, 1.55vw, 1.12rem);
  font-weight: 500;
  line-height: 1.55;
  color: rgba(255, 255, 255, 0.72);
}

.discover-chat {
  background: #fff;
  border-radius: 16px;
  box-shadow: 0 18px 44px rgba(0, 0, 0, 0.3);
  overflow: hidden;
  display: flex;
  flex-direction: column;
}

.discover-chat.is-open .discover-thread {
  min-height: 12rem;
}

.discover-thread {
  padding: 1rem 1.05rem 0.35rem;
  max-height: min(58vh, 34rem);
  overflow-y: auto;
  background: linear-gradient(180deg, #f4f7fb 0%, #eef3f8 100%);

  /* Firefox. Farby musia sedieť s ::-webkit-scrollbar nižšie. */
  scrollbar-width: thin;
  scrollbar-color: rgba(13, 52, 96, 0.55) transparent;
}

/*
 * Scrollbar vlákna vyhľadávača.
 *
 * Skrývať sa nesmie — na rozdiel od `.ks-nav-scroll` a `.ps-thumbs`, čo sú
 * vodorovné karusely s vlastnou šípkou, je tu zvislý chat a scrollbar je jediné,
 * čo prezradí, že nad okrajom je ďalšia odpoveď.
 *
 * Trik s priehľadným rámom: dráha má 12 px (pohodlné na chytenie myšou aj
 * prstom), ale palec vyzerá na 6 px. `background-clip: padding-box` spôsobí, že
 * sa farba nekreslí pod rám, takže cezeň presvitá pozadie vlákna.
 *
 * Priehľadnosť je zámerne až 0,55 — menej vyzerá krajšie, ale palec je prvok
 * rozhrania a WCAG 1.4.11 chce 3 : 1. Na gradiente `#f4f7fb → #eef3f8` vychádza
 * 3,23 : 1 a 3,20 : 1. Svetlejšie už nie, prepočítané.
 */

.discover-thread::-webkit-scrollbar {
  width: 12px;
}

.discover-thread::-webkit-scrollbar-track {
  background: transparent;
}

.discover-thread::-webkit-scrollbar-thumb {
  background-color: rgba(13, 52, 96, 0.55);
  border-radius: 999px;
  border: 3px solid transparent;
  background-clip: padding-box;
}

.discover-thread::-webkit-scrollbar-thumb:hover {
  background-color: rgba(13, 52, 96, 0.72);
}

.discover-thread::-webkit-scrollbar-thumb:active {
  background-color: rgba(13, 52, 96, 0.85);
}

/* Roh medzi zvislou a vodorovnou dráhou — inak ostane biely štvorček. */

.discover-thread::-webkit-scrollbar-corner {
  background: transparent;
}

/*
 * Na dotykových zariadeniach kreslí scrollbar systém a zmizne sám. Vlastná
 * 12 px dráha by tam len ukrojila z textu, ktorého je na mobile aj tak málo
 * (pozri blok „Viac miesta pre text na mobile“).
 */

@media (hover: none) {
  .discover-thread::-webkit-scrollbar {
    width: 8px;
  }
  .discover-thread::-webkit-scrollbar-thumb {
    border-width: 2px;
  }
}

.discover-composer {
  border-radius: 0;
  box-shadow: none;
  border-top: 1px solid var(--ks-border);
}

.ks-chat-empty .discover-follow {
  justify-content: center;
  margin-top: 0;
}

.ks-chat-toolbar {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 0.75rem;
  margin-bottom: 0.75rem;
  font-size: var(--ks-t-xs);
  font-weight: 700;
  color: var(--ks-soft);
}

.ks-chat-reset {
  border: 0;
  background: transparent;
  color: var(--ks-blue);
  font: inherit;
  font-weight: 800;
  cursor: pointer;
  padding: 0;
}

.ks-chat-reset:hover { color: var(--ks-bluedk); text-decoration: underline; }

.ks-chat-turn {
  display: flex;
  flex-direction: column;
  gap: 0.55rem;
  margin-bottom: 0.95rem;
}

.ks-chat-row {
  display: flex;
  align-items: flex-end;
  gap: 0.5rem;
}

.ks-chat-row--user { justify-content: flex-end; }

.ks-chat-row--bot { justify-content: flex-start; }

.ks-chat-avatar {
  flex-shrink: 0;
  width: 2.5rem;
  height: 2.5rem;
  border-radius: 50%;
  /* Sprievodca je bačik — tvár na svetlom kruhu namiesto červenej ikony. */
  background: #fff;
  border: 2px solid rgba(208, 2, 27, 0.85);
  overflow: hidden;
  display: flex;
  align-items: center;
  justify-content: center;
  box-shadow: 0 4px 10px rgba(8, 20, 40, 0.25);
}

.ks-chat-avatar__tvar { width: 118%; height: 118%; margin-top: 12%; }

.ks-chat-bubble {
  max-width: min(92%, 38rem);
  padding: 0.72rem 0.95rem;
  font-size: var(--ks-t-sm);
  /* Text odpovede je súvislé čítanie, nie štítok — 600 ho robilo zbytočne
     hlučným. Dôraz v bubline nesie farba pozadia, nie hrúbka písma. */
  font-weight: 500;
  line-height: 1.5;
}

.ks-chat-bubble p { margin: 0; }

.ks-chat-bubble--user {
  background: var(--ks-bluedk);
  color: #fff;
  border-radius: 16px 16px 4px 16px;
  box-shadow: 0 8px 18px rgba(13, 52, 96, 0.22);
}

.ks-chat-bubble--bot {
  background: #fff;
  color: var(--ks-text);
  border: 1px solid var(--ks-border);
  border-radius: 16px 16px 16px 4px;
  box-shadow: 0 8px 22px rgba(15, 23, 42, 0.06);
}

.ks-chat-bubble--typing {
  display: inline-flex;
  align-items: center;
  gap: 0.55rem;
  color: var(--ks-soft);
  font-size: var(--ks-t-s);
}

.ks-chat-muted { color: rgba(255, 255, 255, 0.62); font-style: italic; font-weight: 600; }

.ks-chat-bubble--bot .ks-chat-muted { color: var(--ks-soft); }

.ks-chat-filters {
  margin-top: 0.4rem !important;
  font-size: var(--ks-t-xs);
  font-weight: 700;
  color: rgba(255, 255, 255, 0.62);
}

.ks-chat-answer {
  color: var(--ks-bluedk);
  white-space: pre-wrap;
}

.ks-chat-dots {
  display: inline-flex;
  gap: 0.22rem;
}

.ks-chat-dots i {
  width: 0.38rem;
  height: 0.38rem;
  border-radius: 50%;
  background: var(--ks-blue);
  display: block;
  animation: ks-chat-bounce 1s ease-in-out infinite;
}

.ks-chat-dots i:nth-child(2) { animation-delay: 0.15s; }

.ks-chat-dots i:nth-child(3) { animation-delay: 0.3s; }

@keyframes ks-chat-bounce {
  0%, 80%, 100% { transform: translateY(0); opacity: 0.45; }
  40% { transform: translateY(-4px); opacity: 1; }
}

.ks-chat-hits { margin-top: 0.7rem; }

.ks-chat-hits-h {
  font-size: var(--ks-t-2xs);
  font-weight: 800;
  letter-spacing: 0.12em;
  text-transform: uppercase;
  color: var(--ks-red);
  margin-bottom: 0.4rem;
  display: flex;
  align-items: center;
  gap: 0.4rem;
}

.ks-chat-hits-h span {
  font-size: var(--ks-t-2xs);
  letter-spacing: 0;
  text-transform: none;
  color: var(--ks-blue);
  background: var(--ks-bluelt);
  border-radius: 999px;
  padding: 0.08rem 0.48rem;
  font-weight: 800;
}

.ks-chat-hits ul {
  list-style: none;
  margin: 0;
  padding: 0;
  display: flex;
  flex-direction: column;
  gap: 0.28rem;
}

.ks-chat-hit {
  display: flex;
  align-items: center;
  gap: 0.65rem;
  padding: 0.32rem 0.4rem;
  border-radius: 10px;
  color: inherit;
  transition: background 0.15s ease;
}

.ks-chat-hit.is-pick {
  background: #fff8ef;
  border: 1px solid #f0ddc4;
}

.ks-chat-pick {
  display: block;
  font-size: var(--ks-t-2xs);
  font-weight: 800;
  letter-spacing: 0.07em;
  text-transform: uppercase;
  color: #c43c32;
  margin-bottom: 0.06rem;
}

.ks-chat-hit-img {
  width: 3.2rem;
  height: 2.4rem;
  flex-shrink: 0;
  border-radius: 7px;
  overflow: hidden;
  background: #e2e8f0;
}

.ks-chat-hit-img img,
.ks-chat-hit img {
  width: 3.2rem !important;
  height: 2.4rem !important;
  object-fit: cover;
  border-radius: 7px;
  flex-shrink: 0;
  background: #e2e8f0;
}

.ks-chat-hit > span:not(.ks-chat-hit-img):not(.ks-chat-hit-date) {
  min-width: 0;
  display: flex;
  flex-direction: column;
  gap: 0.08rem;
}

.ks-chat-hit strong {
  font-size: 0.84rem;
  font-weight: 800;
  color: var(--ks-bluedk);
  line-height: 1.25;
}

.ks-chat-hit em {
  font-style: normal;
  font-size: var(--ks-t-xs);
  font-weight: 600;
  color: var(--ks-soft);
}

.ks-chat-hit-date {
  width: 2.55rem;
  height: 2.4rem;
  flex-shrink: 0;
  border-radius: 7px;
  background: var(--ks-bluelt);
  color: var(--ks-blue);
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  line-height: 1;
  gap: 0.12rem;
}

.ks-chat-hit-date strong { font-size: 0.95rem; color: var(--ks-bluedk); }

.ks-chat-hit-date em {
  font-size: 0.58rem;
  text-transform: uppercase;
  letter-spacing: 0.04em;
}

.ks-chat-more {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 0.75rem;
  margin-top: 0.75rem;
  padding-top: 0.65rem;
  border-top: 1px solid var(--ks-border);
}

.ks-chat-follow { margin: 0 0 0.85rem; padding-left: 2.5rem; }

.discover-input-wrap {
  position: relative;
  flex: 1;
  min-width: 0;
  display: flex;
  align-items: stretch;
}

.discover-input-wrap input {
  width: 100%;
  position: relative;
  z-index: 1;
}

.discover-caret {
  display: inline-block;
  width: 1.5px;
  height: 1.08em;
  margin-left: 2px;
  flex-shrink: 0;
  background: #64748b;
  animation: discover-caret-blink 1.05s steps(1, end) infinite;
}

@keyframes discover-caret-blink {
  0%, 49% { opacity: 1; }
  50%, 100% { opacity: 0; }
}

@media (prefers-reduced-motion: reduce) {
  .discover-caret {
    animation: none;
  }
}

.discover-chips {
  display: flex;
  flex-wrap: wrap;
  gap: 0.4rem;
  margin-top: 0.75rem;
}

.discover-error { color: #b42318; }

.discover-follow {
  display: flex;
  flex-wrap: wrap;
  gap: 0.4rem;
  margin-top: 0.85rem;
}

.discover-src {
  font-size: var(--ks-t-2xs);
  font-weight: 700;
  color: var(--ks-soft);
}

.discover-band .discover-form {
  background: transparent;
  box-shadow: none;
  padding: 0;
}

.discover-band .discover-chat {
  background: transparent;
  border: 0;
  border-radius: 0;
  box-shadow: none;
  backdrop-filter: none;
  -webkit-backdrop-filter: none;
}

.discover-band .discover-thread {
  background: transparent;
  padding: 0.85rem 0.95rem 0.2rem;
}

.discover-band .discover-composer {
  border-top: 1px solid rgba(255, 255, 255, 0.12);
}

.discover-band .discover-chat.is-landing .discover-composer {
  border-top: 0;
}

/* Vyhľadávač na úvodke na 60 % šírky (od tabletu) — pole cez celú šírku
   pôsobilo ako pás a odťahovalo oko od nadpisu. Po otvorení rozhovoru
   (bez .is-landing) ide pole znova na celú šírku panela. */

@media (min-width: 768px) {
  .discover-band .discover-chat.is-landing .discover-composer {
    max-width: 60%;
  }
}

.discover-band .discover-starters {
  margin-top: 0.95rem;
  padding: 0 0.15rem 0.2rem;
}

.discover-band.is-rozhovor {
  align-items: stretch;
  padding: 1.25rem 0 1.5rem;
}

.discover-band.is-rozhovor .discover-inner {
  justify-content: flex-start;
}

.discover-band .discover-chat.is-open {
  flex: 1 1 auto;
  min-height: 0;
}

.discover-band .discover-chat.is-open .discover-thread {
  flex: 1 1 auto;
  max-height: min(52vh, 34rem);
}

.discover-band .ks-chat-empty {
  padding: 0.55rem 0.35rem 0.85rem;
}

.discover-band .ks-chat-empty-icon {
  display: none;
}

.discover-band .ks-chat-empty p {
  color: rgba(255, 255, 255, 0.62);
  font-weight: 500;
  margin-bottom: 0.75rem;
}

.discover-band .ks-chat-toolbar {
  color: rgba(255, 255, 255, 0.45);
}

.discover-band .ks-chat-reset {
  color: rgba(255, 255, 255, 0.82);
}

.discover-band .discover-input-row {
  background: rgba(255, 248, 239, 0.92);
  border: 1px solid rgba(255, 255, 255, 0.7);
  border-radius: 999px;
  padding: 0.28rem 0.28rem 0.28rem 0.2rem;
  box-shadow:
    inset 0 1px 0 rgba(255, 255, 255, 0.95),
    0 8px 24px rgba(28, 18, 8, 0.14);
  overflow: hidden;
}

@supports ((backdrop-filter: blur(1px)) or (-webkit-backdrop-filter: blur(1px))) {
  .discover-band .discover-input-row {
    background: rgba(255, 250, 244, 0.78);
    backdrop-filter: blur(16px) saturate(1.15);
    -webkit-backdrop-filter: blur(16px) saturate(1.15);
  }
}

.discover-band .discover-input-row:focus-within {
  background: rgba(255, 253, 249, 0.96);
  border-color: rgba(255, 255, 255, 0.88);
  box-shadow:
    inset 0 1px 0 #fff,
    0 10px 28px rgba(28, 18, 8, 0.16);
}

@supports ((backdrop-filter: blur(1px)) or (-webkit-backdrop-filter: blur(1px))) {
  .discover-band .discover-input-row:focus-within {
    background: rgba(255, 252, 248, 0.88);
  }
}

.discover-band .discover-input-row input {
  color: #1c1917;
  font-weight: 600;
}

.discover-band .discover-typehint {
  color: #78716c;
}

.discover-band .discover-caret {
  background: #a8a29e;
}

.discover-band .discover-submit {
  border-radius: 999px;
  box-shadow: 0 4px 14px rgba(166, 8, 24, 0.28);
}

.discover-band .discover-filters select,
.discover-band .discover-filters input[type='date'] {
  background: #fff;
  border-color: rgba(255, 255, 255, 0.55);
  color: var(--ks-text);
}

.discover-band .map-btn.discover-chip:hover {
  background: rgba(255, 255, 255, 0.1);
  border-color: rgba(255, 255, 255, 0.4);
  color: #fff;
}

.discover-band .map-btn.discover-chip.active {
  background: rgba(255, 255, 255, 0.18);
  color: #fff;
  border-color: rgba(255, 255, 255, 0.32);
}

.discover-band .discover-filters {
  border-top-color: rgba(255, 255, 255, 0.12);
}

.discover-band .discover-filters label {
  color: rgba(255, 255, 255, 0.45);
}

.discover-band .discover-filters select option {
  color: var(--ks-text);
  background: #fff;
}

@media (max-width: 575.98px) {
  .discover-title { font-size: clamp(1.85rem, 8.5vw, 2.35rem); }
  .ks-chat-follow { padding-left: 0; }
  .ks-chat-bubble { max-width: 100%; }
  .ks-chat-more { flex-direction: column; align-items: flex-start; }
}

/* FEATURED PLACES (under homepage search) */

.home-feat {
  background: #fff;
  padding: 2.6rem 0 2.85rem;
  scroll-margin-top: 0.75rem;
}

@media (min-width: 768px) {
  .home-feat {
    scroll-margin-top: 4.2rem;
  }
}

.home-feat-bento {
  display: grid;
  gap: 0.85rem;
}

.home-feat-bento--3 .home-feat-card.is-lead {
  grid-row: 1 / 3;
}

.home-feat-bento--many .home-feat-card {
  height: 250px;
}

.home-feat-card {
  position: relative;
  display: block;
  height: 100%;
  min-height: 160px;
  border-radius: 18px;
  overflow: hidden;
  color: #fff;
  text-decoration: none;
  background: #12263f;
  box-shadow: 0 14px 34px rgba(13, 52, 96, 0.12);
  transition: transform 0.2s ease, box-shadow 0.2s ease;
}

.home-feat-card:hover {
  color: #fff;
  transform: translateY(-3px);
  box-shadow: 0 18px 40px rgba(13, 52, 96, 0.18);
}

.home-feat-img {
  object-fit: cover;
  object-position: center;
}

.home-feat-fallback {
  position: absolute;
  inset: 0;
  background: linear-gradient(160deg, #12355c, #1a5fa8);
}

.home-feat-ov {
  position: absolute;
  inset: 0;
  z-index: 1;
  background: linear-gradient(
    180deg,
    rgba(8, 18, 36, 0.05) 0%,
    rgba(8, 18, 36, 0.18) 46%,
    rgba(8, 18, 36, 0.82) 100%
  );
}

.home-feat-copy {
  position: absolute;
  left: 0;
  right: 0;
  bottom: 0;
  z-index: 2;
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  padding: 1.2rem 1.25rem 1.25rem;
  color: #fff;
}

.home-feat-title {
  display: block;
  font-size: clamp(1.05rem, 1.8vw, 1.7rem);
  font-weight: 800;
  line-height: 1.18;
  letter-spacing: -0.03em;
  max-width: 36rem;
  text-shadow: 0 1px 12px rgba(0, 0, 0, 0.28);
}

.home-feat-card.is-lead .home-feat-title {
  font-size: clamp(1.35rem, 2.3vw, 2.05rem);
}

.home-feat-card:not(.is-lead) .home-feat-title {
  display: -webkit-box;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  overflow: hidden;
}

.home-feat-meta {
  display: inline-flex;
  align-items: center;
  gap: 0.4rem;
  margin-top: 0.45rem;
  font-size: var(--ks-t-s);
  font-weight: 600;
  color: rgba(255, 255, 255, 0.8);
}

.home-feat-meta--date {
  margin-top: 0.28rem;
  font-size: var(--ks-t-xs);
  color: rgba(255, 255, 255, 0.72);
}

.home-feat-when {
  position: absolute;
  top: 0.9rem;
  left: 0.9rem;
  z-index: 3;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  min-width: 3.15rem;
  padding: 0.42rem 0.55rem 0.48rem;
  border-radius: 12px;
  background: rgba(255, 255, 255, 0.94);
  color: #12355c;
  box-shadow: 0 8px 22px rgba(8, 18, 36, 0.18);
  line-height: 1;
}

.home-feat-when-d {
  font-size: 1.2rem;
  font-weight: 800;
  letter-spacing: -0.03em;
}

.home-feat-when-m {
  margin-top: 0.18rem;
  font-size: var(--ks-t-2xs);
  font-weight: 800;
  letter-spacing: 0.06em;
  text-transform: uppercase;
  color: #1a5fa8;
}

.home-feat-fallback--events {
  background: linear-gradient(160deg, #0f3a5c, #1a6f9c 55%, #2a8f7a);
}

.home-feat-card.is-lead .home-feat-when {
  min-width: 3.45rem;
  padding: 0.5rem 0.62rem 0.55rem;
}

.home-feat-card.is-lead .home-feat-when-d {
  font-size: 1.38rem;
}

.s-cat {
  display: inline-flex;
  align-items: center;
  gap: 0.32rem;
  font-size: var(--ks-t-2xs);
  font-weight: 800;
  letter-spacing: 0.1em;
  text-transform: uppercase;
  padding: 0.26rem 0.8rem;
  border-radius: 20px;
  color: #fff;
  margin-bottom: 0.7rem;
}

@media (max-width: 991.98px) {
  .home-feat-card.is-lead .home-feat-title {
    font-size: clamp(1.2rem, 3.2vw, 1.7rem);
  }
}

@media (max-width: 767.98px) {
  .home-feat-bento--3 .home-feat-card.is-lead {
    grid-row: auto;
  }
  .home-feat-card {
    height: 230px;
    min-height: 230px;
  }
  .home-feat-copy {
    padding: 1.05rem 1.1rem 1.15rem;
  }
  .home-feat-when {
    top: 0.75rem;
    left: 0.75rem;
    min-width: 2.9rem;
    padding: 0.36rem 0.48rem 0.4rem;
  }
  .home-feat-when-d {
    font-size: 1.08rem;
  }
}

@media (max-width: 575.98px) {
  .home-feat {
    padding-top: 2rem;
    padding-bottom: 2.15rem;
  }
  .home-feat-title {
    font-size: 1.12rem;
  }
}

.kraje-home-row {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 0.55rem;
  align-items: stretch;
  width: 100%;
  overflow: visible;
  padding: 0.45rem 0.1rem;
  margin: 0;
}

@media (min-width: 576px) {
  .kraje-home-row {
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 0.65rem;
    padding: 0.5rem 0.15rem;
  }
}

@media (min-width: 1100px) {
  .kraje-home-row {
    grid-template-columns: repeat(8, minmax(0, 1fr));
    gap: 0.75rem;
    padding: 0.55rem 0.2rem;
  }
}

.kraje-home-card {
  min-width: 0;
  max-width: none;
  width: 100%;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: flex-start;
  text-align: center;
  gap: 0.38rem;
  padding: 0.95rem 0.5rem 0.8rem;
  background: #fff;
  border: 1px solid var(--ks-border);
  border-radius: 14px;
  box-shadow:
    0 0 0 2px rgba(4, 22, 12, 0.45),
    0 3px 6px rgba(2, 10, 6, 0.62),
    0 8px 18px rgba(3, 16, 8, 0.5);
  color: var(--ks-text);
  text-decoration: none;
  transition: border-color 0.18s ease, box-shadow 0.18s ease, color 0.18s ease;
}

.kraje-home-card:hover {
  color: #167a42;
  border-color: color-mix(in srgb, #1e7a42 42%, var(--ks-border));
  box-shadow:
    0 0 0 2px rgba(4, 22, 12, 0.55),
    0 6px 10px rgba(2, 10, 6, 0.7),
    0 12px 24px rgba(3, 16, 8, 0.55);
}

.kraje-home-card:focus-visible {
  outline: 2px solid var(--ks-blue);
  outline-offset: 2px;
}

.kraje-home-card__icon {
  font-size: clamp(1.55rem, 2.8vw, 1.95rem);
  line-height: 1;
  color: #1e7a42;
  transition: color 0.18s ease;
}

.kraje-home-card:hover .kraje-home-card__icon {
  color: #16532c;
}

.kraje-home-card__num {
  font-size: clamp(1.45rem, 2.6vw, 1.85rem);
  font-weight: 800;
  color: #134d2c;
  line-height: 1;
  letter-spacing: -0.03em;
}

.kraje-home-card__num--zero {
  color: var(--ks-soft);
}

.kraje-home-card__label {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 0.08rem;
  line-height: 1.2;
}

.kraje-home-card__name {
  font-size: clamp(0.92rem, 1.55vw, 1.08rem);
  font-weight: 800;
  color: var(--ks-mid);
  letter-spacing: -0.02em;
  overflow-wrap: anywhere;
  hyphens: auto;
}

.kraje-home-card__kraj {
  display: block;
  font-size: clamp(0.8rem, 1.3vw, 0.92rem);
  font-weight: 700;
  color: var(--ks-soft);
  letter-spacing: 0.03em;
  text-transform: lowercase;
}

@media (max-width: 575.98px) {
  .home-intro .kraje-home-card {
    padding: 0.42rem 0.28rem 0.38rem;
  }
}

/* Úvodka — Vedeli ste? (slider z fun_fact + kruhová fotka objektu) */

.home-dyk-band {
  position: relative;
  overflow: hidden;
  background: linear-gradient(148deg, #050f22 0%, #0b2646 30%, #124878 62%, #1760a8 100%);
  color: #fff;
}

.home-dyk-band::before {
  content: '';
  position: absolute;
  inset: 0;
  background:
    radial-gradient(ellipse 95% 70% at 10% 18%, rgba(255, 255, 255, 0.1), transparent 55%),
    radial-gradient(ellipse 65% 45% at 92% 82%, rgba(56, 189, 248, 0.14), transparent 50%);
  pointer-events: none;
}

.home-dyk-band__hd-border {
  border-color: rgba(255, 255, 255, 0.26) !important;
}

.home-dyk-band__eye {
  color: rgba(186, 230, 253, 0.98) !important;
}

.home-dyk-band__eye::before {
  background: linear-gradient(90deg, rgba(255, 255, 255, 0.88), rgba(125, 211, 252, 0.65)) !important;
}

.home-dyk-band__title {
  color: #fff !important;
}

.home-dyk-slider-shell {
  max-width: 54rem;
  margin: 0 auto;
}

.home-dyk-slider {
  border-radius: 16px;
  overflow: hidden;
  background: rgba(255, 255, 255, 0.98);
  border: 1px solid rgba(255, 255, 255, 0.42) !important;
  box-shadow:
    0 18px 52px rgba(3, 12, 28, 0.55),
    inset 0 1px 0 rgba(255, 255, 255, 0.65);
  backdrop-filter: blur(10px);
}

.home-dyk-viewport {
  position: relative;
  min-height: 8.75rem;
}

.home-dyk-slide {
  display: none;
  padding: 1.4rem 1.45rem 1rem;
}

.home-dyk-slide.active {
  display: block;
  animation: home-dyk-fade 0.45s ease;
}

@keyframes home-dyk-fade {
  from {
    opacity: 0;
  }
  to {
    opacity: 1;
  }
}

.home-dyk-slide-inner {
  display: flex;
  align-items: flex-start;
  gap: 1.2rem;
}

.home-dyk-thumb-wrap {
  flex-shrink: 0;
  text-decoration: none;
  border-radius: 50%;
}

.home-dyk-thumb-wrap:focus-visible {
  outline: 3px solid rgba(56, 189, 248, 0.85);
  outline-offset: 4px;
}

.home-dyk-thumb {
  display: block;
  width: 104px;
  height: 104px;
  border-radius: 50%;
  object-fit: cover;
  border: 4px solid #fff;
  box-shadow:
    0 8px 26px rgba(13, 52, 96, 0.28),
    0 0 0 1px rgba(13, 52, 96, 0.07);
}

.home-dyk-thumb--empty {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 104px;
  height: 104px;
  border-radius: 50%;
  border: 4px solid #fff;
  box-shadow:
    0 8px 26px rgba(13, 52, 96, 0.28),
    0 0 0 1px rgba(13, 52, 96, 0.07);
  background: linear-gradient(145deg, var(--ks-blue), var(--ks-bluedk));
  color: rgba(255, 255, 255, 0.94);
  font-size: 2rem;
}

.home-dyk-main {
  flex: 1;
  min-width: 0;
  padding-top: 0.12rem;
}

.home-dyk-object-line {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 0.45rem 0.75rem;
  margin-bottom: 0.6rem;
}

.home-dyk-object-name {
  font-size: 1.06rem;
  font-weight: 800;
  color: var(--ks-bluedk);
  text-decoration: none;
  letter-spacing: -0.025em;
  line-height: 1.22;
}

.home-dyk-object-name:hover {
  color: var(--ks-red);
}

.home-dyk-pill {
  font-size: var(--ks-t-2xs);
  font-weight: 800;
  text-transform: uppercase;
  letter-spacing: 0.08em;
  padding: 0.24rem 0.58rem;
  border-radius: 999px;
  background: rgba(26, 95, 168, 0.09);
  color: var(--dyk-pill, var(--ks-blue));
  display: inline-flex;
  align-items: center;
  gap: 0.35rem;
}

@supports (background: color-mix(in srgb, #000 50%, #fff)) {
  .home-dyk-pill {
    background: color-mix(in srgb, var(--dyk-pill, var(--ks-blue)) 17%, #fff);
  }
}

.home-dyk-fact {
  font-size: clamp(0.92rem, 1.45vw, 1.06rem);
  line-height: 1.58;
  color: var(--ks-text);
  margin: 0;
  font-weight: 600;
  letter-spacing: -0.015em;
}

.home-dyk-toolbar {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 0.7rem;
  padding: 0.7rem 1rem 1.1rem;
  background: linear-gradient(180deg, #f5f8fc, #fff);
  border-top: 1px solid rgba(13, 52, 96, 0.08);
}

.home-dyk-arr {
  width: 2.35rem;
  height: 2.35rem;
  border-radius: 50%;
  border: 1.5px solid rgba(26, 95, 168, 0.22);
  background: #fff;
  color: var(--ks-bluedk);
  font-size: var(--ks-t-s);
  cursor: pointer;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  box-shadow: 0 4px 12px rgba(13, 52, 96, 0.08);
  transition: background 0.18s, border-color 0.18s, color 0.18s;
}

.home-dyk-arr:hover {
  background: var(--ks-blue);
  border-color: var(--ks-blue);
  color: #fff;
}

/* Pauza automatického prepínania (TODO 111) — oddelená od šípok, aby sa
   nezamenila s „ďalšou snímkou“. Ikona play je opticky vľavo, posun ju vycentruje. */

.home-dyk-pauza {
  margin-right: 0.35rem;
}

.home-dyk-pauza .fa-play {
  transform: translateX(1px);
}

.home-dyk-arr:focus-visible {
  outline: 3px solid var(--ks-blue);
  outline-offset: 2px;
}

.home-dyk-dots {
  display: flex;
  align-items: center;
  gap: 0;
}

.home-dyk-dot {
  /* Dotyková plocha 24 × 24 px (WCAG 2.5.8, Lighthouse „target-size“);
     samotná bodka je 8 px a kreslí ju ::before. */
  width: 24px;
  height: 24px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  border-radius: 999px;
  border: 0;
  padding: 0;
  margin: 0;
  cursor: pointer;
  background: transparent;
  appearance: none;
  -webkit-appearance: none;
}

.home-dyk-dot::before {
  content: '';
  display: block;
  width: 8px;
  height: 8px;
  border-radius: 999px;
  background: rgba(26, 95, 168, 0.28);
  transition: width 0.2s ease, background 0.2s ease;
}

.home-dyk-dot.is-on,
.home-dyk-dot.active {
  width: auto;
  padding: 0 0.2rem;
}

.home-dyk-count {
  font-size: var(--ks-t-xs);
  font-weight: 800;
  letter-spacing: 0.04em;
  color: var(--ks-soft);
  min-width: 2.4rem;
  text-align: center;
}

@media (max-width: 575.98px) {
  .home-dyk-slide {
    padding: 1.15rem 1.15rem 0.85rem;
  }
  .home-dyk-slide-inner {
    flex-direction: column;
    align-items: center;
    text-align: center;
  }
  .home-dyk-object-line {
    justify-content: center;
  }
  .home-dyk-main {
    padding-top: 0;
  }
  .home-dyk-fact {
    text-align: center;
  }
  .home-dyk-toolbar {
    padding-bottom: 0.9rem;
  }
}

/* ============================================================================
   VYHĽADÁVAČ — karta priameho zásahu
   Zobrazí sa, keď dopyt jednoznačne mieri na jeden objekt. Ostatné výsledky
   pod ňou sú už len súvisiace tipy.
   ========================================================================= */

.ks-chat-direct {
  display: flex;
  align-items: center;
  gap: 0.85rem;
  margin: 0.85rem 0 0.4rem;
  padding: 0.7rem 0.85rem;
  border-radius: 14px;
  border: 1px solid color-mix(in srgb, var(--ks-blue) 28%, #dde4ee);
  background: linear-gradient(135deg, #f7fbff 0%, #eef5fd 100%);
  box-shadow: 0 4px 14px rgba(13, 52, 96, 0.07);
  text-decoration: none;
  color: inherit;
  transition: box-shadow 0.18s, transform 0.18s, border-color 0.18s;
}

.ks-chat-direct:hover {
  border-color: var(--ks-blue);
  box-shadow: 0 8px 22px rgba(13, 52, 96, 0.13);
  transform: translateY(-1px);
}

.ks-chat-direct-img {
  flex: 0 0 auto;
  width: 104px;
  height: 78px;
  border-radius: 10px;
  overflow: hidden;
  background: #e6eef5;
}

.ks-chat-direct-img img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
}

.ks-chat-direct-body {
  flex: 1 1 auto;
  min-width: 0;
  display: flex;
  flex-direction: column;
  gap: 0.15rem;
}

.ks-chat-direct-eyebrow {
  font-size: var(--ks-t-2xs);
  font-weight: 800;
  letter-spacing: 0.09em;
  text-transform: uppercase;
  color: var(--ks-blue);
}

.ks-chat-direct-body strong {
  font-size: 1.02rem;
  font-weight: 700;
  line-height: 1.25;
  color: #0f2744;
}

.ks-chat-direct-body em {
  font-style: normal;
  font-size: var(--ks-t-s);
  color: var(--ks-soft, #64748b);
}

.ks-chat-direct-go {
  flex: 0 0 auto;
  width: 2.1rem;
  height: 2.1rem;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  border-radius: 50%;
  background: var(--ks-blue);
  color: #fff;
  font-size: var(--ks-t-s);
}

@media (max-width: 575.98px) {
  .ks-chat-direct-img {
    width: 76px;
    height: 60px;
  }
  .ks-chat-direct-body strong {
    font-size: 0.95rem;
  }
}

/* drobné pilulky na úvodke — 9,9 px */

.home-dyk-pill,
.home-feat-when-m,
.s-cat {
  font-size: clamp(0.7rem, 0.65rem + 0.22vw, 0.78rem);
}

.home-intro .kraje-home-card__kraj {
  font-size: clamp(0.72rem, 0.66rem + 0.28vw, 0.8rem);
}

/* ============================================================================
   HERO NA ÚVODKE — nadpis sa nesmie schovať pod hlavičku
   .discover-band má overflow:hidden a mal min-height:0, takže sa vo flex stĺpci
   mohol zmenšiť pod výšku vlastného obsahu. Obsah je centrovaný, takže sa
   odrezal vrch — nadpis zmizol pod navigáciou (typicky na notebooku ~860 px
   a po rozbalení filtrov). Necháme ho zmenšovať sa, ale nie pod obsah.
   ========================================================================= */

.home-intro .discover-band {
  flex: 3 1 auto;
  min-height: min-content;
}

/* ============================================================================
   ÚVODKA — karty krajov musia byť nad horským predelom
   .sec-ridge--hero má z-index 9 a jeho SVG presahuje pod pätu predelu (~50 px).
   Na užších displejoch tým prekrývalo vrch prvého radu kariet — odrezané ikony
   aj horné rohy. Dekorácia nikdy nesmie prekryť obsah.
   ========================================================================= *//* Poradie vrstiev musí byť: pozadie pásu → hory → karty.
   Pozor na stacking context: .ks-container má z-index 1, takže z-index nastavený
   na samotnom riadku sa počíta len vnútri neho. Dvíhať treba práve ten kontajner —
   pozadie pásu tak zostane pod horami a karty nad nimi. */

.home-intro .home-kraje-band > .ks-container,
.home-intro #home-kraje-grid > .ks-container {
  position: relative;
  z-index: 10;
}

/* ══ Nočná obloha na úvodke ══════════════════════════════════════════════════
   Zapína sa triedou .sky-night na .discover-band (komponent SkyScene podľa
   miestneho času návštevníka, 20:00–6:00). Hviezdy sú zapečené SVG s pevným
   rozmiestnením, Mesiac kreslí SkyScene podľa skutočnej fázy.
   Návrat: zmazať tento blok po značku „koniec nočnej oblohy".
   ═════════════════════════════════════════════════════════════════════════ */

.discover-band {
  transition: background 1.2s ease;
}

.discover-band.sky-night {
  background:
    radial-gradient(ellipse 120% 55% at 50% 118%, rgba(86, 128, 190, 0.28), transparent 60%),
    linear-gradient(180deg, #030713 0%, #070f24 24%, #0d1b3a 52%, #16305c 78%, #29527f 100%);
}

/* Slnko a oblaky patria dňu. Animácia sky-sun má fill-mode forwards, takže
   samotné opacity:0 by neprebila — treba jej vypnúť aj animáciu. */

.discover-band.sky-night::after {
  animation: none;
  opacity: 0;
  transition: opacity 1.2s ease;
}

.discover-band.sky-night::before {
  opacity: 0.07;
  filter: blur(9px);
}

.ks-sky {
  position: absolute;
  inset: 0;
  z-index: 0;
  pointer-events: none;
  overflow: hidden;
}

.ks-sky-stars {
  position: absolute;
  left: 0;
  right: 0;
  top: 0;
  height: 78%;
  background-repeat: repeat;
  /* Hviezdy nesmú svietiť cez hory na obzore. */
  -webkit-mask-image: linear-gradient(180deg, #000 0%, #000 62%, transparent 100%);
  mask-image: linear-gradient(180deg, #000 0%, #000 62%, transparent 100%);
}

.ks-sky-stars--far {
  background-image: url("data:image/svg+xml,%3Csvg%20xmlns%3D%27http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%27%20viewBox%3D%270%200%201000%20520%27%3E%3Cg%20fill%3D%27%23ffffff%27%3E%3Ccircle%20cx%3D%27882.0%27%20cy%3D%27131.8%27%20r%3D%270.69%27%20opacity%3D%270.66%27%2F%3E%3Ccircle%20cx%3D%27716.5%27%20cy%3D%27294.8%27%20r%3D%271.05%27%20opacity%3D%270.39%27%2F%3E%3Ccircle%20cx%3D%27187.3%27%20cy%3D%2767.2%27%20r%3D%270.98%27%20opacity%3D%270.71%27%2F%3E%3Ccircle%20cx%3D%27364.6%27%20cy%3D%2747.9%27%20r%3D%271.01%27%20opacity%3D%270.46%27%2F%3E%3Ccircle%20cx%3D%27141.3%27%20cy%3D%27143.1%27%20r%3D%270.72%27%20opacity%3D%270.55%27%2F%3E%3Ccircle%20cx%3D%27789.5%27%20cy%3D%27349.9%27%20r%3D%271.11%27%20opacity%3D%270.63%27%2F%3E%3Ccircle%20cx%3D%27566.9%27%20cy%3D%2788.2%27%20r%3D%270.95%27%20opacity%3D%270.62%27%2F%3E%3Ccircle%20cx%3D%27977.7%27%20cy%3D%274.2%27%20r%3D%270.81%27%20opacity%3D%270.65%27%2F%3E%3Ccircle%20cx%3D%27258.8%27%20cy%3D%27514.1%27%20r%3D%270.72%27%20opacity%3D%270.56%27%2F%3E%3Ccircle%20cx%3D%27502.7%27%20cy%3D%27174.0%27%20r%3D%271.12%27%20opacity%3D%270.56%27%2F%3E%3Ccircle%20cx%3D%27677.1%27%20cy%3D%27315.5%27%20r%3D%271.09%27%20opacity%3D%270.75%27%2F%3E%3Ccircle%20cx%3D%27809.2%27%20cy%3D%27347.9%27%20r%3D%270.62%27%20opacity%3D%270.72%27%2F%3E%3Ccircle%20cx%3D%27777.6%27%20cy%3D%27395.6%27%20r%3D%270.88%27%20opacity%3D%270.61%27%2F%3E%3Ccircle%20cx%3D%27231.2%27%20cy%3D%27428.6%27%20r%3D%270.73%27%20opacity%3D%270.75%27%2F%3E%3Ccircle%20cx%3D%27687.5%27%20cy%3D%27233.0%27%20r%3D%271.07%27%20opacity%3D%270.79%27%2F%3E%3Ccircle%20cx%3D%27327.1%27%20cy%3D%27117.0%27%20r%3D%270.68%27%20opacity%3D%270.68%27%2F%3E%3Ccircle%20cx%3D%27696.0%27%20cy%3D%27146.9%27%20r%3D%270.62%27%20opacity%3D%270.46%27%2F%3E%3Ccircle%20cx%3D%27333.9%27%20cy%3D%27328.7%27%20r%3D%270.9%27%20opacity%3D%270.72%27%2F%3E%3Ccircle%20cx%3D%27462.7%27%20cy%3D%27460.4%27%20r%3D%271.12%27%20opacity%3D%270.42%27%2F%3E%3Ccircle%20cx%3D%2758.8%27%20cy%3D%27266.8%27%20r%3D%270.89%27%20opacity%3D%270.77%27%2F%3E%3Ccircle%20cx%3D%27529.0%27%20cy%3D%27461.1%27%20r%3D%270.62%27%20opacity%3D%270.52%27%2F%3E%3Ccircle%20cx%3D%27724.0%27%20cy%3D%27192.0%27%20r%3D%270.72%27%20opacity%3D%270.76%27%2F%3E%3Ccircle%20cx%3D%27483.4%27%20cy%3D%2756.4%27%20r%3D%270.73%27%20opacity%3D%270.62%27%2F%3E%3Ccircle%20cx%3D%27352.2%27%20cy%3D%27442.5%27%20r%3D%270.67%27%20opacity%3D%270.63%27%2F%3E%3Ccircle%20cx%3D%27662.5%27%20cy%3D%27433.3%27%20r%3D%270.83%27%20opacity%3D%270.68%27%2F%3E%3Ccircle%20cx%3D%27381.9%27%20cy%3D%2795.7%27%20r%3D%270.63%27%20opacity%3D%270.35%27%2F%3E%3Ccircle%20cx%3D%27424.5%27%20cy%3D%2745.6%27%20r%3D%270.76%27%20opacity%3D%270.71%27%2F%3E%3Ccircle%20cx%3D%27163.1%27%20cy%3D%27176.8%27%20r%3D%271.08%27%20opacity%3D%270.42%27%2F%3E%3Ccircle%20cx%3D%27106.7%27%20cy%3D%27144.9%27%20r%3D%270.8%27%20opacity%3D%270.73%27%2F%3E%3Ccircle%20cx%3D%27831.0%27%20cy%3D%27501.9%27%20r%3D%270.64%27%20opacity%3D%270.75%27%2F%3E%3Ccircle%20cx%3D%27826.1%27%20cy%3D%27155.6%27%20r%3D%271.13%27%20opacity%3D%270.4%27%2F%3E%3Ccircle%20cx%3D%27883.2%27%20cy%3D%271.3%27%20r%3D%270.73%27%20opacity%3D%270.72%27%2F%3E%3Ccircle%20cx%3D%27776.6%27%20cy%3D%27220.1%27%20r%3D%271.05%27%20opacity%3D%270.6%27%2F%3E%3Ccircle%20cx%3D%279.7%27%20cy%3D%27371.3%27%20r%3D%270.83%27%20opacity%3D%270.54%27%2F%3E%3Ccircle%20cx%3D%27660.6%27%20cy%3D%27470.0%27%20r%3D%270.96%27%20opacity%3D%270.46%27%2F%3E%3Ccircle%20cx%3D%27137.5%27%20cy%3D%27498.2%27%20r%3D%271.14%27%20opacity%3D%270.5%27%2F%3E%3Ccircle%20cx%3D%27906.4%27%20cy%3D%27423.6%27%20r%3D%270.64%27%20opacity%3D%270.71%27%2F%3E%3Ccircle%20cx%3D%27564.6%27%20cy%3D%27387.5%27%20r%3D%271.01%27%20opacity%3D%270.79%27%2F%3E%3Ccircle%20cx%3D%27148.0%27%20cy%3D%2776.2%27%20r%3D%270.85%27%20opacity%3D%270.68%27%2F%3E%3Ccircle%20cx%3D%27409.0%27%20cy%3D%27281.5%27%20r%3D%270.97%27%20opacity%3D%270.37%27%2F%3E%3Ccircle%20cx%3D%27265.0%27%20cy%3D%27171.1%27%20r%3D%270.96%27%20opacity%3D%270.62%27%2F%3E%3Ccircle%20cx%3D%27316.7%27%20cy%3D%27290.5%27%20r%3D%271.0%27%20opacity%3D%270.65%27%2F%3E%3Ccircle%20cx%3D%27909.0%27%20cy%3D%27306.9%27%20r%3D%270.81%27%20opacity%3D%270.77%27%2F%3E%3Ccircle%20cx%3D%2757.4%27%20cy%3D%27481.3%27%20r%3D%270.95%27%20opacity%3D%270.54%27%2F%3E%3Ccircle%20cx%3D%27790.5%27%20cy%3D%2785.7%27%20r%3D%271.09%27%20opacity%3D%270.47%27%2F%3E%3Ccircle%20cx%3D%27229.1%27%20cy%3D%27464.8%27%20r%3D%270.84%27%20opacity%3D%270.52%27%2F%3E%3Ccircle%20cx%3D%27795.8%27%20cy%3D%27343.1%27%20r%3D%270.8%27%20opacity%3D%270.78%27%2F%3E%3Ccircle%20cx%3D%27672.6%27%20cy%3D%27304.1%27%20r%3D%270.84%27%20opacity%3D%270.47%27%2F%3E%3Ccircle%20cx%3D%27910.5%27%20cy%3D%27431.7%27%20r%3D%270.78%27%20opacity%3D%270.47%27%2F%3E%3Ccircle%20cx%3D%27288.6%27%20cy%3D%27386.5%27%20r%3D%270.89%27%20opacity%3D%270.66%27%2F%3E%3Ccircle%20cx%3D%27506.0%27%20cy%3D%2759.3%27%20r%3D%270.98%27%20opacity%3D%270.47%27%2F%3E%3Ccircle%20cx%3D%27963.1%27%20cy%3D%2768.0%27%20r%3D%271.08%27%20opacity%3D%270.5%27%2F%3E%3Ccircle%20cx%3D%277.3%27%20cy%3D%2719.4%27%20r%3D%270.7%27%20opacity%3D%270.57%27%2F%3E%3Ccircle%20cx%3D%27886.5%27%20cy%3D%27359.6%27%20r%3D%271.08%27%20opacity%3D%270.45%27%2F%3E%3Ccircle%20cx%3D%27952.2%27%20cy%3D%2745.4%27%20r%3D%270.78%27%20opacity%3D%270.8%27%2F%3E%3Ccircle%20cx%3D%27352.3%27%20cy%3D%27334.7%27%20r%3D%270.84%27%20opacity%3D%270.38%27%2F%3E%3Ccircle%20cx%3D%27256.7%27%20cy%3D%27421.6%27%20r%3D%270.74%27%20opacity%3D%270.54%27%2F%3E%3Ccircle%20cx%3D%27377.8%27%20cy%3D%27353.8%27%20r%3D%271.02%27%20opacity%3D%270.37%27%2F%3E%3Ccircle%20cx%3D%27398.8%27%20cy%3D%27144.5%27%20r%3D%271.14%27%20opacity%3D%270.66%27%2F%3E%3Ccircle%20cx%3D%27975.0%27%20cy%3D%27226.7%27%20r%3D%270.69%27%20opacity%3D%270.58%27%2F%3E%3Ccircle%20cx%3D%27869.6%27%20cy%3D%27431.0%27%20r%3D%271.01%27%20opacity%3D%270.43%27%2F%3E%3Ccircle%20cx%3D%2724.2%27%20cy%3D%27498.6%27%20r%3D%270.66%27%20opacity%3D%270.57%27%2F%3E%3Ccircle%20cx%3D%27290.8%27%20cy%3D%27274.1%27%20r%3D%270.95%27%20opacity%3D%270.59%27%2F%3E%3Ccircle%20cx%3D%27706.5%27%20cy%3D%27195.3%27%20r%3D%271.04%27%20opacity%3D%270.43%27%2F%3E%3Ccircle%20cx%3D%27729.1%27%20cy%3D%27133.8%27%20r%3D%270.65%27%20opacity%3D%270.41%27%2F%3E%3Ccircle%20cx%3D%27389.7%27%20cy%3D%27262.7%27%20r%3D%270.67%27%20opacity%3D%270.6%27%2F%3E%3Ccircle%20cx%3D%27456.5%27%20cy%3D%27513.0%27%20r%3D%270.64%27%20opacity%3D%270.73%27%2F%3E%3Ccircle%20cx%3D%27478.0%27%20cy%3D%27396.1%27%20r%3D%271.15%27%20opacity%3D%270.47%27%2F%3E%3Ccircle%20cx%3D%27600.8%27%20cy%3D%27403.6%27%20r%3D%270.95%27%20opacity%3D%270.42%27%2F%3E%3Ccircle%20cx%3D%27888.1%27%20cy%3D%27137.4%27%20r%3D%270.79%27%20opacity%3D%270.52%27%2F%3E%3Ccircle%20cx%3D%27161.5%27%20cy%3D%27488.6%27%20r%3D%270.87%27%20opacity%3D%270.37%27%2F%3E%3Ccircle%20cx%3D%27784.0%27%20cy%3D%27371.7%27%20r%3D%270.69%27%20opacity%3D%270.62%27%2F%3E%3Ccircle%20cx%3D%276.5%27%20cy%3D%2712.0%27%20r%3D%270.91%27%20opacity%3D%270.75%27%2F%3E%3Ccircle%20cx%3D%27971.2%27%20cy%3D%2756.1%27%20r%3D%270.65%27%20opacity%3D%270.4%27%2F%3E%3Ccircle%20cx%3D%27629.1%27%20cy%3D%2775.8%27%20r%3D%270.8%27%20opacity%3D%270.67%27%2F%3E%3Ccircle%20cx%3D%27147.4%27%20cy%3D%2778.2%27%20r%3D%270.74%27%20opacity%3D%270.8%27%2F%3E%3Ccircle%20cx%3D%27104.4%27%20cy%3D%27428.6%27%20r%3D%270.83%27%20opacity%3D%270.79%27%2F%3E%3Ccircle%20cx%3D%27852.9%27%20cy%3D%27518.6%27%20r%3D%270.78%27%20opacity%3D%270.73%27%2F%3E%3Ccircle%20cx%3D%27484.7%27%20cy%3D%27130.7%27%20r%3D%271.08%27%20opacity%3D%270.6%27%2F%3E%3Ccircle%20cx%3D%27665.7%27%20cy%3D%27105.1%27%20r%3D%270.95%27%20opacity%3D%270.36%27%2F%3E%3Ccircle%20cx%3D%27622.1%27%20cy%3D%27388.9%27%20r%3D%270.7%27%20opacity%3D%270.64%27%2F%3E%3Ccircle%20cx%3D%27989.7%27%20cy%3D%272.3%27%20r%3D%270.88%27%20opacity%3D%270.47%27%2F%3E%3Ccircle%20cx%3D%27587.8%27%20cy%3D%27302.1%27%20r%3D%270.67%27%20opacity%3D%270.64%27%2F%3E%3Ccircle%20cx%3D%2758.1%27%20cy%3D%27504.0%27%20r%3D%270.78%27%20opacity%3D%270.61%27%2F%3E%3Ccircle%20cx%3D%27711.6%27%20cy%3D%27416.4%27%20r%3D%271.11%27%20opacity%3D%270.37%27%2F%3E%3Ccircle%20cx%3D%27429.3%27%20cy%3D%27339.9%27%20r%3D%270.81%27%20opacity%3D%270.55%27%2F%3E%3Ccircle%20cx%3D%27286.8%27%20cy%3D%27276.0%27%20r%3D%270.68%27%20opacity%3D%270.36%27%2F%3E%3Ccircle%20cx%3D%27177.1%27%20cy%3D%2717.0%27%20r%3D%270.64%27%20opacity%3D%270.6%27%2F%3E%3Ccircle%20cx%3D%27989.4%27%20cy%3D%27256.1%27%20r%3D%270.94%27%20opacity%3D%270.39%27%2F%3E%3Ccircle%20cx%3D%27491.3%27%20cy%3D%27151.3%27%20r%3D%270.94%27%20opacity%3D%270.55%27%2F%3E%3Ccircle%20cx%3D%27901.2%27%20cy%3D%2789.5%27%20r%3D%271.03%27%20opacity%3D%270.62%27%2F%3E%3Ccircle%20cx%3D%27843.8%27%20cy%3D%27466.6%27%20r%3D%270.92%27%20opacity%3D%270.5%27%2F%3E%3Ccircle%20cx%3D%27562.8%27%20cy%3D%27275.6%27%20r%3D%270.85%27%20opacity%3D%270.37%27%2F%3E%3Ccircle%20cx%3D%27245.4%27%20cy%3D%27135.7%27%20r%3D%270.86%27%20opacity%3D%270.56%27%2F%3E%3Ccircle%20cx%3D%27852.0%27%20cy%3D%27320.8%27%20r%3D%270.72%27%20opacity%3D%270.74%27%2F%3E%3Ccircle%20cx%3D%27550.4%27%20cy%3D%27345.2%27%20r%3D%270.76%27%20opacity%3D%270.75%27%2F%3E%3Ccircle%20cx%3D%27439.3%27%20cy%3D%27305.9%27%20r%3D%270.8%27%20opacity%3D%270.59%27%2F%3E%3Ccircle%20cx%3D%27253.6%27%20cy%3D%27312.1%27%20r%3D%271.0%27%20opacity%3D%270.41%27%2F%3E%3Ccircle%20cx%3D%27899.0%27%20cy%3D%2757.9%27%20r%3D%271.13%27%20opacity%3D%270.45%27%2F%3E%3Ccircle%20cx%3D%27609.1%27%20cy%3D%27281.6%27%20r%3D%270.67%27%20opacity%3D%270.38%27%2F%3E%3Ccircle%20cx%3D%27991.3%27%20cy%3D%27284.1%27%20r%3D%270.65%27%20opacity%3D%270.59%27%2F%3E%3Ccircle%20cx%3D%27619.6%27%20cy%3D%27203.8%27%20r%3D%270.75%27%20opacity%3D%270.68%27%2F%3E%3Ccircle%20cx%3D%27772.8%27%20cy%3D%27141.8%27%20r%3D%271.02%27%20opacity%3D%270.62%27%2F%3E%3Ccircle%20cx%3D%27714.5%27%20cy%3D%27481.6%27%20r%3D%271.0%27%20opacity%3D%270.49%27%2F%3E%3Ccircle%20cx%3D%27615.7%27%20cy%3D%27156.6%27%20r%3D%270.83%27%20opacity%3D%270.35%27%2F%3E%3Ccircle%20cx%3D%27470.0%27%20cy%3D%27469.3%27%20r%3D%271.03%27%20opacity%3D%270.5%27%2F%3E%3Ccircle%20cx%3D%27840.1%27%20cy%3D%27474.9%27%20r%3D%270.88%27%20opacity%3D%270.66%27%2F%3E%3Ccircle%20cx%3D%27382.1%27%20cy%3D%27484.6%27%20r%3D%270.79%27%20opacity%3D%270.62%27%2F%3E%3Ccircle%20cx%3D%27605.8%27%20cy%3D%27351.5%27%20r%3D%270.98%27%20opacity%3D%270.52%27%2F%3E%3Ccircle%20cx%3D%27621.7%27%20cy%3D%27482.9%27%20r%3D%271.13%27%20opacity%3D%270.57%27%2F%3E%3Ccircle%20cx%3D%27132.1%27%20cy%3D%2760.1%27%20r%3D%270.86%27%20opacity%3D%270.6%27%2F%3E%3Ccircle%20cx%3D%27981.9%27%20cy%3D%27285.9%27%20r%3D%271.1%27%20opacity%3D%270.72%27%2F%3E%3Ccircle%20cx%3D%27113.8%27%20cy%3D%27209.2%27%20r%3D%270.69%27%20opacity%3D%270.56%27%2F%3E%3Ccircle%20cx%3D%27683.7%27%20cy%3D%2786.4%27%20r%3D%271.09%27%20opacity%3D%270.6%27%2F%3E%3Ccircle%20cx%3D%27607.6%27%20cy%3D%27234.1%27%20r%3D%270.66%27%20opacity%3D%270.56%27%2F%3E%3Ccircle%20cx%3D%27826.1%27%20cy%3D%27123.1%27%20r%3D%270.92%27%20opacity%3D%270.42%27%2F%3E%3Ccircle%20cx%3D%27833.2%27%20cy%3D%27273.1%27%20r%3D%270.69%27%20opacity%3D%270.6%27%2F%3E%3Ccircle%20cx%3D%27620.1%27%20cy%3D%27430.7%27%20r%3D%270.8%27%20opacity%3D%270.57%27%2F%3E%3Ccircle%20cx%3D%27136.8%27%20cy%3D%27351.6%27%20r%3D%270.69%27%20opacity%3D%270.35%27%2F%3E%3Ccircle%20cx%3D%27424.4%27%20cy%3D%27366.1%27%20r%3D%271.07%27%20opacity%3D%270.69%27%2F%3E%3Ccircle%20cx%3D%27286.7%27%20cy%3D%27138.6%27%20r%3D%270.86%27%20opacity%3D%270.64%27%2F%3E%3Ccircle%20cx%3D%27158.7%27%20cy%3D%27408.2%27%20r%3D%270.79%27%20opacity%3D%270.5%27%2F%3E%3Ccircle%20cx%3D%27214.1%27%20cy%3D%2778.9%27%20r%3D%270.62%27%20opacity%3D%270.7%27%2F%3E%3Ccircle%20cx%3D%27875.8%27%20cy%3D%27166.3%27%20r%3D%270.97%27%20opacity%3D%270.42%27%2F%3E%3Ccircle%20cx%3D%27986.3%27%20cy%3D%27479.6%27%20r%3D%271.15%27%20opacity%3D%270.44%27%2F%3E%3Ccircle%20cx%3D%27558.9%27%20cy%3D%27383.0%27%20r%3D%270.88%27%20opacity%3D%270.72%27%2F%3E%3Ccircle%20cx%3D%27591.7%27%20cy%3D%27213.4%27%20r%3D%270.88%27%20opacity%3D%270.68%27%2F%3E%3Ccircle%20cx%3D%27528.3%27%20cy%3D%27111.9%27%20r%3D%270.8%27%20opacity%3D%270.75%27%2F%3E%3Ccircle%20cx%3D%27360.7%27%20cy%3D%2768.8%27%20r%3D%270.98%27%20opacity%3D%270.68%27%2F%3E%3Ccircle%20cx%3D%27298.8%27%20cy%3D%2734.6%27%20r%3D%271.07%27%20opacity%3D%270.72%27%2F%3E%3Ccircle%20cx%3D%27902.4%27%20cy%3D%2773.4%27%20r%3D%271.11%27%20opacity%3D%270.51%27%2F%3E%3Ccircle%20cx%3D%27105.7%27%20cy%3D%27366.1%27%20r%3D%270.9%27%20opacity%3D%270.39%27%2F%3E%3Ccircle%20cx%3D%27492.4%27%20cy%3D%27183.0%27%20r%3D%270.89%27%20opacity%3D%270.43%27%2F%3E%3Ccircle%20cx%3D%27140.4%27%20cy%3D%27224.6%27%20r%3D%270.64%27%20opacity%3D%270.38%27%2F%3E%3Ccircle%20cx%3D%27433.4%27%20cy%3D%27334.6%27%20r%3D%270.88%27%20opacity%3D%270.67%27%2F%3E%3Ccircle%20cx%3D%27283.6%27%20cy%3D%27343.2%27%20r%3D%270.85%27%20opacity%3D%270.57%27%2F%3E%3Ccircle%20cx%3D%27573.5%27%20cy%3D%27316.4%27%20r%3D%270.96%27%20opacity%3D%270.54%27%2F%3E%3Ccircle%20cx%3D%27201.0%27%20cy%3D%27162.4%27%20r%3D%270.93%27%20opacity%3D%270.62%27%2F%3E%3Ccircle%20cx%3D%27649.8%27%20cy%3D%27484.0%27%20r%3D%271.15%27%20opacity%3D%270.58%27%2F%3E%3Ccircle%20cx%3D%27565.0%27%20cy%3D%27399.7%27%20r%3D%270.98%27%20opacity%3D%270.37%27%2F%3E%3Ccircle%20cx%3D%27135.6%27%20cy%3D%27203.1%27%20r%3D%270.79%27%20opacity%3D%270.56%27%2F%3E%3Ccircle%20cx%3D%27762.1%27%20cy%3D%2718.7%27%20r%3D%270.76%27%20opacity%3D%270.78%27%2F%3E%3Ccircle%20cx%3D%27769.3%27%20cy%3D%27355.6%27%20r%3D%270.99%27%20opacity%3D%270.46%27%2F%3E%3Ccircle%20cx%3D%27482.8%27%20cy%3D%27107.2%27%20r%3D%270.83%27%20opacity%3D%270.62%27%2F%3E%3Ccircle%20cx%3D%27835.3%27%20cy%3D%2740.5%27%20r%3D%270.84%27%20opacity%3D%270.64%27%2F%3E%3Ccircle%20cx%3D%27364.0%27%20cy%3D%27352.0%27%20r%3D%271.13%27%20opacity%3D%270.56%27%2F%3E%3Ccircle%20cx%3D%27462.2%27%20cy%3D%2743.2%27%20r%3D%270.68%27%20opacity%3D%270.75%27%2F%3E%3Ccircle%20cx%3D%27928.5%27%20cy%3D%27320.2%27%20r%3D%270.7%27%20opacity%3D%270.45%27%2F%3E%3Ccircle%20cx%3D%2793.4%27%20cy%3D%27194.8%27%20r%3D%271.05%27%20opacity%3D%270.55%27%2F%3E%3Ccircle%20cx%3D%27204.2%27%20cy%3D%2716.2%27%20r%3D%270.61%27%20opacity%3D%270.67%27%2F%3E%3C%2Fg%3E%3C%2Fsvg%3E");
  background-size: 1000px 520px;
  opacity: 0.72;
  animation: ks-twinkle-a 7s ease-in-out infinite;
}

.ks-sky-stars--near {
  background-image: url("data:image/svg+xml,%3Csvg%20xmlns%3D%27http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%27%20viewBox%3D%270%200%201000%20520%27%3E%3Cg%20fill%3D%27%23ffffff%27%3E%3Ccircle%20cx%3D%27822.5%27%20cy%3D%27221.1%27%20r%3D%271.27%27%20opacity%3D%270.87%27%2F%3E%3Ccircle%20cx%3D%2754.1%27%20cy%3D%27132.4%27%20r%3D%271.25%27%20opacity%3D%270.8%27%2F%3E%3Ccircle%20cx%3D%27399.0%27%20cy%3D%27347.5%27%20r%3D%271.66%27%20opacity%3D%270.98%27%2F%3E%3Ccircle%20cx%3D%27374.8%27%20cy%3D%27383.2%27%20r%3D%271.59%27%20opacity%3D%270.71%27%2F%3E%3Ccircle%20cx%3D%27371.6%27%20cy%3D%2738.4%27%20r%3D%272.09%27%20opacity%3D%270.89%27%2F%3E%3Ccircle%20cx%3D%27931.0%27%20cy%3D%27219.6%27%20r%3D%271.75%27%20opacity%3D%270.63%27%2F%3E%3Ccircle%20cx%3D%27665.6%27%20cy%3D%27258.0%27%20r%3D%271.32%27%20opacity%3D%270.82%27%2F%3E%3Ccircle%20cx%3D%27618.6%27%20cy%3D%27200.3%27%20r%3D%271.24%27%20opacity%3D%270.83%27%2F%3E%3Ccircle%20cx%3D%2796.5%27%20cy%3D%27378.2%27%20r%3D%271.3%27%20opacity%3D%270.92%27%2F%3E%3Ccircle%20cx%3D%27775.7%27%20cy%3D%2786.0%27%20r%3D%271.73%27%20opacity%3D%270.83%27%2F%3E%3Ccircle%20cx%3D%27211.2%27%20cy%3D%27230.3%27%20r%3D%271.62%27%20opacity%3D%270.73%27%2F%3E%3Ccircle%20cx%3D%2720.0%27%20cy%3D%27266.9%27%20r%3D%271.79%27%20opacity%3D%270.84%27%2F%3E%3Ccircle%20cx%3D%27146.4%27%20cy%3D%27380.9%27%20r%3D%271.78%27%20opacity%3D%270.77%27%2F%3E%3Ccircle%20cx%3D%27196.2%27%20cy%3D%2723.9%27%20r%3D%271.8%27%20opacity%3D%270.97%27%2F%3E%3Ccircle%20cx%3D%27400.5%27%20cy%3D%27207.7%27%20r%3D%271.72%27%20opacity%3D%270.89%27%2F%3E%3Ccircle%20cx%3D%27527.7%27%20cy%3D%27309.9%27%20r%3D%271.79%27%20opacity%3D%270.88%27%2F%3E%3Ccircle%20cx%3D%27589.8%27%20cy%3D%27388.5%27%20r%3D%271.34%27%20opacity%3D%270.7%27%2F%3E%3Ccircle%20cx%3D%27989.0%27%20cy%3D%27146.8%27%20r%3D%271.85%27%20opacity%3D%270.66%27%2F%3E%3Ccircle%20cx%3D%2754.1%27%20cy%3D%27439.2%27%20r%3D%272.07%27%20opacity%3D%270.69%27%2F%3E%3Ccircle%20cx%3D%27333.5%27%20cy%3D%27228.5%27%20r%3D%271.98%27%20opacity%3D%270.66%27%2F%3E%3Ccircle%20cx%3D%2781.8%27%20cy%3D%27253.4%27%20r%3D%271.86%27%20opacity%3D%270.71%27%2F%3E%3Ccircle%20cx%3D%27971.7%27%20cy%3D%27456.1%27%20r%3D%271.95%27%20opacity%3D%270.86%27%2F%3E%3Ccircle%20cx%3D%27462.0%27%20cy%3D%27151.1%27%20r%3D%271.77%27%20opacity%3D%270.78%27%2F%3E%3Ccircle%20cx%3D%276.4%27%20cy%3D%27292.1%27%20r%3D%271.64%27%20opacity%3D%270.73%27%2F%3E%3Ccircle%20cx%3D%27130.2%27%20cy%3D%27387.3%27%20r%3D%271.79%27%20opacity%3D%270.62%27%2F%3E%3Ccircle%20cx%3D%27725.5%27%20cy%3D%27186.6%27%20r%3D%271.28%27%20opacity%3D%270.92%27%2F%3E%3Ccircle%20cx%3D%27518.2%27%20cy%3D%2722.9%27%20r%3D%271.77%27%20opacity%3D%270.71%27%2F%3E%3Ccircle%20cx%3D%27969.9%27%20cy%3D%2775.4%27%20r%3D%272.02%27%20opacity%3D%270.83%27%2F%3E%3Ccircle%20cx%3D%2748.3%27%20cy%3D%27359.8%27%20r%3D%271.46%27%20opacity%3D%270.61%27%2F%3E%3Ccircle%20cx%3D%27191.8%27%20cy%3D%27481.6%27%20r%3D%272.05%27%20opacity%3D%270.68%27%2F%3E%3Ccircle%20cx%3D%27844.6%27%20cy%3D%271.0%27%20r%3D%271.93%27%20opacity%3D%270.91%27%2F%3E%3Ccircle%20cx%3D%27196.2%27%20cy%3D%2772.5%27%20r%3D%271.69%27%20opacity%3D%270.94%27%2F%3E%3Ccircle%20cx%3D%27730.1%27%20cy%3D%27399.8%27%20r%3D%272.05%27%20opacity%3D%270.66%27%2F%3E%3Ccircle%20cx%3D%27877.9%27%20cy%3D%27178.7%27%20r%3D%271.51%27%20opacity%3D%270.71%27%2F%3E%3Ccircle%20cx%3D%27762.1%27%20cy%3D%2734.7%27%20r%3D%271.42%27%20opacity%3D%270.67%27%2F%3E%3Ccircle%20cx%3D%27331.7%27%20cy%3D%27228.4%27%20r%3D%272.03%27%20opacity%3D%270.62%27%2F%3E%3Ccircle%20cx%3D%27921.3%27%20cy%3D%27143.8%27%20r%3D%271.4%27%20opacity%3D%270.97%27%2F%3E%3Ccircle%20cx%3D%27926.8%27%20cy%3D%27139.5%27%20r%3D%271.61%27%20opacity%3D%270.83%27%2F%3E%3Ccircle%20cx%3D%27509.0%27%20cy%3D%2760.9%27%20r%3D%271.35%27%20opacity%3D%270.94%27%2F%3E%3Ccircle%20cx%3D%27391.9%27%20cy%3D%27183.5%27%20r%3D%272.05%27%20opacity%3D%270.61%27%2F%3E%3Ccircle%20cx%3D%2748.7%27%20cy%3D%27455.9%27%20r%3D%272.02%27%20opacity%3D%270.65%27%2F%3E%3Ccircle%20cx%3D%27623.3%27%20cy%3D%27136.7%27%20r%3D%271.31%27%20opacity%3D%270.72%27%2F%3E%3Ccircle%20cx%3D%27652.4%27%20cy%3D%2785.7%27%20r%3D%271.92%27%20opacity%3D%270.93%27%2F%3E%3Ccircle%20cx%3D%27958.6%27%20cy%3D%27509.8%27%20r%3D%271.7%27%20opacity%3D%270.99%27%2F%3E%3Ccircle%20cx%3D%27787.0%27%20cy%3D%27410.0%27%20r%3D%272.03%27%20opacity%3D%270.98%27%2F%3E%3Ccircle%20cx%3D%27701.1%27%20cy%3D%27246.9%27%20r%3D%271.94%27%20opacity%3D%270.62%27%2F%3E%3C%2Fg%3E%3C%2Fsvg%3E");
  background-size: 760px 430px;
  opacity: 0.9;
  animation: ks-twinkle-b 11s ease-in-out infinite;
}

@keyframes ks-twinkle-a {
  0%, 100% { opacity: 0.72; }
  50% { opacity: 0.46; }
}

@keyframes ks-twinkle-b {
  0%, 100% { opacity: 0.9; }
  40% { opacity: 0.62; }
}

.ks-sky-moon {
  position: absolute;
  width: clamp(3.6rem, 8vw, 6.4rem);
  aspect-ratio: 1;
  transform: translate(-50%, -50%);
  /* Poloha sa prepočíta raz za minútu; plynulý posun medzi krokmi dorobí prechod. */
  transition: left 60s linear, top 60s linear;
  animation: ks-moon-float 14s ease-in-out infinite;
  filter: drop-shadow(0 0 14px rgba(190, 214, 255, 0.22));
}

.ks-sky-moon svg {
  width: 100%;
  height: 100%;
  overflow: visible;
  /* Mesiac je v pozadí — plná biela by súperila s nadpisom h1. */
  opacity: 0.78;
}

@keyframes ks-moon-float {
  0%, 100% { transform: translate(-50%, -50%); }
  50% { transform: translate(-50%, calc(-50% - 0.42rem)); }
}

@media (prefers-reduced-motion: reduce) {
  .discover-band,
  .ks-sky-stars,
  .ks-sky-moon {
    transition: none;
    animation: none;
  }
}

/* ══ koniec nočnej oblohy ══════════════════════════════════════════════════ *//* ══ Sviatočné témy pozadia ══════════════════════════════════════════════════
   Plánujú sa v admine (Animácie). Trieda sky-theme-* je na .discover-band,
   samotné vrstvy vykresľuje komponent SkyScene.
   Návrat: zmazať tento blok po značku „koniec sviatočných tém".
   ═════════════════════════════════════════════════════════════════════════ */

.ks-theme {
  position: absolute;
  inset: 0;
  pointer-events: none;
  overflow: hidden;
}

/* ── Vianoce ─────────────────────────────────────────────────────────────── */

.discover-band.sky-theme-vianoce {
  background:
    radial-gradient(ellipse 120% 50% at 50% 116%, rgba(255, 214, 160, 0.22), transparent 62%),
    linear-gradient(180deg, #0a1730 0%, #12294c 30%, #22456f 62%, #3d6b93 84%, #7ba3c4 100%);
}

.ks-snow {
  position: absolute;
  inset: -10% 0 0;
  background-repeat: repeat;
  will-change: transform;
}

.ks-snow--a {
  background-image: url("data:image/svg+xml,%3Csvg%20xmlns%3D%27http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%27%20viewBox%3D%270%200%20600%20600%27%3E%3Cg%20fill%3D%27%23fff%27%3E%3Ccircle%20cx%3D%27348.7%27%20cy%3D%27116.9%27%20r%3D%273.55%27%20opacity%3D%270.96%27%2F%3E%3Ccircle%20cx%3D%27280.3%27%20cy%3D%27398.1%27%20r%3D%272.5%27%20opacity%3D%270.61%27%2F%3E%3Ccircle%20cx%3D%27173.1%27%20cy%3D%27415.5%27%20r%3D%272.5%27%20opacity%3D%270.99%27%2F%3E%3Ccircle%20cx%3D%2742.2%27%20cy%3D%27116.0%27%20r%3D%272.32%27%20opacity%3D%270.88%27%2F%3E%3Ccircle%20cx%3D%27219.9%27%20cy%3D%27283.0%27%20r%3D%272.66%27%20opacity%3D%270.82%27%2F%3E%3Ccircle%20cx%3D%27242.3%27%20cy%3D%27125.0%27%20r%3D%272.8%27%20opacity%3D%270.65%27%2F%3E%3Ccircle%20cx%3D%2766.5%27%20cy%3D%27494.0%27%20r%3D%273.15%27%20opacity%3D%270.83%27%2F%3E%3Ccircle%20cx%3D%27529.5%27%20cy%3D%27236.8%27%20r%3D%272.73%27%20opacity%3D%270.71%27%2F%3E%3Ccircle%20cx%3D%27242.7%27%20cy%3D%27401.4%27%20r%3D%272.21%27%20opacity%3D%270.73%27%2F%3E%3Ccircle%20cx%3D%27321.1%27%20cy%3D%27207.3%27%20r%3D%272.23%27%20opacity%3D%270.85%27%2F%3E%3Ccircle%20cx%3D%275.7%27%20cy%3D%27338.6%27%20r%3D%272.41%27%20opacity%3D%270.52%27%2F%3E%3Ccircle%20cx%3D%27108.5%27%20cy%3D%2739.4%27%20r%3D%272.41%27%20opacity%3D%270.84%27%2F%3E%3Ccircle%20cx%3D%27437.0%27%20cy%3D%27217.7%27%20r%3D%273.11%27%20opacity%3D%270.74%27%2F%3E%3Ccircle%20cx%3D%27299.1%27%20cy%3D%27525.5%27%20r%3D%272.64%27%20opacity%3D%270.93%27%2F%3E%3Ccircle%20cx%3D%27414.6%27%20cy%3D%27410.1%27%20r%3D%272.21%27%20opacity%3D%270.54%27%2F%3E%3Ccircle%20cx%3D%2719.2%27%20cy%3D%27207.5%27%20r%3D%273.52%27%20opacity%3D%270.94%27%2F%3E%3Ccircle%20cx%3D%27503.1%27%20cy%3D%2771.3%27%20r%3D%273.19%27%20opacity%3D%270.89%27%2F%3E%3Ccircle%20cx%3D%27485.6%27%20cy%3D%27475.3%27%20r%3D%272.4%27%20opacity%3D%270.59%27%2F%3E%3Ccircle%20cx%3D%27475.5%27%20cy%3D%27442.9%27%20r%3D%273.45%27%20opacity%3D%270.72%27%2F%3E%3Ccircle%20cx%3D%27533.7%27%20cy%3D%2783.6%27%20r%3D%273.54%27%20opacity%3D%270.94%27%2F%3E%3Ccircle%20cx%3D%27202.5%27%20cy%3D%2740.5%27%20r%3D%272.97%27%20opacity%3D%270.84%27%2F%3E%3Ccircle%20cx%3D%27210.2%27%20cy%3D%2734.5%27%20r%3D%272.59%27%20opacity%3D%270.91%27%2F%3E%3Ccircle%20cx%3D%2754.4%27%20cy%3D%27562.4%27%20r%3D%272.55%27%20opacity%3D%270.6%27%2F%3E%3Ccircle%20cx%3D%2767.3%27%20cy%3D%27588.6%27%20r%3D%273.46%27%20opacity%3D%270.66%27%2F%3E%3Ccircle%20cx%3D%2757.4%27%20cy%3D%27392.0%27%20r%3D%273.44%27%20opacity%3D%270.51%27%2F%3E%3Ccircle%20cx%3D%27379.8%27%20cy%3D%27514.0%27%20r%3D%272.84%27%20opacity%3D%270.78%27%2F%3E%3Ccircle%20cx%3D%27482.6%27%20cy%3D%27143.1%27%20r%3D%272.58%27%20opacity%3D%270.83%27%2F%3E%3Ccircle%20cx%3D%27331.4%27%20cy%3D%27321.2%27%20r%3D%272.67%27%20opacity%3D%270.97%27%2F%3E%3Ccircle%20cx%3D%27172.9%27%20cy%3D%27407.3%27%20r%3D%273.45%27%20opacity%3D%270.7%27%2F%3E%3Ccircle%20cx%3D%2732.6%27%20cy%3D%27132.2%27%20r%3D%272.29%27%20opacity%3D%270.57%27%2F%3E%3Ccircle%20cx%3D%2772.3%27%20cy%3D%27205.5%27%20r%3D%272.72%27%20opacity%3D%270.72%27%2F%3E%3Ccircle%20cx%3D%27399.1%27%20cy%3D%27406.0%27%20r%3D%273.16%27%20opacity%3D%270.68%27%2F%3E%3Ccircle%20cx%3D%27397.7%27%20cy%3D%27329.9%27%20r%3D%272.38%27%20opacity%3D%270.77%27%2F%3E%3Ccircle%20cx%3D%27191.0%27%20cy%3D%27405.5%27%20r%3D%273.23%27%20opacity%3D%270.62%27%2F%3E%3C%2Fg%3E%3C%2Fsvg%3E");
  background-size: 600px 600px;
  opacity: 0.85;
  animation: ks-snowfall 15s linear infinite;
}

.ks-snow--b {
  background-image: url("data:image/svg+xml,%3Csvg%20xmlns%3D%27http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%27%20viewBox%3D%270%200%20600%20600%27%3E%3Cg%20fill%3D%27%23fff%27%3E%3Ccircle%20cx%3D%27458.3%27%20cy%3D%27386.9%27%20r%3D%271.87%27%20opacity%3D%270.6%27%2F%3E%3Ccircle%20cx%3D%27406.0%27%20cy%3D%27581.6%27%20r%3D%271.88%27%20opacity%3D%270.93%27%2F%3E%3Ccircle%20cx%3D%2721.6%27%20cy%3D%27316.7%27%20r%3D%271.68%27%20opacity%3D%270.75%27%2F%3E%3Ccircle%20cx%3D%27366.8%27%20cy%3D%27513.5%27%20r%3D%271.97%27%20opacity%3D%270.93%27%2F%3E%3Ccircle%20cx%3D%27196.1%27%20cy%3D%2777.0%27%20r%3D%271.92%27%20opacity%3D%270.86%27%2F%3E%3Ccircle%20cx%3D%27424.8%27%20cy%3D%2722.0%27%20r%3D%271.72%27%20opacity%3D%270.63%27%2F%3E%3Ccircle%20cx%3D%27282.9%27%20cy%3D%27517.0%27%20r%3D%271.74%27%20opacity%3D%270.52%27%2F%3E%3Ccircle%20cx%3D%27538.8%27%20cy%3D%27521.5%27%20r%3D%272.19%27%20opacity%3D%270.52%27%2F%3E%3Ccircle%20cx%3D%27156.4%27%20cy%3D%27106.1%27%20r%3D%272.32%27%20opacity%3D%270.56%27%2F%3E%3Ccircle%20cx%3D%2776.5%27%20cy%3D%27132.4%27%20r%3D%272.21%27%20opacity%3D%270.6%27%2F%3E%3Ccircle%20cx%3D%27590.0%27%20cy%3D%27184.9%27%20r%3D%272.09%27%20opacity%3D%270.6%27%2F%3E%3Ccircle%20cx%3D%27175.2%27%20cy%3D%27519.2%27%20r%3D%272.4%27%20opacity%3D%270.62%27%2F%3E%3Ccircle%20cx%3D%27209.7%27%20cy%3D%2734.4%27%20r%3D%271.68%27%20opacity%3D%270.69%27%2F%3E%3Ccircle%20cx%3D%27312.7%27%20cy%3D%27343.7%27%20r%3D%271.81%27%20opacity%3D%270.58%27%2F%3E%3Ccircle%20cx%3D%27333.4%27%20cy%3D%27209.3%27%20r%3D%271.81%27%20opacity%3D%270.99%27%2F%3E%3Ccircle%20cx%3D%27352.4%27%20cy%3D%279.1%27%20r%3D%272.36%27%20opacity%3D%270.98%27%2F%3E%3Ccircle%20cx%3D%27234.0%27%20cy%3D%27587.8%27%20r%3D%271.59%27%20opacity%3D%270.96%27%2F%3E%3Ccircle%20cx%3D%27101.3%27%20cy%3D%27518.4%27%20r%3D%272.11%27%20opacity%3D%270.98%27%2F%3E%3Ccircle%20cx%3D%27181.4%27%20cy%3D%27392.4%27%20r%3D%272.35%27%20opacity%3D%270.56%27%2F%3E%3Ccircle%20cx%3D%27111.1%27%20cy%3D%27334.2%27%20r%3D%271.62%27%20opacity%3D%270.53%27%2F%3E%3Ccircle%20cx%3D%279.3%27%20cy%3D%27208.2%27%20r%3D%272.08%27%20opacity%3D%270.73%27%2F%3E%3Ccircle%20cx%3D%27362.5%27%20cy%3D%2715.8%27%20r%3D%271.59%27%20opacity%3D%270.78%27%2F%3E%3Ccircle%20cx%3D%2794.1%27%20cy%3D%277.7%27%20r%3D%271.56%27%20opacity%3D%270.83%27%2F%3E%3Ccircle%20cx%3D%27576.0%27%20cy%3D%27297.8%27%20r%3D%271.51%27%20opacity%3D%270.6%27%2F%3E%3Ccircle%20cx%3D%27408.8%27%20cy%3D%27475.6%27%20r%3D%271.69%27%20opacity%3D%270.73%27%2F%3E%3Ccircle%20cx%3D%2721.8%27%20cy%3D%27324.1%27%20r%3D%272.18%27%20opacity%3D%270.75%27%2F%3E%3C%2Fg%3E%3C%2Fsvg%3E");
  background-size: 460px 460px;
  opacity: 0.6;
  animation: ks-snowfall 24s linear infinite;
}

.ks-snow--c {
  background-image: url("data:image/svg+xml,%3Csvg%20xmlns%3D%27http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%27%20viewBox%3D%270%200%20600%20600%27%3E%3Cg%20fill%3D%27%23fff%27%3E%3Ccircle%20cx%3D%2719.0%27%20cy%3D%27581.3%27%20r%3D%271.14%27%20opacity%3D%271.0%27%2F%3E%3Ccircle%20cx%3D%27568.0%27%20cy%3D%27155.2%27%20r%3D%271.36%27%20opacity%3D%270.7%27%2F%3E%3Ccircle%20cx%3D%27245.8%27%20cy%3D%27473.8%27%20r%3D%271.58%27%20opacity%3D%270.63%27%2F%3E%3Ccircle%20cx%3D%27326.3%27%20cy%3D%27411.6%27%20r%3D%271.42%27%20opacity%3D%270.56%27%2F%3E%3Ccircle%20cx%3D%27234.7%27%20cy%3D%27295.7%27%20r%3D%271.65%27%20opacity%3D%270.91%27%2F%3E%3Ccircle%20cx%3D%27404.9%27%20cy%3D%27168.1%27%20r%3D%271.66%27%20opacity%3D%270.61%27%2F%3E%3Ccircle%20cx%3D%27202.7%27%20cy%3D%2794.2%27%20r%3D%271.41%27%20opacity%3D%270.9%27%2F%3E%3Ccircle%20cx%3D%27421.1%27%20cy%3D%27496.3%27%20r%3D%271.49%27%20opacity%3D%270.83%27%2F%3E%3Ccircle%20cx%3D%27150.9%27%20cy%3D%27575.1%27%20r%3D%271.69%27%20opacity%3D%270.87%27%2F%3E%3Ccircle%20cx%3D%27598.2%27%20cy%3D%27530.1%27%20r%3D%271.61%27%20opacity%3D%270.88%27%2F%3E%3Ccircle%20cx%3D%27487.1%27%20cy%3D%27414.6%27%20r%3D%271.09%27%20opacity%3D%270.92%27%2F%3E%3Ccircle%20cx%3D%27211.5%27%20cy%3D%27386.2%27%20r%3D%271.63%27%20opacity%3D%270.75%27%2F%3E%3Ccircle%20cx%3D%27162.3%27%20cy%3D%27332.0%27%20r%3D%271.61%27%20opacity%3D%270.92%27%2F%3E%3Ccircle%20cx%3D%27596.3%27%20cy%3D%27544.7%27%20r%3D%271.56%27%20opacity%3D%270.74%27%2F%3E%3Ccircle%20cx%3D%27109.6%27%20cy%3D%27559.7%27%20r%3D%271.03%27%20opacity%3D%270.97%27%2F%3E%3Ccircle%20cx%3D%27383.6%27%20cy%3D%27141.6%27%20r%3D%271.12%27%20opacity%3D%270.86%27%2F%3E%3Ccircle%20cx%3D%2743.4%27%20cy%3D%27258.6%27%20r%3D%271.07%27%20opacity%3D%270.57%27%2F%3E%3Ccircle%20cx%3D%27150.9%27%20cy%3D%27391.6%27%20r%3D%271.02%27%20opacity%3D%270.93%27%2F%3E%3Ccircle%20cx%3D%27378.1%27%20cy%3D%27155.0%27%20r%3D%271.5%27%20opacity%3D%270.53%27%2F%3E%3Ccircle%20cx%3D%27152.0%27%20cy%3D%27302.3%27%20r%3D%271.6%27%20opacity%3D%270.84%27%2F%3E%3C%2Fg%3E%3C%2Fsvg%3E");
  background-size: 320px 320px;
  opacity: 0.4;
  animation: ks-snowfall 38s linear infinite;
}

@keyframes ks-snowfall {
  from { transform: translate3d(0, -12%, 0); }
  to { transform: translate3d(-6%, 100%, 0); }
}

/* Teplé svetlo od obzoru — akoby v dedine pod horami svietili okná. */

.ks-warmglow {
  position: absolute;
  left: 0;
  right: 0;
  bottom: -6%;
  height: 38%;
  background: radial-gradient(ellipse 70% 100% at 50% 100%, rgba(255, 196, 120, 0.34), transparent 70%);
  animation: ks-glow-pulse 9s ease-in-out infinite;
}

@keyframes ks-glow-pulse {
  0%, 100% { opacity: 0.75; }
  50% { opacity: 1; }
}

/* ── Silvester ───────────────────────────────────────────────────────────── */

.discover-band.sky-theme-silvester {
  background:
    radial-gradient(ellipse 120% 55% at 50% 118%, rgba(120, 90, 190, 0.28), transparent 60%),
    linear-gradient(180deg, #05030f 0%, #0c0a24 26%, #171040 54%, #2a1c5c 78%, #46337e 100%);
}

.ks-firework {
  position: absolute;
  width: 6px;
  height: 6px;
  border-radius: 50%;
  opacity: 0;
  /* Lúče ohňostroja: osem bodov okolo stredu cez box-shadow. */
  animation: ks-burst 6s ease-out infinite;
}

.ks-firework--1 { left: 18%; top: 26%; color: #ffd45e; animation-delay: 0s; }

.ks-firework--2 { left: 72%; top: 18%; color: #7ee8ff; animation-delay: 1.3s; }

.ks-firework--3 { left: 45%; top: 34%; color: #ff8fd0; animation-delay: 2.5s; }

.ks-firework--4 { left: 86%; top: 40%; color: #b6ff8f; animation-delay: 3.6s; }

.ks-firework--5 { left: 32%; top: 14%; color: #ffb36b; animation-delay: 4.7s; }

@keyframes ks-burst {
  0% {
    opacity: 0;
    box-shadow: 0 0 0 currentColor;
    transform: scale(0.2);
  }
  8% { opacity: 1; }
  45% {
    opacity: 0.9;
    transform: scale(1);
    box-shadow:
      0 -46px 0 -1px currentColor, 33px -33px 0 -1px currentColor,
      46px 0 0 -1px currentColor, 33px 33px 0 -1px currentColor,
      0 46px 0 -1px currentColor, -33px 33px 0 -1px currentColor,
      -46px 0 0 -1px currentColor, -33px -33px 0 -1px currentColor;
  }
  75% {
    opacity: 0;
    transform: scale(1.25);
    box-shadow:
      0 -72px 0 -4px currentColor, 51px -51px 0 -4px currentColor,
      72px 0 0 -4px currentColor, 51px 51px 0 -4px currentColor,
      0 72px 0 -4px currentColor, -51px 51px 0 -4px currentColor,
      -72px 0 0 -4px currentColor, -51px -51px 0 -4px currentColor;
  }
  100% { opacity: 0; transform: scale(1.25); }
}

/* ── Konfety ─────────────────────────────────────────────────────────────── */

.ks-confetti {
  position: absolute;
  top: -8%;
  width: 9px;
  height: 14px;
  border-radius: 2px;
  animation: ks-confetti-fall 9s linear infinite;
}

.ks-theme--konfety .ks-confetti:nth-child(3n) { background: #ee1c25; }

.ks-theme--konfety .ks-confetti:nth-child(3n+1) { background: #ffffff; }

.ks-theme--konfety .ks-confetti:nth-child(3n+2) { background: #0b4ea2; }

@keyframes ks-confetti-fall {
  0% { transform: translate3d(0, -10vh, 0) rotate(0deg); opacity: 0; }
  10% { opacity: 1; }
  90% { opacity: 1; }
  100% { transform: translate3d(-8vw, 105vh, 0) rotate(760deg); opacity: 0; }
}

/* ── Futbal ──────────────────────────────────────────────────────────────────
   Zápas slovenskej reprezentácie. Vrstvy kreslí `components/sky/FutbalScena.tsx`:
   štadión (tribúna s oblúkovou strechou, stožiare, tabuľa), ihrisko s bránkou
   a hlavne hra — prihrávka, strela pod brvno, brankár skočí, sieť sa vydúva,
   tabuľa 1 : 0 → 2 : 0, tribúna vyskočí, svetlice a konfety.
   Celý zápas je jeden cyklus 12 s; všetky prvky majú rovnakú dĺžku a štartujú
   naraz, takže sú zosynchronizované bez skriptu. Pohyb výhradne cez
   `transform` a `opacity` (kompozítor), `will-change` len na obaloch.

   Rozmery: scéna je 50 × 30 em a sedí v boxe vpravo od textu (ťažisko vpravo,
   nadpis a perex ostávajú voľné). Veľkosť em = „contain“ v boxe cez jednotky
   kontajnera (cqw/cqh), takže od 1600 px rastie sama. Pod 1000 px ide scéna
   pod ponuky otázok a pás dostane dole miesto (`--fb-mh`).
   Návrat: obnoviť zo zálohy data/backup-css/style.css.*-futbal.
   ─────────────────────────────────────────────────────────────────────────── *//* Celý gradient musí ostať tmavý (L ≤ 0,1): nadpis, perex, pilulky a ponuky
   sú biely text. Svetlá štadióna robí scéna, nie spodok oblohy (poučenie
   z maratónu — krémový spodok dal pilulkám 1,5 : 1). */

.discover-band.sky-theme-futbal {
  background: linear-gradient(
    180deg,
    #0c2846 0%,
    #15406e 38%,
    #1d5486 58%,
    #1d4d6e 76%,
    #183f4a 90%,
    #14352e 100%
  );
}

.discover-band.sky-night.sky-theme-futbal {
  background:
    radial-gradient(ellipse 42% 55% at 80% 78%, rgba(255, 246, 210, 0.12), transparent 70%),
    linear-gradient(180deg, #040a17 0%, #0a1830 40%, #11294a 64%, #15304a 80%, #122a30 92%, #0f2422 100%);
}

/* Štadión stojí pred Mesiacom — inak by Mesiac visel pred stožiarmi. */

.ks-theme--futbal {
  z-index: 1;
}

.ks-fb-box {
  position: absolute;
  left: max(calc(50vw + 9.5rem), 43.5rem);
  right: 1.25rem;
  top: 5.25rem;
  bottom: 4.1rem;
  overflow: hidden;
  container-type: size;
  pointer-events: none;
}

.ks-fb {
  position: absolute;
  right: 0;
  bottom: 0;
  width: 50em;
  height: 30em;
  /* „contain“: 50 em na šírku, 30 em na výšku boxu; strop 15 px. */
  font-size: 9px;
  font-size: min(2cqw, 3.333cqh, 15px);
  line-height: 1;
}

.ks-fb > * {
  position: absolute;
}

.ks-fb svg {
  display: block;
}

/* Statické kulisy: štadión a ihrisko cez celú scénu, okraje sa strácajú
   do oblohy — inak by scéna vyzerala ako vystrihnutý obdĺžnik. */

.ks-fb-stadion,
.ks-fb-ihrisko {
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  -webkit-mask-image: linear-gradient(90deg, transparent 0, #000 5em, #000 calc(100% - 1.2em), transparent 100%);
  mask-image: linear-gradient(90deg, transparent 0, #000 5em, #000 calc(100% - 1.2em), transparent 100%);
}

.ks-fb-ihrisko {
  /* Ihrisko je v SVG nakreslené od y = 20,6 em; natiahnuté na 18–30 em
     (zvislo 1,28×), aby hra mala viac miesta než hľadisko. */
  top: -8.3em;
  height: 38.3em;
  -webkit-mask-image:
    linear-gradient(90deg, transparent 0, #000 5em, #000 calc(100% - 1.2em), transparent 100%),
    linear-gradient(0deg, transparent 0, #000 1.3em);
  -webkit-mask-composite: source-in;
  mask-image:
    linear-gradient(90deg, transparent 0, #000 5em, #000 calc(100% - 1.2em), transparent 100%),
    linear-gradient(0deg, transparent 0, #000 1.3em);
  mask-composite: intersect;
}

.ks-fb-stoziare { stroke: #56657a; }

.ks-fb-rampy { fill: #3a4658; }

.ks-fb-lampy { fill: #9fb0c4; }

.ks-fb-podstresie { fill: #0f1724; }

.ks-fb-tribuna { fill: #23548f; }

.ks-fb-rady { fill: rgba(255, 255, 255, 0.12); }

.ks-fb-strecha { fill: #dfe6ee; }

.ks-fb-reklama { fill: #0d1626; }

.ks-fb-reklama-text { fill: #2f7de0; }

.ks-fb-trava { fill: #2c8a3c; }

.ks-fb-pruhy { fill: rgba(255, 255, 255, 0.07); }

.ks-fb-ciary { stroke: rgba(255, 255, 255, 0.8); }

.ks-fb-bod { fill: rgba(255, 255, 255, 0.85); }

/* Noc: zapnuté reflektory, tmavšie hľadisko, osvetlený trávnik a LED pásy. */

.sky-night .ks-fb-stoziare { stroke: #2a3445; }

.sky-night .ks-fb-rampy { fill: #1d2533; }

.sky-night .ks-fb-lampy { fill: #fffbe6; }

.sky-night .ks-fb-tribuna { fill: #142a4c; }

.sky-night .ks-fb-strecha { fill: #8e9bb0; }

.sky-night .ks-fb-reklama-text { fill: #5aa8ff; }

.sky-night .ks-fb-trava { fill: #2f9a42; }

/* Žiara rámp a svetelné kužele — len v noci, bez pohybu. */

.ks-fb-ziara {
  top: -1.9em;
  width: 7em;
  height: 7em;
  border-radius: 50%;
  background: radial-gradient(
    circle,
    rgba(255, 252, 232, 0.95) 0,
    rgba(255, 244, 200, 0.4) 22%,
    rgba(255, 244, 200, 0) 62%
  );
  opacity: 0;
}

.ks-fb-ziara--l { left: 2.6em; }

.ks-fb-ziara--p { right: 2.6em; }

.ks-fb-kuzel {
  top: 1.4em;
  width: 30em;
  height: 28em;
  background: linear-gradient(180deg, rgba(255, 248, 214, 0.5), rgba(255, 248, 214, 0.08) 80%, transparent);
  opacity: 0;
}

.ks-fb-kuzel--l {
  left: 5em;
  clip-path: polygon(0 0, 6% 0, 100% 100%, 22% 100%);
}

.ks-fb-kuzel--p {
  right: 5em;
  clip-path: polygon(94% 0, 100% 0, 78% 100%, 0 100%);
}

.sky-night .ks-fb-ziara { opacity: 1; }

.sky-night .ks-fb-kuzel { opacity: 0.4; }

/* Diváci v dvoch radoch — pri góle vyskočia. Šály sú modré s bielymi
   pruhmi; slovenská identita je na zástave so znakom, nie v trikolóre. */

.ks-fb-divaci {
  left: 0;
  width: 50em;
  background-repeat: repeat-x;
  background-size: auto 100%;
  -webkit-mask-image: linear-gradient(90deg, transparent 0, #000 5em, #000 calc(100% - 1.2em), transparent 100%);
  mask-image: linear-gradient(90deg, transparent 0, #000 5em, #000 calc(100% - 1.2em), transparent 100%);
  will-change: transform;
  animation: ks-fb-tribuna 12s ease-in-out infinite;
}

.ks-fb-divaci--z {
  top: 9.7em;
  height: 4.2em;
  background-image: url("data:image/svg+xml,%3Csvg%20xmlns%3D%27http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%27%20viewBox%3D%270%200%20200%2042%27%3E%3Crect%20x%3D%272.4%27%20y%3D%2710.9%27%20width%3D%277.0%27%20height%3D%2712.0%27%20rx%3D%272.6%27%20fill%3D%27%23e9eef5%27%2F%3E%3Ccircle%20cx%3D%275.9%27%20cy%3D%279.0%27%20r%3D%272.4%27%20fill%3D%27%231b2436%27%2F%3E%3Crect%20x%3D%27202.4%27%20y%3D%2710.9%27%20width%3D%277.0%27%20height%3D%2712.0%27%20rx%3D%272.6%27%20fill%3D%27%23e9eef5%27%2F%3E%3Ccircle%20cx%3D%27205.9%27%20cy%3D%279.0%27%20r%3D%272.4%27%20fill%3D%27%231b2436%27%2F%3E%3Crect%20x%3D%2714.2%27%20y%3D%2712.0%27%20width%3D%277.0%27%20height%3D%2712.0%27%20rx%3D%272.6%27%20fill%3D%27%231d5fbf%27%2F%3E%3Ccircle%20cx%3D%2717.6%27%20cy%3D%2710.1%27%20r%3D%272.4%27%20fill%3D%27%231b2436%27%2F%3E%3Crect%20x%3D%2725.9%27%20y%3D%2710.4%27%20width%3D%277.0%27%20height%3D%2712.0%27%20rx%3D%272.6%27%20fill%3D%27%2333415c%27%2F%3E%3Ccircle%20cx%3D%2729.4%27%20cy%3D%278.5%27%20r%3D%272.4%27%20fill%3D%27%231b2436%27%2F%3E%3Crect%20x%3D%2737.7%27%20y%3D%2711.6%27%20width%3D%277.0%27%20height%3D%2712.0%27%20rx%3D%272.6%27%20fill%3D%27%23e9eef5%27%2F%3E%3Ccircle%20cx%3D%2741.2%27%20cy%3D%279.7%27%20r%3D%272.4%27%20fill%3D%27%231b2436%27%2F%3E%3Cpath%20d%3D%27M38.1%2012.1%20L35.9%204.5%20M44.3%2012.1%20L46.5%204.5%27%20stroke%3D%27%231b2436%27%20stroke-width%3D%271.3%27%20stroke-linecap%3D%27round%27%2F%3E%3Crect%20x%3D%2734.9%27%20y%3D%272.1%27%20width%3D%2712.5%27%20height%3D%272.6%27%20rx%3D%270.4%27%20fill%3D%27%230b4ea2%27%2F%3E%3Crect%20x%3D%2737.3%27%20y%3D%273.0%27%20width%3D%272.6%27%20height%3D%271.0%27%20fill%3D%27%23fff%27%2F%3E%3Crect%20x%3D%2742.4%27%20y%3D%273.0%27%20width%3D%272.6%27%20height%3D%271.0%27%20fill%3D%27%23fff%27%2F%3E%3Crect%20x%3D%2749.5%27%20y%3D%2710.0%27%20width%3D%277.0%27%20height%3D%2712.0%27%20rx%3D%272.6%27%20fill%3D%27%23d62839%27%2F%3E%3Ccircle%20cx%3D%2752.9%27%20cy%3D%278.1%27%20r%3D%272.4%27%20fill%3D%27%231b2436%27%2F%3E%3Crect%20x%3D%2761.2%27%20y%3D%2711.2%27%20width%3D%277.0%27%20height%3D%2712.0%27%20rx%3D%272.6%27%20fill%3D%27%231d5fbf%27%2F%3E%3Ccircle%20cx%3D%2764.7%27%20cy%3D%279.3%27%20r%3D%272.4%27%20fill%3D%27%231b2436%27%2F%3E%3Crect%20x%3D%2773.0%27%20y%3D%2711.8%27%20width%3D%277.0%27%20height%3D%2712.0%27%20rx%3D%272.6%27%20fill%3D%27%232a3550%27%2F%3E%3Ccircle%20cx%3D%2776.5%27%20cy%3D%279.9%27%20r%3D%272.4%27%20fill%3D%27%231b2436%27%2F%3E%3Crect%20x%3D%2784.8%27%20y%3D%2710.6%27%20width%3D%277.0%27%20height%3D%2712.0%27%20rx%3D%272.6%27%20fill%3D%27%23e9eef5%27%2F%3E%3Ccircle%20cx%3D%2788.2%27%20cy%3D%278.7%27%20r%3D%272.4%27%20fill%3D%27%231b2436%27%2F%3E%3Crect%20x%3D%2796.5%27%20y%3D%2711.4%27%20width%3D%277.0%27%20height%3D%2712.0%27%20rx%3D%272.6%27%20fill%3D%27%231d5fbf%27%2F%3E%3Ccircle%20cx%3D%27100.0%27%20cy%3D%279.5%27%20r%3D%272.4%27%20fill%3D%27%231b2436%27%2F%3E%3Cpath%20d%3D%27M97.1%2011.9%20L95.2%203.7%20M102.9%2011.9%20L104.8%203.7%27%20stroke%3D%27%231b2436%27%20stroke-width%3D%271.3%27%20stroke-linecap%3D%27round%27%2F%3E%3Crect%20x%3D%27108.3%27%20y%3D%2710.2%27%20width%3D%277.0%27%20height%3D%2712.0%27%20rx%3D%272.6%27%20fill%3D%27%23d62839%27%2F%3E%3Ccircle%20cx%3D%27111.8%27%20cy%3D%278.3%27%20r%3D%272.4%27%20fill%3D%27%231b2436%27%2F%3E%3Crect%20x%3D%27120.0%27%20y%3D%2711.1%27%20width%3D%277.0%27%20height%3D%2712.0%27%20rx%3D%272.6%27%20fill%3D%27%2333415c%27%2F%3E%3Ccircle%20cx%3D%27123.5%27%20cy%3D%279.2%27%20r%3D%272.4%27%20fill%3D%27%231b2436%27%2F%3E%3Crect%20x%3D%27131.8%27%20y%3D%279.9%27%20width%3D%277.0%27%20height%3D%2712.0%27%20rx%3D%272.6%27%20fill%3D%27%23e9eef5%27%2F%3E%3Ccircle%20cx%3D%27135.3%27%20cy%3D%278.0%27%20r%3D%272.4%27%20fill%3D%27%231b2436%27%2F%3E%3Crect%20x%3D%27143.6%27%20y%3D%2711.7%27%20width%3D%277.0%27%20height%3D%2712.0%27%20rx%3D%272.6%27%20fill%3D%27%231d5fbf%27%2F%3E%3Ccircle%20cx%3D%27147.1%27%20cy%3D%279.8%27%20r%3D%272.4%27%20fill%3D%27%231b2436%27%2F%3E%3Crect%20x%3D%27155.3%27%20y%3D%2710.9%27%20width%3D%277.0%27%20height%3D%2712.0%27%20rx%3D%272.6%27%20fill%3D%27%232a3550%27%2F%3E%3Ccircle%20cx%3D%27158.8%27%20cy%3D%279.0%27%20r%3D%272.4%27%20fill%3D%27%231b2436%27%2F%3E%3Crect%20x%3D%27167.1%27%20y%3D%2712.0%27%20width%3D%277.0%27%20height%3D%2712.0%27%20rx%3D%272.6%27%20fill%3D%27%23d62839%27%2F%3E%3Ccircle%20cx%3D%27170.6%27%20cy%3D%2710.1%27%20r%3D%272.4%27%20fill%3D%27%231b2436%27%2F%3E%3Cpath%20d%3D%27M167.5%2012.5%20L165.3%204.9%20M173.7%2012.5%20L175.9%204.9%27%20stroke%3D%27%231b2436%27%20stroke-width%3D%271.3%27%20stroke-linecap%3D%27round%27%2F%3E%3Crect%20x%3D%27164.3%27%20y%3D%272.5%27%20width%3D%2712.5%27%20height%3D%272.6%27%20rx%3D%270.4%27%20fill%3D%27%230b4ea2%27%2F%3E%3Crect%20x%3D%27166.7%27%20y%3D%273.4%27%20width%3D%272.6%27%20height%3D%271.0%27%20fill%3D%27%23fff%27%2F%3E%3Crect%20x%3D%27171.8%27%20y%3D%273.4%27%20width%3D%272.6%27%20height%3D%271.0%27%20fill%3D%27%23fff%27%2F%3E%3Crect%20x%3D%27178.9%27%20y%3D%2710.4%27%20width%3D%277.0%27%20height%3D%2712.0%27%20rx%3D%272.6%27%20fill%3D%27%23e9eef5%27%2F%3E%3Ccircle%20cx%3D%27182.4%27%20cy%3D%278.5%27%20r%3D%272.4%27%20fill%3D%27%231b2436%27%2F%3E%3Crect%20x%3D%27190.6%27%20y%3D%2711.6%27%20width%3D%277.0%27%20height%3D%2712.0%27%20rx%3D%272.6%27%20fill%3D%27%231d5fbf%27%2F%3E%3Ccircle%20cx%3D%27194.1%27%20cy%3D%279.7%27%20r%3D%272.4%27%20fill%3D%27%231b2436%27%2F%3E%3Crect%20x%3D%27-9.4%27%20y%3D%2711.6%27%20width%3D%277.0%27%20height%3D%2712.0%27%20rx%3D%272.6%27%20fill%3D%27%231d5fbf%27%2F%3E%3Ccircle%20cx%3D%27-5.9%27%20cy%3D%279.7%27%20r%3D%272.4%27%20fill%3D%27%231b2436%27%2F%3E%3Crect%20x%3D%278.3%27%20y%3D%2726.0%27%20width%3D%277.0%27%20height%3D%2712.0%27%20rx%3D%272.6%27%20fill%3D%27%23e9eef5%27%2F%3E%3Ccircle%20cx%3D%2711.8%27%20cy%3D%2724.1%27%20r%3D%272.4%27%20fill%3D%27%231b2436%27%2F%3E%3Crect%20x%3D%2720.0%27%20y%3D%2727.2%27%20width%3D%277.0%27%20height%3D%2712.0%27%20rx%3D%272.6%27%20fill%3D%27%231d5fbf%27%2F%3E%3Ccircle%20cx%3D%2723.5%27%20cy%3D%2725.3%27%20r%3D%272.4%27%20fill%3D%27%231b2436%27%2F%3E%3Crect%20x%3D%2731.8%27%20y%3D%2727.8%27%20width%3D%277.0%27%20height%3D%2712.0%27%20rx%3D%272.6%27%20fill%3D%27%2333415c%27%2F%3E%3Ccircle%20cx%3D%2735.3%27%20cy%3D%2725.9%27%20r%3D%272.4%27%20fill%3D%27%231b2436%27%2F%3E%3Crect%20x%3D%2743.6%27%20y%3D%2726.6%27%20width%3D%277.0%27%20height%3D%2712.0%27%20rx%3D%272.6%27%20fill%3D%27%23e9eef5%27%2F%3E%3Ccircle%20cx%3D%2747.1%27%20cy%3D%2724.7%27%20r%3D%272.4%27%20fill%3D%27%231b2436%27%2F%3E%3Crect%20x%3D%2755.3%27%20y%3D%2727.4%27%20width%3D%277.0%27%20height%3D%2712.0%27%20rx%3D%272.6%27%20fill%3D%27%23d62839%27%2F%3E%3Ccircle%20cx%3D%2758.8%27%20cy%3D%2725.5%27%20r%3D%272.4%27%20fill%3D%27%231b2436%27%2F%3E%3Crect%20x%3D%2767.1%27%20y%3D%2726.2%27%20width%3D%277.0%27%20height%3D%2712.0%27%20rx%3D%272.6%27%20fill%3D%27%231d5fbf%27%2F%3E%3Ccircle%20cx%3D%2770.6%27%20cy%3D%2724.3%27%20r%3D%272.4%27%20fill%3D%27%231b2436%27%2F%3E%3Crect%20x%3D%2778.9%27%20y%3D%2727.1%27%20width%3D%277.0%27%20height%3D%2712.0%27%20rx%3D%272.6%27%20fill%3D%27%232a3550%27%2F%3E%3Ccircle%20cx%3D%2782.4%27%20cy%3D%2725.2%27%20r%3D%272.4%27%20fill%3D%27%231b2436%27%2F%3E%3Crect%20x%3D%2790.6%27%20y%3D%2725.9%27%20width%3D%277.0%27%20height%3D%2712.0%27%20rx%3D%272.6%27%20fill%3D%27%23e9eef5%27%2F%3E%3Ccircle%20cx%3D%2794.1%27%20cy%3D%2724.0%27%20r%3D%272.4%27%20fill%3D%27%231b2436%27%2F%3E%3Crect%20x%3D%27102.4%27%20y%3D%2727.7%27%20width%3D%277.0%27%20height%3D%2712.0%27%20rx%3D%272.6%27%20fill%3D%27%231d5fbf%27%2F%3E%3Ccircle%20cx%3D%27105.9%27%20cy%3D%2725.8%27%20r%3D%272.4%27%20fill%3D%27%231b2436%27%2F%3E%3Crect%20x%3D%27114.2%27%20y%3D%2726.9%27%20width%3D%277.0%27%20height%3D%2712.0%27%20rx%3D%272.6%27%20fill%3D%27%23d62839%27%2F%3E%3Ccircle%20cx%3D%27117.6%27%20cy%3D%2725.0%27%20r%3D%272.4%27%20fill%3D%27%231b2436%27%2F%3E%3Cpath%20d%3D%27M114.5%2027.4%20L112.4%2019.8%20M120.8%2027.4%20L122.9%2019.8%27%20stroke%3D%27%231b2436%27%20stroke-width%3D%271.3%27%20stroke-linecap%3D%27round%27%2F%3E%3Crect%20x%3D%27111.4%27%20y%3D%2717.4%27%20width%3D%2712.5%27%20height%3D%272.6%27%20rx%3D%270.4%27%20fill%3D%27%230b4ea2%27%2F%3E%3Crect%20x%3D%27113.8%27%20y%3D%2718.3%27%20width%3D%272.6%27%20height%3D%271.0%27%20fill%3D%27%23fff%27%2F%3E%3Crect%20x%3D%27118.8%27%20y%3D%2718.3%27%20width%3D%272.6%27%20height%3D%271.0%27%20fill%3D%27%23fff%27%2F%3E%3Crect%20x%3D%27125.9%27%20y%3D%2728.0%27%20width%3D%277.0%27%20height%3D%2712.0%27%20rx%3D%272.6%27%20fill%3D%27%2333415c%27%2F%3E%3Ccircle%20cx%3D%27129.4%27%20cy%3D%2726.1%27%20r%3D%272.4%27%20fill%3D%27%231b2436%27%2F%3E%3Cpath%20d%3D%27M126.5%2028.5%20L124.6%2020.3%20M132.3%2028.5%20L134.2%2020.3%27%20stroke%3D%27%231b2436%27%20stroke-width%3D%271.3%27%20stroke-linecap%3D%27round%27%2F%3E%3Crect%20x%3D%27137.7%27%20y%3D%2726.4%27%20width%3D%277.0%27%20height%3D%2712.0%27%20rx%3D%272.6%27%20fill%3D%27%23e9eef5%27%2F%3E%3Ccircle%20cx%3D%27141.2%27%20cy%3D%2724.5%27%20r%3D%272.4%27%20fill%3D%27%231b2436%27%2F%3E%3Crect%20x%3D%27149.5%27%20y%3D%2727.6%27%20width%3D%277.0%27%20height%3D%2712.0%27%20rx%3D%272.6%27%20fill%3D%27%231d5fbf%27%2F%3E%3Ccircle%20cx%3D%27152.9%27%20cy%3D%2725.7%27%20r%3D%272.4%27%20fill%3D%27%231b2436%27%2F%3E%3Crect%20x%3D%27161.2%27%20y%3D%2726.0%27%20width%3D%277.0%27%20height%3D%2712.0%27%20rx%3D%272.6%27%20fill%3D%27%232a3550%27%2F%3E%3Ccircle%20cx%3D%27164.7%27%20cy%3D%2724.1%27%20r%3D%272.4%27%20fill%3D%27%231b2436%27%2F%3E%3Crect%20x%3D%27173.0%27%20y%3D%2727.2%27%20width%3D%277.0%27%20height%3D%2712.0%27%20rx%3D%272.6%27%20fill%3D%27%23d62839%27%2F%3E%3Ccircle%20cx%3D%27176.5%27%20cy%3D%2725.3%27%20r%3D%272.4%27%20fill%3D%27%231b2436%27%2F%3E%3Crect%20x%3D%27184.8%27%20y%3D%2727.8%27%20width%3D%277.0%27%20height%3D%2712.0%27%20rx%3D%272.6%27%20fill%3D%27%23e9eef5%27%2F%3E%3Ccircle%20cx%3D%27188.2%27%20cy%3D%2725.9%27%20r%3D%272.4%27%20fill%3D%27%231b2436%27%2F%3E%3Crect%20x%3D%27196.5%27%20y%3D%2726.6%27%20width%3D%277.0%27%20height%3D%2712.0%27%20rx%3D%272.6%27%20fill%3D%27%231d5fbf%27%2F%3E%3Ccircle%20cx%3D%27200.0%27%20cy%3D%2724.7%27%20r%3D%272.4%27%20fill%3D%27%231b2436%27%2F%3E%3Crect%20x%3D%27-3.5%27%20y%3D%2726.6%27%20width%3D%277.0%27%20height%3D%2712.0%27%20rx%3D%272.6%27%20fill%3D%27%231d5fbf%27%2F%3E%3Ccircle%20cx%3D%270.0%27%20cy%3D%2724.7%27%20r%3D%272.4%27%20fill%3D%27%231b2436%27%2F%3E%3C%2Fsvg%3E");
}

.ks-fb-divaci--p {
  top: 12.9em;
  height: 4.3em;
  background-image: url("data:image/svg+xml,%3Csvg%20xmlns%3D%27http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%27%20viewBox%3D%270%200%20200%2043%27%3E%3Crect%20x%3D%272.8%27%20y%3D%2712.5%27%20width%3D%277.8%27%20height%3D%2713.5%27%20rx%3D%273.0%27%20fill%3D%27%231d5fbf%27%2F%3E%3Ccircle%20cx%3D%276.7%27%20cy%3D%2710.3%27%20r%3D%272.7%27%20fill%3D%27%231b2436%27%2F%3E%3Crect%20x%3D%27202.8%27%20y%3D%2712.5%27%20width%3D%277.8%27%20height%3D%2713.5%27%20rx%3D%273.0%27%20fill%3D%27%231d5fbf%27%2F%3E%3Ccircle%20cx%3D%27206.7%27%20cy%3D%2710.3%27%20r%3D%272.7%27%20fill%3D%27%231b2436%27%2F%3E%3Crect%20x%3D%2716.1%27%20y%3D%2713.1%27%20width%3D%277.8%27%20height%3D%2713.5%27%20rx%3D%273.0%27%20fill%3D%27%232a3550%27%2F%3E%3Ccircle%20cx%3D%2720.0%27%20cy%3D%2710.9%27%20r%3D%272.7%27%20fill%3D%27%231b2436%27%2F%3E%3Cpath%20d%3D%27M16.5%2013.6%20L14.1%204.9%20M23.5%2013.6%20L25.9%204.9%27%20stroke%3D%27%231b2436%27%20stroke-width%3D%271.5%27%20stroke-linecap%3D%27round%27%2F%3E%3Crect%20x%3D%2713.0%27%20y%3D%272.4%27%20width%3D%2714.0%27%20height%3D%273.0%27%20rx%3D%270.4%27%20fill%3D%27%230b4ea2%27%2F%3E%3Crect%20x%3D%2715.7%27%20y%3D%273.3%27%20width%3D%273.0%27%20height%3D%271.1%27%20fill%3D%27%23fff%27%2F%3E%3Crect%20x%3D%2721.4%27%20y%3D%273.3%27%20width%3D%273.0%27%20height%3D%271.1%27%20fill%3D%27%23fff%27%2F%3E%3Crect%20x%3D%2729.4%27%20y%3D%2711.9%27%20width%3D%277.8%27%20height%3D%2713.5%27%20rx%3D%273.0%27%20fill%3D%27%23e9eef5%27%2F%3E%3Ccircle%20cx%3D%2733.3%27%20cy%3D%279.7%27%20r%3D%272.7%27%20fill%3D%27%231b2436%27%2F%3E%3Crect%20x%3D%2742.8%27%20y%3D%2712.7%27%20width%3D%277.8%27%20height%3D%2713.5%27%20rx%3D%273.0%27%20fill%3D%27%231d5fbf%27%2F%3E%3Ccircle%20cx%3D%2746.7%27%20cy%3D%2710.5%27%20r%3D%272.7%27%20fill%3D%27%231b2436%27%2F%3E%3Crect%20x%3D%2756.1%27%20y%3D%2711.5%27%20width%3D%277.8%27%20height%3D%2713.5%27%20rx%3D%273.0%27%20fill%3D%27%23d62839%27%2F%3E%3Ccircle%20cx%3D%2760.0%27%20cy%3D%279.3%27%20r%3D%272.7%27%20fill%3D%27%231b2436%27%2F%3E%3Crect%20x%3D%2769.4%27%20y%3D%2712.4%27%20width%3D%277.8%27%20height%3D%2713.5%27%20rx%3D%273.0%27%20fill%3D%27%2333415c%27%2F%3E%3Ccircle%20cx%3D%2773.3%27%20cy%3D%2710.2%27%20r%3D%272.7%27%20fill%3D%27%231b2436%27%2F%3E%3Crect%20x%3D%2782.8%27%20y%3D%2711.2%27%20width%3D%277.8%27%20height%3D%2713.5%27%20rx%3D%273.0%27%20fill%3D%27%23e9eef5%27%2F%3E%3Ccircle%20cx%3D%2786.7%27%20cy%3D%279.0%27%20r%3D%272.7%27%20fill%3D%27%231b2436%27%2F%3E%3Crect%20x%3D%2796.1%27%20y%3D%2713.0%27%20width%3D%277.8%27%20height%3D%2713.5%27%20rx%3D%273.0%27%20fill%3D%27%231d5fbf%27%2F%3E%3Ccircle%20cx%3D%27100.0%27%20cy%3D%2710.8%27%20r%3D%272.7%27%20fill%3D%27%231b2436%27%2F%3E%3Cpath%20d%3D%27M96.8%2013.5%20L94.6%204.3%20M103.2%2013.5%20L105.4%204.3%27%20stroke%3D%27%231b2436%27%20stroke-width%3D%271.5%27%20stroke-linecap%3D%27round%27%2F%3E%3Crect%20x%3D%27109.4%27%20y%3D%2712.2%27%20width%3D%277.8%27%20height%3D%2713.5%27%20rx%3D%273.0%27%20fill%3D%27%232a3550%27%2F%3E%3Ccircle%20cx%3D%27113.3%27%20cy%3D%2710.0%27%20r%3D%272.7%27%20fill%3D%27%231b2436%27%2F%3E%3Crect%20x%3D%27122.8%27%20y%3D%2713.3%27%20width%3D%277.8%27%20height%3D%2713.5%27%20rx%3D%273.0%27%20fill%3D%27%23d62839%27%2F%3E%3Ccircle%20cx%3D%27126.7%27%20cy%3D%2711.1%27%20r%3D%272.7%27%20fill%3D%27%231b2436%27%2F%3E%3Crect%20x%3D%27136.1%27%20y%3D%2711.7%27%20width%3D%277.8%27%20height%3D%2713.5%27%20rx%3D%273.0%27%20fill%3D%27%23e9eef5%27%2F%3E%3Ccircle%20cx%3D%27140.0%27%20cy%3D%279.5%27%20r%3D%272.7%27%20fill%3D%27%231b2436%27%2F%3E%3Crect%20x%3D%27149.4%27%20y%3D%2712.9%27%20width%3D%277.8%27%20height%3D%2713.5%27%20rx%3D%273.0%27%20fill%3D%27%231d5fbf%27%2F%3E%3Ccircle%20cx%3D%27153.3%27%20cy%3D%2710.7%27%20r%3D%272.7%27%20fill%3D%27%231b2436%27%2F%3E%3Crect%20x%3D%27162.8%27%20y%3D%2711.3%27%20width%3D%277.8%27%20height%3D%2713.5%27%20rx%3D%273.0%27%20fill%3D%27%23e9eef5%27%2F%3E%3Ccircle%20cx%3D%27166.7%27%20cy%3D%279.1%27%20r%3D%272.7%27%20fill%3D%27%231b2436%27%2F%3E%3Crect%20x%3D%27176.1%27%20y%3D%2712.5%27%20width%3D%277.8%27%20height%3D%2713.5%27%20rx%3D%273.0%27%20fill%3D%27%231d5fbf%27%2F%3E%3Ccircle%20cx%3D%27180.0%27%20cy%3D%2710.3%27%20r%3D%272.7%27%20fill%3D%27%231b2436%27%2F%3E%3Cpath%20d%3D%27M176.5%2013.0%20L174.1%204.3%20M183.5%2013.0%20L185.9%204.3%27%20stroke%3D%27%231b2436%27%20stroke-width%3D%271.5%27%20stroke-linecap%3D%27round%27%2F%3E%3Crect%20x%3D%27173.0%27%20y%3D%271.8%27%20width%3D%2714.0%27%20height%3D%273.0%27%20rx%3D%270.4%27%20fill%3D%27%230b4ea2%27%2F%3E%3Crect%20x%3D%27175.7%27%20y%3D%272.7%27%20width%3D%273.0%27%20height%3D%271.1%27%20fill%3D%27%23fff%27%2F%3E%3Crect%20x%3D%27181.3%27%20y%3D%272.7%27%20width%3D%273.0%27%20height%3D%271.1%27%20fill%3D%27%23fff%27%2F%3E%3Crect%20x%3D%27189.4%27%20y%3D%2713.1%27%20width%3D%277.8%27%20height%3D%2713.5%27%20rx%3D%273.0%27%20fill%3D%27%2333415c%27%2F%3E%3Ccircle%20cx%3D%27193.3%27%20cy%3D%2710.9%27%20r%3D%272.7%27%20fill%3D%27%231b2436%27%2F%3E%3Crect%20x%3D%27-10.6%27%20y%3D%2713.1%27%20width%3D%277.8%27%20height%3D%2713.5%27%20rx%3D%273.0%27%20fill%3D%27%2333415c%27%2F%3E%3Ccircle%20cx%3D%27-6.7%27%20cy%3D%2710.9%27%20r%3D%272.7%27%20fill%3D%27%231b2436%27%2F%3E%3Crect%20x%3D%279.4%27%20y%3D%2728.9%27%20width%3D%277.8%27%20height%3D%2713.5%27%20rx%3D%273.0%27%20fill%3D%27%23e9eef5%27%2F%3E%3Ccircle%20cx%3D%2713.3%27%20cy%3D%2726.7%27%20r%3D%272.7%27%20fill%3D%27%231b2436%27%2F%3E%3Crect%20x%3D%2722.8%27%20y%3D%2729.7%27%20width%3D%277.8%27%20height%3D%2713.5%27%20rx%3D%273.0%27%20fill%3D%27%23d62839%27%2F%3E%3Ccircle%20cx%3D%2726.7%27%20cy%3D%2727.5%27%20r%3D%272.7%27%20fill%3D%27%231b2436%27%2F%3E%3Cpath%20d%3D%27M23.4%2030.2%20L21.3%2021.0%20M29.9%2030.2%20L32.1%2021.0%27%20stroke%3D%27%231b2436%27%20stroke-width%3D%271.5%27%20stroke-linecap%3D%27round%27%2F%3E%3Crect%20x%3D%2736.1%27%20y%3D%2728.5%27%20width%3D%277.8%27%20height%3D%2713.5%27%20rx%3D%273.0%27%20fill%3D%27%231d5fbf%27%2F%3E%3Ccircle%20cx%3D%2740.0%27%20cy%3D%2726.3%27%20r%3D%272.7%27%20fill%3D%27%231b2436%27%2F%3E%3Crect%20x%3D%2749.4%27%20y%3D%2729.4%27%20width%3D%277.8%27%20height%3D%2713.5%27%20rx%3D%273.0%27%20fill%3D%27%232a3550%27%2F%3E%3Ccircle%20cx%3D%2753.3%27%20cy%3D%2727.2%27%20r%3D%272.7%27%20fill%3D%27%231b2436%27%2F%3E%3Crect%20x%3D%2762.8%27%20y%3D%2728.2%27%20width%3D%277.8%27%20height%3D%2713.5%27%20rx%3D%273.0%27%20fill%3D%27%23e9eef5%27%2F%3E%3Ccircle%20cx%3D%2766.7%27%20cy%3D%2726.0%27%20r%3D%272.7%27%20fill%3D%27%231b2436%27%2F%3E%3Crect%20x%3D%2776.1%27%20y%3D%2730.0%27%20width%3D%277.8%27%20height%3D%2713.5%27%20rx%3D%273.0%27%20fill%3D%27%231d5fbf%27%2F%3E%3Ccircle%20cx%3D%2780.0%27%20cy%3D%2727.8%27%20r%3D%272.7%27%20fill%3D%27%231b2436%27%2F%3E%3Crect%20x%3D%2789.4%27%20y%3D%2729.2%27%20width%3D%277.8%27%20height%3D%2713.5%27%20rx%3D%273.0%27%20fill%3D%27%23d62839%27%2F%3E%3Ccircle%20cx%3D%2793.3%27%20cy%3D%2727.0%27%20r%3D%272.7%27%20fill%3D%27%231b2436%27%2F%3E%3Crect%20x%3D%27102.8%27%20y%3D%2730.3%27%20width%3D%277.8%27%20height%3D%2713.5%27%20rx%3D%273.0%27%20fill%3D%27%2333415c%27%2F%3E%3Ccircle%20cx%3D%27106.7%27%20cy%3D%2728.1%27%20r%3D%272.7%27%20fill%3D%27%231b2436%27%2F%3E%3Crect%20x%3D%27116.1%27%20y%3D%2728.7%27%20width%3D%277.8%27%20height%3D%2713.5%27%20rx%3D%273.0%27%20fill%3D%27%23e9eef5%27%2F%3E%3Ccircle%20cx%3D%27120.0%27%20cy%3D%2726.5%27%20r%3D%272.7%27%20fill%3D%27%231b2436%27%2F%3E%3Crect%20x%3D%27129.4%27%20y%3D%2729.9%27%20width%3D%277.8%27%20height%3D%2713.5%27%20rx%3D%273.0%27%20fill%3D%27%231d5fbf%27%2F%3E%3Ccircle%20cx%3D%27133.3%27%20cy%3D%2727.7%27%20r%3D%272.7%27%20fill%3D%27%231b2436%27%2F%3E%3Cpath%20d%3D%27M129.8%2030.4%20L127.4%2021.7%20M136.8%2030.4%20L139.3%2021.7%27%20stroke%3D%27%231b2436%27%20stroke-width%3D%271.5%27%20stroke-linecap%3D%27round%27%2F%3E%3Crect%20x%3D%27126.3%27%20y%3D%2719.2%27%20width%3D%2714.0%27%20height%3D%273.0%27%20rx%3D%270.4%27%20fill%3D%27%230b4ea2%27%2F%3E%3Crect%20x%3D%27129.0%27%20y%3D%2720.1%27%20width%3D%273.0%27%20height%3D%271.1%27%20fill%3D%27%23fff%27%2F%3E%3Crect%20x%3D%27134.7%27%20y%3D%2720.1%27%20width%3D%273.0%27%20height%3D%271.1%27%20fill%3D%27%23fff%27%2F%3E%3Crect%20x%3D%27142.8%27%20y%3D%2728.3%27%20width%3D%277.8%27%20height%3D%2713.5%27%20rx%3D%273.0%27%20fill%3D%27%232a3550%27%2F%3E%3Ccircle%20cx%3D%27146.7%27%20cy%3D%2726.1%27%20r%3D%272.7%27%20fill%3D%27%231b2436%27%2F%3E%3Crect%20x%3D%27156.1%27%20y%3D%2729.5%27%20width%3D%277.8%27%20height%3D%2713.5%27%20rx%3D%273.0%27%20fill%3D%27%23d62839%27%2F%3E%3Ccircle%20cx%3D%27160.0%27%20cy%3D%2727.3%27%20r%3D%272.7%27%20fill%3D%27%231b2436%27%2F%3E%3Cpath%20d%3D%27M156.8%2030.0%20L154.6%2020.8%20M163.2%2030.0%20L165.4%2020.8%27%20stroke%3D%27%231b2436%27%20stroke-width%3D%271.5%27%20stroke-linecap%3D%27round%27%2F%3E%3Crect%20x%3D%27169.4%27%20y%3D%2730.1%27%20width%3D%277.8%27%20height%3D%2713.5%27%20rx%3D%273.0%27%20fill%3D%27%23e9eef5%27%2F%3E%3Ccircle%20cx%3D%27173.3%27%20cy%3D%2727.9%27%20r%3D%272.7%27%20fill%3D%27%231b2436%27%2F%3E%3Crect%20x%3D%27182.8%27%20y%3D%2728.9%27%20width%3D%277.8%27%20height%3D%2713.5%27%20rx%3D%273.0%27%20fill%3D%27%231d5fbf%27%2F%3E%3Ccircle%20cx%3D%27186.7%27%20cy%3D%2726.7%27%20r%3D%272.7%27%20fill%3D%27%231b2436%27%2F%3E%3Crect%20x%3D%27196.1%27%20y%3D%2729.7%27%20width%3D%277.8%27%20height%3D%2713.5%27%20rx%3D%273.0%27%20fill%3D%27%23e9eef5%27%2F%3E%3Ccircle%20cx%3D%27200.0%27%20cy%3D%2727.5%27%20r%3D%272.7%27%20fill%3D%27%231b2436%27%2F%3E%3Crect%20x%3D%27-3.9%27%20y%3D%2729.7%27%20width%3D%277.8%27%20height%3D%2713.5%27%20rx%3D%273.0%27%20fill%3D%27%23e9eef5%27%2F%3E%3Ccircle%20cx%3D%270.0%27%20cy%3D%2727.5%27%20r%3D%272.7%27%20fill%3D%27%231b2436%27%2F%3E%3C%2Fsvg%3E");
  animation-delay: -0.2s;
}

.sky-night .ks-fb-divaci { opacity: 0.8; }

@keyframes ks-fb-tribuna {
  0%, 61% { transform: translateY(0); }
  62.5%, 65.5%, 68.5%, 71.5%, 74.5%, 77.5% { transform: translateY(-0.5em); }
  64%, 67%, 70%, 73%, 76%, 79%, 100% { transform: translateY(0); }
}

/* Veľká zástava so štátnym znakom — kýve sa okolo päty žrde. */

.ks-fb-zastava {
  left: 27.5em;
  top: 9.6em;
  width: 4.4em;
  height: 3.1em;
  transform-origin: 0 100%;
  animation: ks-fb-mavanie 1.8s ease-in-out infinite alternate;
}

.ks-fb-zastava svg { width: 100%; height: 100%; }

@keyframes ks-fb-mavanie {
  from { transform: rotate(-5deg); }
  to { transform: rotate(5deg); }
}

/* Svetlice: po góle zahorí plameň a stúpa dym v slovenských farbách. */

.ks-fb-svetlica {
  top: 12.2em;
  width: 0;
  height: 0;
}

.ks-fb-svetlica > * {
  position: absolute;
  border-radius: 50%;
}

.ks-fb-plamen {
  left: -0.6em;
  top: -0.6em;
  width: 1.2em;
  height: 1.2em;
  background: radial-gradient(circle, #fff6c8 0 18%, #ff6a2a 42%, rgba(255, 60, 30, 0) 70%);
  animation: ks-fb-plamen 12s linear infinite;
}

.ks-fb-dym {
  left: -2.2em;
  top: -3.6em;
  width: 4.4em;
  height: 4.4em;
  opacity: 0.5;
  transform: translateY(-1.2em) scale(1.4);
  animation: ks-fb-dym 12s ease-out infinite;
}

.ks-fb-dym--2 {
  opacity: 0.35;
  transform: translateY(-2.2em) scale(2);
  animation-delay: 0.6s;
}

@keyframes ks-fb-plamen {
  0%, 61% { opacity: 0; }
  63%, 69%, 75% { opacity: 1; }
  66%, 72% { opacity: 0.6; }
  86% { opacity: 0.8; }
  92%, 100% { opacity: 0; }
}

@keyframes ks-fb-dym {
  0%, 61% { opacity: 0; transform: translateY(0.8em) scale(0.3); }
  64% { opacity: 0.85; transform: translateY(0) scale(0.7); }
  80% { opacity: 0.55; transform: translateY(-1.6em) scale(1.6); }
  94%, 100% { opacity: 0; transform: translateY(-2.8em) scale(2.4); }
}

/* Svetelná tabuľa — LED písmo, pri góle 1 → 2 a blikajúci GÓL. */

.ks-fb-tabula {
  left: 1.2em;
  top: 9.4em;
  width: 12.6em;
  height: 4.4em;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 0.35em;
  background: #0a0f1a;
  border: 0.16em solid #3a4658;
  border-radius: 0.35em;
  color: #ffcf3f;
  font-family: ui-monospace, 'DejaVu Sans Mono', Menlo, monospace;
  font-weight: 700;
}

.ks-fb-tabula-riadok {
  display: flex;
  gap: 0.4em;
  font-size: 1.5em;
  letter-spacing: 0.04em;
}

.ks-fb-tabula-riadok--2 {
  display: grid;
  font-size: 1.15em;
}

.ks-fb-skore {
  display: inline-grid;
}

.ks-fb-skore > *,
.ks-fb-tabula-riadok--2 > * {
  grid-area: 1 / 1;
  text-align: center;
}

/* Základný stav = chvíľa po góle (tak ostane aj pri vypnutom pohybe). */

.ks-fb-skore-a { opacity: 0; animation: ks-fb-skore-a 12s linear infinite; }

.ks-fb-skore-b { opacity: 1; animation: ks-fb-skore-b 12s linear infinite; }

.ks-fb-minuta { opacity: 0; animation: ks-fb-minuta 12s linear infinite; }

.ks-fb-gol { color: #fff3b0; animation: ks-fb-gol 12s linear infinite; }

.sky-night .ks-fb-tabula { text-shadow: 0 0 0.4em rgba(255, 207, 63, 0.7); }

@keyframes ks-fb-skore-a {
  0%, 61% { opacity: 1; }
  61.8%, 97% { opacity: 0; }
  98%, 100% { opacity: 1; }
}

@keyframes ks-fb-skore-b {
  0%, 61% { opacity: 0; }
  61.8%, 97% { opacity: 1; }
  98%, 100% { opacity: 0; }
}

@keyframes ks-fb-minuta {
  0%, 61% { opacity: 1; }
  61.8%, 88% { opacity: 0; }
  89%, 100% { opacity: 1; }
}

@keyframes ks-fb-gol {
  0%, 61% { opacity: 0; }
  61.8%, 66%, 70%, 74%, 88% { opacity: 1; }
  64%, 68%, 72% { opacity: 0.15; }
  89%, 100% { opacity: 0; }
}

/* Bránka: sieť sa pri góle vydúva od bránkovej čiary dozadu. viewBox
   je v súradniciach kresby ihriska (440–490 × 182–290) a box je natiahnutý
   rovnako ako ihrisko (zvislo 1,28×). */

.ks-fb-siet,
.ks-fb-brana {
  left: 44em;
  top: 14.94em;
  width: 5em;
  height: 13.79em;
}

.ks-fb-siet svg,
.ks-fb-brana svg {
  width: 100%;
  height: 100%;
  overflow: visible;
}

.ks-fb-siet {
  transform-origin: 8% 60%;
  transform: scale(1.1, 1.02);
  will-change: transform;
  animation: ks-fb-siet 12s linear infinite;
}

@keyframes ks-fb-siet {
  0%, 60.8% { transform: scale(1, 1); }
  62.2% { transform: scale(1.2, 1.04); }
  63.6% { transform: scale(1.07, 1.01); }
  65% { transform: scale(1.13, 1.02); }
  67% { transform: scale(1.03, 1); }
  70%, 100% { transform: scale(1, 1); }
}

/* Brankár: obal je bod pri chodidlách, otáča sa okolo neho. */

.ks-fb-brankar {
  left: 0;
  top: 0;
  width: 0;
  height: 0;
  transform: translate(44.4em, 25.02em) rotate(90deg);
  will-change: transform;
  animation: ks-fb-brankar 12s linear infinite;
}

.ks-fb-brankar svg {
  position: absolute;
  left: -1.45em;
  bottom: 0;
  width: 2.9em;
  height: 4.7em;
}

@keyframes ks-fb-brankar {
  0% { transform: translate(44.1em, 24.89em) rotate(0deg); }
  12% { transform: translate(43.8em, 25.09em) rotate(0deg); }
  24% { transform: translate(44.2em, 24.7em) rotate(0deg); }
  36% { transform: translate(43.8em, 25.09em) rotate(0deg); }
  46% { transform: translate(44.1em, 24.83em) rotate(0deg); }
  55% { transform: translate(44.1em, 25.09em) rotate(0deg); }
  59% { transform: translate(44.6em, 23.62em) rotate(55deg); }
  61.5% { transform: translate(44.5em, 24.38em) rotate(82deg); }
  63%, 84% { transform: translate(44.4em, 25.02em) rotate(90deg); }
  88% { transform: translate(44.2em, 24.89em) rotate(35deg); }
  91%, 100% { transform: translate(44.1em, 24.89em) rotate(0deg); }
}

/* Hráči: obal je bod pri chodidlách (translate v em scény). Základná poloha
   = chvíľa po góle — tak stoja aj pri vypnutom pohybe, celí v okne. *//* Krok (--k) je rovnaký pre všetkých: každá hranica opakovania krátkej
   animácie budí hlavné vlákno (udalosť animationiteration), aj keď pohyb
   beží na kompozítore. Štyria hráči s rôznym krokom a fázou to robili
   ~50× za sekundu, s jedným krokom je to polovica. */

.ks-fb-hrac {
  --k: 0.42s;
  left: 0;
  top: 0;
  width: 0;
  height: 0;
  will-change: transform, opacity;
  animation: 12s linear infinite;
}

/* Kresba hľadí doľava; doprava (k bránke) ju otočí zrkadlenie. */

.ks-fb-otoc {
  position: absolute;
  left: 0;
  bottom: 0;
  width: 0;
  height: 0;
  transform: scaleX(-1);
}

.ks-fb-hrac--strelec .ks-fb-otoc {
  transform: scaleX(1);
  animation: ks-fb-otocka-strelec 12s linear infinite;
}

.ks-fb-hrac--stoper .ks-fb-otoc {
  animation: ks-fb-otocka-stoper 12s linear infinite;
}

/* Strelec sa po góle otočí k divákom, stoper sa po prihrávke otočí za loptou. */

@keyframes ks-fb-otocka-strelec {
  0%, 61.5% { transform: scaleX(-1); }
  62.5%, 100% { transform: scaleX(1); }
}

@keyframes ks-fb-otocka-stoper {
  0%, 39.5% { transform: scaleX(1); }
  40.5%, 100% { transform: scaleX(-1); }
}

/* Postava: box 48 : 64, trup je statické SVG, končatiny HTML prvky na kĺboch
   (bedro 54 %/56 %, rameno 46 %/28 %) — rovnaká stavba ako bežci maratónu. */

.ks-fb-figura {
  position: absolute;
  bottom: 0;
  left: calc(var(--h) * -0.375);
  width: calc(var(--h) * 0.75);
  height: var(--h);
  color: #1b2436;
  animation: ks-fb-hup var(--k) ease-in-out infinite;
}

.ks-fb-telo,
.ks-fb-hore {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  overflow: visible;
}

.ks-fb-ruky {
  position: absolute;
  inset: 0;
}

.ks-fb-noha,
.ks-fb-ruka,
.ks-fb-lytko,
.ks-fb-predlaktie {
  position: absolute;
  background: currentColor;
  border-radius: 999px;
}

@keyframes ks-fb-hup {
  0%, 50%, 100% { transform: rotate(-5deg) translateY(0); }
  25%, 75% { transform: rotate(-5deg) translateY(-0.12em); }
}

.ks-fb-noha {
  left: 54%;
  top: 56%;
  width: 9%;
  height: 19%;
  transform-origin: 50% 12%;
  animation: ks-fb-stehno var(--k) ease-in-out infinite;
}

/* lýtko so štulpňou v farbe tímu, kopačka tmavá */

.ks-fb-lytko {
  left: 0;
  top: 80%;
  width: 100%;
  height: 105%;
  background: var(--ponozky, currentColor);
  transform-origin: 50% 10%;
  animation: ks-fb-lytko var(--k) ease-in-out infinite;
}

.ks-fb-lytko::after {
  content: '';
  position: absolute;
  left: -95%;
  bottom: -8%;
  width: 195%;
  height: 40%;
  background: #1b2436;
  border-radius: 999px;
}

.ks-fb-ruka {
  left: 46%;
  top: 28%;
  width: 8%;
  height: 15%;
  transform-origin: 50% 12%;
  animation: ks-fb-ruka var(--k) ease-in-out infinite;
}

.ks-fb-predlaktie {
  left: 0;
  top: 78%;
  width: 100%;
  height: 92%;
  transform-origin: 50% 10%;
  transform: rotate(95deg);
}

.ks-fb-noha--z,
.ks-fb-ruky--z {
  opacity: 0.72;
}

.ks-fb-noha--z,
.ks-fb-noha--z .ks-fb-lytko,
.ks-fb-ruky--p .ks-fb-ruka {
  animation-delay: calc(var(--k) / -2);
}

@keyframes ks-fb-stehno {
  0% { transform: rotate(42deg); }
  25% { transform: rotate(6deg); }
  50% { transform: rotate(-36deg); }
  75% { transform: rotate(-2deg); }
  100% { transform: rotate(42deg); }
}

@keyframes ks-fb-lytko {
  0% { transform: rotate(10deg); }
  25% { transform: rotate(-14deg); }
  50% { transform: rotate(-76deg); }
  75% { transform: rotate(-64deg); }
  100% { transform: rotate(10deg); }
}

@keyframes ks-fb-ruka {
  0% { transform: rotate(-38deg); }
  50% { transform: rotate(34deg); }
  100% { transform: rotate(-38deg); }
}

/* Oslava: po góle ruky hore. Bežiace ruky a ruky hore sa prelínajú cez
   opacity obalov — rotácia ramien beží ďalej, len nie je vidieť. */

.ks-fb-hrac--strelec .ks-fb-ruky,
.ks-fb-hrac--nahravac .ks-fb-ruky {
  opacity: 0;
  animation: ks-fb-ruky-dole 12s linear infinite;
}

.ks-fb-hore {
  animation: ks-fb-ruky-hore 12s linear infinite;
}

@keyframes ks-fb-ruky-dole {
  0%, 61.5% { opacity: 1; }
  62.5%, 87.5% { opacity: 0; }
  88.5%, 100% { opacity: 1; }
}

@keyframes ks-fb-ruky-hore {
  0%, 61.5% { opacity: 0; }
  62.5%, 87.5% { opacity: 1; }
  88.5%, 100% { opacity: 0; }
}

/* Lopta: obal je bod pod loptou (dráha), vnútorné SVG sa kotúľa. */

.ks-fb-lopta {
  left: 0;
  top: 0;
  width: 0;
  height: 0;
  transform: translate(46.5em, 22.85em);
  will-change: transform, opacity;
  animation: ks-fb-lopta 12s linear infinite;
}

.ks-fb-lopta svg {
  position: absolute;
  left: -0.47em;
  bottom: 0;
  width: 0.94em;
  height: 0.94em;
  animation: ks-fb-tocenie 12s linear infinite;
}

.ks-fb-stin {
  left: -0.5em;
  top: -0.14em;
  width: 1em;
  height: 0.28em;
  border-radius: 50%;
  background: rgba(8, 20, 12, 0.45);
  opacity: 0.45;
  transform: translate(46.5em, 22.85em);
  animation: ks-fb-stin 12s linear infinite;
}

@keyframes ks-fb-lopta {
  0% { transform: translate(7.1em, 27.57em); opacity: 0; }
  3% { opacity: 1; }
  34% { transform: translate(23.1em, 26.81em); }
  42% { transform: translate(32.1em, 22.72em); }
  54% { transform: translate(36.6em, 22.98em); }
  56% { transform: translate(39.2em, 21.19em); }
  58.5% { transform: translate(42.3em, 19.66em); }
  61% { transform: translate(45.6em, 18.89em); }
  62.5% { transform: translate(46.5em, 19.66em); }
  64.5% { transform: translate(46.8em, 21.32em); }
  66.5% { transform: translate(46.6em, 22.85em); }
  68% { transform: translate(46.55em, 22.47em); }
  69.5% { transform: translate(46.5em, 22.85em); }
  90% { opacity: 1; }
  94% { opacity: 0; }
  100% { transform: translate(46.5em, 22.85em); opacity: 0; }
}

@keyframes ks-fb-tocenie {
  0% { transform: rotate(0deg); }
  34% { transform: rotate(2300deg); }
  42% { transform: rotate(3500deg); }
  54% { transform: rotate(4100deg); }
  61% { transform: rotate(5000deg); }
  68%, 100% { transform: rotate(5200deg); }
}

/* Tieň ostáva na zemi, keď lopta letí — vtedy bledne. */

@keyframes ks-fb-stin {
  0% { transform: translate(7.1em, 27.57em); opacity: 0; }
  3% { opacity: 0.5; }
  34% { transform: translate(23.1em, 26.81em); }
  42% { transform: translate(32.1em, 22.72em); }
  54% { transform: translate(36.6em, 22.98em); opacity: 0.5; }
  58.5% { transform: translate(42.3em, 23.04em); opacity: 0.22; }
  61% { transform: translate(45.6em, 23.11em); opacity: 0.18; }
  62.5% { transform: translate(46.5em, 23.04em); }
  66.5% { transform: translate(46.6em, 22.85em); opacity: 0.45; }
  69.5% { transform: translate(46.5em, 22.85em); }
  90% { opacity: 0.45; }
  94% { opacity: 0; }
  100% { transform: translate(46.5em, 22.85em); opacity: 0; }
}

/* Konfety zo strechy tribúny po góle. */

.ks-fb-konfeta {
  top: 7.6em;
  width: 0.34em;
  height: 0.2em;
  border-radius: 1px;
  opacity: 0.9;
  transform: translate(calc(var(--dx) * 0.5), 5em) rotate(200deg);
  animation: ks-fb-konfeta 12s linear infinite;
}

@keyframes ks-fb-konfeta {
  0%, 61% { opacity: 0; transform: translate(0, 0) rotate(0deg); }
  63%, 88% { opacity: 1; }
  94%, 100% { opacity: 0; transform: translate(var(--dx), 10.5em) rotate(720deg); }
}

/* Pilulky, ponuky otázok a popisky filtrov: tmavý poloprehľadný podklad,
   aby čitateľnosť nezávisela od toho, čo je práve za nimi. */

.discover-band.sky-theme-futbal .discover-chip,
.discover-band.sky-theme-futbal .map-btn.discover-chip {
  background: rgba(6, 18, 34, 0.6);
  border-color: rgba(255, 255, 255, 0.3);
  color: #fff;
}

.discover-band.sky-theme-futbal .map-btn.discover-chip.active {
  background: rgba(6, 18, 34, 0.8);
}

.discover-band.sky-theme-futbal .discover-filters label {
  color: rgba(255, 255, 255, 0.9);
}

/* Po otvorení odpovede scéna zhasne a pohyb sa pozastaví. */

.discover-band.sky-theme-futbal.is-rozhovor .ks-fb-box {
  opacity: 0;
  transition: opacity 0.4s ease;
}

.discover-band.sky-theme-futbal.is-rozhovor .ks-fb-box * {
  animation-play-state: paused;
}

/* Pod 1000 px vedľa textu nie je miesto: scéna ide pod ponuky otázok, nad
   hory. Pás dostane dole miesto na výšku scény (+ 4 px vzduchu a viac),
   vidno spodných 21 em — tabuľa, zástava, hľadisko a ihrisko; stožiare a strecha
   sa odrežú. */

@media (max-width: 999.98px) {
  .discover-band.sky-theme-futbal {
    --fb-mh: clamp(8.5rem, 24vw, 11rem);
  }
  .discover-band.sky-theme-futbal:not(.is-rozhovor) .discover-inner {
    padding-bottom: calc(var(--fb-mh) + 4.3rem);
  }
  .ks-fb-box {
    left: 0.75rem;
    right: 0.75rem;
    top: auto;
    bottom: 3.7rem;
    height: var(--fb-mh);
  }
  .ks-fb {
    font-size: 7px;
    font-size: min(2cqw, 4.76cqh);
  }
  /* Stožiare sú odrezané, kužele a žiara by boli len priesvitné plochy
     navyše, ktoré kompozítor prekresľuje pod pohybujúcimi sa hráčmi. */
  .ks-fb-kuzel,
  .ks-fb-ziara {
    display: none;
  }
}

/* Bez pohybu: statický obraz chvíle po góle — lopta v sieti, brankár na
   zemi, 2 : 0, ruky hore. Základné polohy sú nastavené vyššie. */

@media (prefers-reduced-motion: reduce) {
  .ks-fb-box .ks-fb,
  .ks-fb-box .ks-fb * {
    animation: none;
  }
}

@media (prefers-reduced-motion: reduce) {
  .ks-snow,
  .ks-confetti,
  .ks-firework,
  .ks-warmglow {
    animation: none;
  }
  .ks-firework { opacity: 0.85; }
}

/* ══ koniec sviatočných tém ════════════════════════════════════════════════ *//* ══ Ďalšie sviatočné témy ═══════════════════════════════════════════════════
   Voľby, maratón, hokej, olympijské medaily, veselá a smutná udalosť.
   Návrat: zmazať blok po značku „koniec ďalších tém".
   ═════════════════════════════════════════════════════════════════════════ *//* ── Voľby ───────────────────────────────────────────────────────────────── */

.discover-band.sky-theme-volby {
  background:
    radial-gradient(ellipse 120% 50% at 50% 116%, rgba(255, 255, 255, 0.2), transparent 62%),
    linear-gradient(180deg, #0e2038 0%, #17375e 30%, #24568a 60%, #4b83b4 82%, #9dc4dd 100%);
}

/* Tri stuhy v štátnych farbách — pokojné, žiadne konfety.
   Voľby nie sú oslava jednej strany. */

.ks-ribbon {
  position: absolute;
  left: -20%;
  width: 140%;
  height: 8%;
  filter: blur(22px);
  opacity: 0.5;
  animation: ks-ribbon-drift 26s ease-in-out infinite alternate;
}

.ks-ribbon--w { top: 20%; background: rgba(255, 255, 255, 0.8); animation-delay: 0s; }

.ks-ribbon--b { top: 30%; background: rgba(60, 120, 210, 0.75); animation-delay: 3s; }

.ks-ribbon--r { top: 40%; background: rgba(220, 60, 70, 0.7); animation-delay: 6s; }

@keyframes ks-ribbon-drift {
  from { transform: translate3d(-3%, 0, 0) skewY(-1.2deg); }
  to { transform: translate3d(3%, 2%, 0) skewY(1.2deg); }
}

/* ── Maratón mieru ───────────────────────────────────────────────────────────
   Košice, prvá októbrová nedeľa. Vrstvy kreslí `components/sky/MaratonScena.tsx`:
   silueta Hlavnej ulice s Dómom, diváci za páskou, cieľová brána, peletón
   a lístie. Tu je výhradne pohyb — všetko cez `transform` a `opacity`, nič
   iné, aby sa animovalo na kompozítore a nie v rozložení.

   Rozmery scény:
   --mm-h     výška „zeme“ od vrchu pásu — tesne nad vyhľadávacím poľom
   --mm-ciel  kde sa trať začína (cieľ) — za koncom nadpisu, aby bežci
              nebehali pod textom. Vo `vw`, nie v %, lebo tú istú hodnotu
              používa aj translateX bežca a tam by sa % vzťahovali na šírku
              figúry. Pás je cez celú šírku okna, takže vw sedí.
   Ťažisko scény je peletón — mesto, diváci a lístie sú kulisa.
   Premenné na bežcovi (z komponentu): --t trvanie trate, --d posun,
   --k dĺžka kroku, --p poloha pri vypnutom pohybe.
   ─────────────────────────────────────────────────────────────────────────── */

.discover-band.sky-theme-maraton {
  --mm-h: 56%;
  --mm-ciel: max(52vw, 46rem);
  /* Októbrové ráno. Celý gradient musí ostať tmavý (L ≤ 0,18): hore je
     nadpis a perex, dole pilulky filtrov a ponuky otázok — všetko biely text
     bez vlastného podkladu, takže 4,5 : 1 drží len tmavá obloha. Ranné
     svetlo robí opar a slnko v scéne, nie spodok gradientu (ten bol
     v prvej verzii krémový a pilulky mali 1,5 : 1). */
  background: linear-gradient(
    180deg,
    #0f2a4a 0%,
    #1f4f82 44%,
    #2f6392 58%,
    #3b6586 70%,
    #4a5f6e 82%,
    #5a5448 92%,
    #6a5a48 100%
  );
}

.discover-band.sky-night.sky-theme-maraton {
  background: linear-gradient(
    180deg,
    #040a18 0%,
    #0b1a36 40%,
    #15305a 62%,
    #2a4a74 78%,
    #4a4f62 90%,
    #6a5a48 100%
  );
}

.ks-mm {
  position: absolute;
  left: 0;
  right: 0;
  top: 0;
  height: var(--mm-h);
  pointer-events: none;
}

.ks-mm > *,
.ks-mm-trat > * {
  position: absolute;
}

/* Ranný opar nad mestom a nízke októbrové slnko za Dómom. V noci opar
   zhnedne od lámp a slnko zmizne. */

.ks-mm-opar {
  left: 0;
  right: 0;
  bottom: 0;
  height: 72%;
  background: radial-gradient(
    ellipse 46% 96% at 80% 100%,
    rgba(248, 224, 176, 0.8),
    rgba(248, 224, 176, 0.38) 42%,
    transparent 74%
  );
}

.ks-mm-slnko {
  right: 24%;
  bottom: 18%;
  width: 7.5rem;
  height: 7.5rem;
  border-radius: 50%;
  background: radial-gradient(
    circle,
    #fff8dc 0 16%,
    rgba(255, 228, 150, 0.92) 28%,
    rgba(255, 204, 110, 0.4) 52%,
    transparent 70%
  );
}

.ks-mm-ziara {
  right: 2%;
  bottom: 8%;
  width: 36rem;
  max-width: 100%;
  height: 60%;
  background: radial-gradient(ellipse 50% 70% at 60% 100%, rgba(255, 190, 110, 0.5), transparent 70%);
  opacity: 0;
  transition: opacity 1.2s ease;
}

.sky-night .ks-mm-slnko { opacity: 0; }

.sky-night .ks-mm-opar {
  background: radial-gradient(
    ellipse 46% 90% at 80% 100%,
    rgba(255, 176, 90, 0.42),
    rgba(255, 160, 70, 0.18) 42%,
    transparent 74%
  );
}

.sky-night .ks-mm-ziara { opacity: 1; }

/* Mesto: Dóm sv. Alžbety s Urbanovou vežou a kaplnkou, domy po bokoch.
   Je to kulisa — menšie a bledšie než bežci v popredí. */

.ks-mm-mesto {
  right: 0;
  bottom: 3.1rem;
  width: min(28rem, 100%);
  height: auto;
  color: #1b2436;
  opacity: 0.88;
}

.ks-mm-budovy { fill: #22304a; }

.ks-mm-okna {
  fill: rgba(255, 255, 255, 0.22);
  transition: fill 1.2s ease;
}

.sky-night .ks-mm-budovy { fill: #0d1527; }

.sky-night .ks-mm-mesto { opacity: 1; }

.sky-night .ks-mm-okna { fill: #ffd37a; }

/* Okná sú v druhom SVG a vlní sa opacity celého prvku — kompozítor to zvládne
   bez prekresľovania; animácia na <g> by prekresľovala celú siluetu. */

.sky-night .ks-mm-mesto--okna {
  will-change: opacity;
  animation: ks-mm-okna 7s ease-in-out infinite;
}

@keyframes ks-mm-okna {
  0%, 100% { opacity: 0.92; }
  50% { opacity: 0.74; }
}

/* Reflektory na stĺpoch brány — svietia len v noci. */

.ks-mm-reflektor {
  bottom: 1.3rem;
  width: 7rem;
  height: 5.6rem;
  background: linear-gradient(180deg, rgba(255, 236, 190, 0.5), rgba(255, 236, 190, 0));
  clip-path: polygon(46% 0, 54% 0, 92% 100%, 8% 100%);
  opacity: 0;
  transition: opacity 1.2s ease;
}

.ks-mm-reflektor--l { left: calc(var(--mm-ciel) - 2.9rem); }

.ks-mm-reflektor--p { left: calc(var(--mm-ciel) + 6.8rem); }

.sky-night .ks-mm-reflektor { opacity: 0.5; }

/* Trať: od cieľa po pravý okraj. */

.ks-mm-trat {
  position: absolute;
  left: var(--mm-ciel);
  right: 0;
  bottom: 0;
  height: 8rem;
}

/* Diváci v dvoch radoch za zábranou — opakovaný vzor, bez pohybu. */

.ks-mm-divaci {
  left: 0;
  right: 0;
  bottom: 1.3rem;
  height: 1.9rem;
  background-image: url("data:image/svg+xml,%3Csvg%20xmlns%3D%27http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%27%20viewBox%3D%270%200%20160%2036%27%3E%3Cg%20fill%3D%27%23263352%27%3E%3Ccircle%20cx%3D%276%27%20cy%3D%2711%27%20r%3D%273.1%27%2F%3E%3Crect%20x%3D%271.5%27%20y%3D%2714%27%20width%3D%279%27%20height%3D%2716%27%20rx%3D%273.5%27%2F%3E%3Ccircle%20cx%3D%2722%27%20cy%3D%2710%27%20r%3D%273.1%27%2F%3E%3Crect%20x%3D%2717.5%27%20y%3D%2713%27%20width%3D%279%27%20height%3D%2716%27%20rx%3D%273.5%27%2F%3E%3Crect%20x%3D%2726%27%20y%3D%272%27%20width%3D%272.4%27%20height%3D%2713%27%20rx%3D%271.2%27%2F%3E%3Ccircle%20cx%3D%2738%27%20cy%3D%2711.5%27%20r%3D%273.1%27%2F%3E%3Crect%20x%3D%2733.5%27%20y%3D%2714.5%27%20width%3D%279%27%20height%3D%2716%27%20rx%3D%273.5%27%2F%3E%3Ccircle%20cx%3D%2754%27%20cy%3D%2710.5%27%20r%3D%273.1%27%2F%3E%3Crect%20x%3D%2749.5%27%20y%3D%2713.5%27%20width%3D%279%27%20height%3D%2716%27%20rx%3D%273.5%27%2F%3E%3Ccircle%20cx%3D%2770%27%20cy%3D%2711%27%20r%3D%273.1%27%2F%3E%3Crect%20x%3D%2765.5%27%20y%3D%2714%27%20width%3D%279%27%20height%3D%2716%27%20rx%3D%273.5%27%2F%3E%3Ccircle%20cx%3D%2786%27%20cy%3D%2710%27%20r%3D%273.1%27%2F%3E%3Crect%20x%3D%2781.5%27%20y%3D%2713%27%20width%3D%279%27%20height%3D%2716%27%20rx%3D%273.5%27%2F%3E%3Ccircle%20cx%3D%27102%27%20cy%3D%2711.5%27%20r%3D%273.1%27%2F%3E%3Crect%20x%3D%2797.5%27%20y%3D%2714.5%27%20width%3D%279%27%20height%3D%2716%27%20rx%3D%273.5%27%2F%3E%3Crect%20x%3D%2794%27%20y%3D%273%27%20width%3D%272.4%27%20height%3D%2713%27%20rx%3D%271.2%27%2F%3E%3Ccircle%20cx%3D%27118%27%20cy%3D%2710.5%27%20r%3D%273.1%27%2F%3E%3Crect%20x%3D%27113.5%27%20y%3D%2713.5%27%20width%3D%279%27%20height%3D%2716%27%20rx%3D%273.5%27%2F%3E%3Ccircle%20cx%3D%27134%27%20cy%3D%2711%27%20r%3D%273.1%27%2F%3E%3Crect%20x%3D%27129.5%27%20y%3D%2714%27%20width%3D%279%27%20height%3D%2716%27%20rx%3D%273.5%27%2F%3E%3Ccircle%20cx%3D%27150%27%20cy%3D%2710%27%20r%3D%273.1%27%2F%3E%3Crect%20x%3D%27145.5%27%20y%3D%2713%27%20width%3D%279%27%20height%3D%2716%27%20rx%3D%273.5%27%2F%3E%3C%2Fg%3E%3Cg%20fill%3D%27%231b2436%27%3E%3Ccircle%20cx%3D%2714%27%20cy%3D%2717%27%20r%3D%273.6%27%2F%3E%3Crect%20x%3D%279%27%20y%3D%2720.5%27%20width%3D%2710%27%20height%3D%2716%27%20rx%3D%274%27%20fill%3D%27%23c1121f%27%2F%3E%3Ccircle%20cx%3D%2731%27%20cy%3D%2716%27%20r%3D%273.6%27%2F%3E%3Crect%20x%3D%2726%27%20y%3D%2719.5%27%20width%3D%2710%27%20height%3D%2716%27%20rx%3D%274%27%2F%3E%3Ccircle%20cx%3D%2747%27%20cy%3D%2717.5%27%20r%3D%273.6%27%2F%3E%3Crect%20x%3D%2742%27%20y%3D%2721%27%20width%3D%2710%27%20height%3D%2716%27%20rx%3D%274%27%20fill%3D%27%23f4d35e%27%2F%3E%3Crect%20x%3D%2751%27%20y%3D%276%27%20width%3D%272.6%27%20height%3D%2716%27%20rx%3D%271.3%27%2F%3E%3Ccircle%20cx%3D%2764%27%20cy%3D%2716.5%27%20r%3D%273.6%27%2F%3E%3Crect%20x%3D%2759%27%20y%3D%2720%27%20width%3D%2710%27%20height%3D%2716%27%20rx%3D%274%27%2F%3E%3Ccircle%20cx%3D%2780%27%20cy%3D%2717%27%20r%3D%273.6%27%2F%3E%3Crect%20x%3D%2775%27%20y%3D%2720.5%27%20width%3D%2710%27%20height%3D%2716%27%20rx%3D%274%27%20fill%3D%27%232a6f97%27%2F%3E%3Ccircle%20cx%3D%2797%27%20cy%3D%2716%27%20r%3D%273.6%27%2F%3E%3Crect%20x%3D%2792%27%20y%3D%2719.5%27%20width%3D%2710%27%20height%3D%2716%27%20rx%3D%274%27%2F%3E%3Ccircle%20cx%3D%27113%27%20cy%3D%2717.5%27%20r%3D%273.6%27%2F%3E%3Crect%20x%3D%27108%27%20y%3D%2721%27%20width%3D%2710%27%20height%3D%2716%27%20rx%3D%274%27%20fill%3D%27%23e9c46a%27%2F%3E%3Ccircle%20cx%3D%27129%27%20cy%3D%2716.5%27%20r%3D%273.6%27%2F%3E%3Crect%20x%3D%27124%27%20y%3D%2720%27%20width%3D%2710%27%20height%3D%2716%27%20rx%3D%274%27%2F%3E%3Crect%20x%3D%27133%27%20y%3D%275%27%20width%3D%272.6%27%20height%3D%2716%27%20rx%3D%271.3%27%2F%3E%3Ccircle%20cx%3D%27146%27%20cy%3D%2717%27%20r%3D%273.6%27%2F%3E%3Crect%20x%3D%27141%27%20y%3D%2720.5%27%20width%3D%2710%27%20height%3D%2716%27%20rx%3D%274%27%20fill%3D%27%23c1121f%27%2F%3E%3C%2Fg%3E%3C%2Fsvg%3E");
  background-size: auto 100%;
  background-repeat: repeat-x;
  opacity: 0.92;
}

/* Zástavky v rukách — kývu sa okolo päty žrde. */

.ks-mm-vlajka {
  bottom: 2.5rem;
  width: 1.1rem;
  height: 1.55rem;
  transform-origin: 15% 100%;
  animation: ks-mm-mavanie 1.5s ease-in-out infinite alternate;
}

.ks-mm-vlajka svg { width: 100%; height: 100%; display: block; }

@keyframes ks-mm-mavanie {
  from { transform: rotate(-14deg); }
  to { transform: rotate(12deg); }
}

/* Zábrana s červeno-bielou páskou a dláždená cesta. */

.ks-mm-paska {
  left: 0;
  right: 0;
  bottom: 1.3rem;
  height: 0.26rem;
  background: repeating-linear-gradient(90deg, #e63946 0 0.7rem, #fff 0.7rem 1.4rem);
  opacity: 0.9;
}

.ks-mm-cesta {
  left: 0;
  right: 0;
  bottom: 0;
  height: 1.3rem;
  background: linear-gradient(180deg, rgba(46, 40, 52, 0.52), rgba(46, 40, 52, 0.72));
  box-shadow: inset 0 2px 0 rgba(255, 255, 255, 0.28);
  transition: background 1.2s ease;
}

.sky-night .ks-mm-cesta {
  background: linear-gradient(180deg, rgba(150, 118, 78, 0.6), rgba(70, 58, 46, 0.85));
}

/* Cieľová čiara na ceste. */

.ks-mm-ciara {
  left: 5rem;
  bottom: 0;
  width: 0.55rem;
  height: 1.3rem;
  background: repeating-linear-gradient(180deg, #fff 0 0.28rem, #222 0.28rem 0.56rem);
  opacity: 0.9;
}

.ks-mm-brana {
  left: 0;
  bottom: 1.25rem;
  width: 11rem;
  height: 5.5rem;
}

/* Bežec: malý obal (len figúra) stojí pod bránou a posúva sa z pravého okraja
   okna (100vw − začiatok trate) do cieľa (0). Tam sa stratí — ďalší je už na
   trati. Obal je zámerne malý: prvá verzia mala obal cez celú trať a každý
   krok nôh prekresľoval vrstvu 650 × 60 px — na dvoch jadrách 6–18 fps. */

.ks-mm-bezec {
  left: 3.3rem;
  bottom: 0.1rem;
  height: 5rem;
  --h: 5rem;
  will-change: transform;
  animation: ks-mm-beh var(--t) linear infinite;
  animation-delay: var(--d);
}

@keyframes ks-mm-beh {
  0% { transform: translateX(calc(100vw - var(--mm-ciel))); opacity: 1; }
  93% { opacity: 1; }
  98% { opacity: 0; }
  100% { transform: translateX(0); opacity: 0; }
}

.ks-mm-bezec { width: calc(var(--h) * 0.75); }

/* Figúra: box 48 : 64, trup je statické SVG, končatiny sú HTML prvky
   položené na kĺby v percentách boxu (bedro 58 %/58 %, rameno 50 %/30 %). */

.ks-mm-figura {
  position: absolute;
  left: 0;
  bottom: 0;
  width: calc(var(--h) * 0.75);
  height: var(--h);
  color: #1b2436;
  animation: ks-mm-hup var(--k) ease-in-out infinite;
}

.ks-mm-telo {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  overflow: visible;
}

.ks-mm-noha,
.ks-mm-ruka,
.ks-mm-lytko,
.ks-mm-predlaktie {
  position: absolute;
  background: currentColor;
  border-radius: 999px;
}

/* Kmitanie trupu — dva dupy na jeden krokový cyklus — a mierny predklon. */

@keyframes ks-mm-hup {
  0%, 50%, 100% { transform: rotate(-7deg) translateY(0); }
  25%, 75% { transform: rotate(-7deg) translateY(-0.18rem); }
}

/* Nohy a ruky sa otáčajú okolo kĺbov; kladný uhol = dopredu (doľava). */

.ks-mm-noha {
  left: 54%;
  top: 56%;
  width: 9%;
  height: 19%;
  transform-origin: 50% 12%;
  animation: ks-mm-stehno var(--k) ease-in-out infinite;
}

.ks-mm-lytko {
  left: 0;
  top: 80%;
  width: 100%;
  height: 105%;
  transform-origin: 50% 10%;
  animation: ks-mm-lytko var(--k) ease-in-out infinite;
}

/* chodidlo — vpredu, teda vľavo od lýtka */

.ks-mm-lytko::after {
  content: '';
  position: absolute;
  left: -95%;
  bottom: -8%;
  width: 195%;
  height: 40%;
  background: currentColor;
  border-radius: 999px;
}

.ks-mm-ruka {
  left: 46%;
  top: 28%;
  width: 8%;
  height: 15%;
  transform-origin: 50% 12%;
  animation: ks-mm-ruka var(--k) ease-in-out infinite;
}

/* predlaktie zohnuté dopredu a hore — pevný uhol, hýbe sa celé rameno */

.ks-mm-predlaktie {
  left: 0;
  top: 78%;
  width: 100%;
  height: 92%;
  transform-origin: 50% 10%;
  transform: rotate(100deg);
}

.ks-mm-noha--z,
.ks-mm-ruka--z {
  opacity: 0.72;
}

.ks-mm-noha--z,
.ks-mm-noha--z .ks-mm-lytko,
.ks-mm-ruka--p {
  animation-delay: calc(var(--k) / -2);
}

@keyframes ks-mm-stehno {
  0% { transform: rotate(40deg); }
  25% { transform: rotate(6deg); }
  50% { transform: rotate(-34deg); }
  75% { transform: rotate(-2deg); }
  100% { transform: rotate(40deg); }
}

@keyframes ks-mm-lytko {
  0% { transform: rotate(10deg); }
  25% { transform: rotate(-14deg); }
  50% { transform: rotate(-72deg); }
  75% { transform: rotate(-64deg); }
  100% { transform: rotate(10deg); }
}

@keyframes ks-mm-ruka {
  0% { transform: rotate(-38deg); }
  50% { transform: rotate(34deg); }
  100% { transform: rotate(-38deg); }
}

/* Konfety padajú spod transparentu na cestu. */

.ks-mm-konfeta {
  bottom: 5.9rem;
  width: 0.34rem;
  height: 0.22rem;
  border-radius: 1px;
  will-change: transform;
  animation: ks-mm-konfeta 3s linear infinite;
}

.ks-mm-konfeta:nth-child(4n) { background: #ffd60a; }

.ks-mm-konfeta:nth-child(4n+1) { background: #2b7bd3; }

.ks-mm-konfeta:nth-child(4n+2) { background: #fff; }

.ks-mm-konfeta:nth-child(4n+3) { background: #e63946; }

@keyframes ks-mm-konfeta {
  0% { transform: translate3d(0, 0, 0) rotate(0deg); opacity: 1; }
  80% { opacity: 1; }
  100% { transform: translate3d(0.7rem, var(--mm-pad, 5.6rem), 0) rotate(560deg); opacity: 0; }
}

/* Lístie cez celú oblohu: vonkajší prvok padá, vnútorný sa kolíše a otáča. */

.ks-mm-listie {
  position: absolute;
  inset: 0;
  pointer-events: none;
}

.ks-mm-list {
  position: absolute;
  top: -2rem;
  aspect-ratio: 1;
  opacity: 0.88;
  will-change: transform;
  animation: ks-mm-pad 18s linear infinite;
}

.ks-mm-list svg {
  width: 100%;
  height: 100%;
  display: block;
  animation: ks-mm-kolisanie 2.6s ease-in-out infinite alternate;
}

@keyframes ks-mm-pad {
  from { transform: translate3d(0, 0, 0); }
  to { transform: translate3d(-9vw, 108vh, 0); }
}

@keyframes ks-mm-kolisanie {
  from { transform: translateX(-0.6rem) rotate(-50deg); }
  to { transform: translateX(0.6rem) rotate(60deg); }
}

/* Mobil: text zaberá celú šírku, takže scéna ide pod vyhľadávacie pole —
   na „zem“ nad ponukami otázok (9 rem od spodku pásu), bežci do medzery medzi
   filtrami a ponukami, Dóm za filtrami. Trať sa začína za pilulkou „Filtre“,
   aby ju brána nezakrývala. Blok musí byť až za základnými pravidlami —
   rovnaká špecificita, rozhoduje poradie. *//* Pilulky, ponuky otázok a popisky filtrov majú v páse priehľadný podklad
   a biely text — pri tejto téme dostanú tmavý poloprehľadný podklad, aby
   čitateľnosť nezávisela od toho, čo práve prebieha za nimi. */

.discover-band.sky-theme-maraton .discover-chip,
.discover-band.sky-theme-maraton .map-btn.discover-chip {
  background: rgba(8, 20, 40, 0.5);
  border-color: rgba(255, 255, 255, 0.3);
  color: #fff;
}

.discover-band.sky-theme-maraton .map-btn.discover-chip.active {
  background: rgba(8, 20, 40, 0.7);
}

.discover-band.sky-theme-maraton .discover-filters label {
  color: rgba(255, 255, 255, 0.86);
}

/* Po odoslaní otázky pás vyplní panel odpovedí a scéna by za ním len
   prebleskovala — zhasne. */

.discover-band.sky-theme-maraton.is-rozhovor .ks-mm,
.discover-band.sky-theme-maraton.is-rozhovor .ks-mm-listie {
  opacity: 0;
  transition: opacity 0.4s ease;
}

/* Zhasnutá scéna nemá čo počítať — pohyb sa pozastaví. */

.discover-band.sky-theme-maraton.is-rozhovor .ks-mm *,
.discover-band.sky-theme-maraton.is-rozhovor .ks-mm-listie * {
  animation-play-state: paused;
}

@media (min-width: 1600px) {
  .ks-mm-mesto { width: min(34rem, 100%); bottom: 3.5rem; }
  .ks-mm-trat { height: 9.5rem; }
  .ks-mm-divaci { bottom: 1.5rem; height: 2.3rem; }
  .ks-mm-vlajka { bottom: 3rem; width: 1.3rem; height: 1.8rem; }
  .ks-mm-paska { bottom: 1.5rem; }
  .ks-mm-cesta { height: 1.5rem; }
  .ks-mm-ciara { left: 6rem; height: 1.5rem; }
  .ks-mm-brana { width: 13rem; height: 6.5rem; bottom: 1.45rem; }
  .ks-mm-reflektor { width: 8rem; height: 6.6rem; bottom: 1.5rem; }
  .ks-mm-reflektor--l { left: calc(var(--mm-ciel) - 3.5rem); }
  .ks-mm-reflektor--p { left: calc(var(--mm-ciel) + 8rem); }
  .ks-mm-konfeta { bottom: 6.9rem; --mm-pad: 6.5rem; }
  .ks-mm-bezec { left: 4rem; --h: 6rem; height: 6rem; }
}

@media (max-width: 767.98px) {
  .discover-band.sky-theme-maraton {
    --mm-h: calc(100% - 9rem);
    --mm-ciel: 6rem;
  }
  .ks-mm-mesto { width: 72%; bottom: 2.6rem; }
  /* Slnko by na mobile svietilo za pilulkami filtrov — kontrast textu. */
  .ks-mm-slnko { display: none; }
  .ks-mm-opar {
    height: 40%;
    background: radial-gradient(
      ellipse 60% 100% at 70% 100%,
      rgba(248, 224, 176, 0.3),
      rgba(248, 224, 176, 0.12) 42%,
      transparent 74%
    );
  }
  .ks-mm-divaci { bottom: 1.1rem; height: 1.5rem; }
  /* Zástavky aj s mávaním (±14°) nesmú siahnuť do pilulky nad nimi. */
  .ks-mm-vlajka { bottom: 1.7rem; width: 0.75rem; height: 1.05rem; }
  .ks-mm-paska { bottom: 1.1rem; }
  .ks-mm-cesta { height: 1.1rem; }
  .ks-mm-ciara { height: 1.1rem; }
  /* Medzi pilulkami filtrov a hlavami bežcov musí ostať medzera. */
  .ks-mm-brana { width: 4rem; height: 2rem; bottom: 1rem; }
  .ks-mm-reflektor { width: 3.6rem; height: 2.4rem; bottom: 1.1rem; }
  .ks-mm-reflektor--l { left: calc(var(--mm-ciel) - 1.6rem); }
  .ks-mm-reflektor--p { left: calc(var(--mm-ciel) + 2rem); }
  .ks-mm-ciara { left: 1.8rem; }
  .ks-mm-konfeta { bottom: 2.6rem; --mm-pad: 2.2rem; }
  .ks-mm-bezec { left: 1.2rem; --h: 2.7rem; height: 2.7rem; }
}

/* Bez pohybu: statická scéna, bežci rozostavení po trati. */

@media (prefers-reduced-motion: reduce) {
  .ks-mm-bezec,
  .ks-mm-figura,
  .ks-mm-noha,
  .ks-mm-lytko,
  .ks-mm-ruka,
  .ks-mm-vlajka,
  .ks-mm-konfeta,
  .ks-mm-list,
  .ks-mm-list svg,
  .sky-night .ks-mm-mesto--okna {
    animation: none;
  }
  /* Rozsah trate bez obalu bežca (left + šírka figúry, najviac 8,5 rem
     na 1920+) a rezervy na posuvník — inak by krajný bežec trčal z okna. */
  .ks-mm-bezec { transform: translateX(calc(var(--p) * (100vw - var(--mm-ciel) - 10rem))); }
  .ks-mm-figura { transform: rotate(-7deg); }
  .ks-mm-noha--p { transform: rotate(30deg); }
  .ks-mm-noha--z { transform: rotate(-28deg); }
  .ks-mm-noha--z .ks-mm-lytko { transform: rotate(-60deg); }
  .ks-mm-ruka--p { transform: rotate(28deg); }
  .ks-mm-ruka--z { transform: rotate(-30deg); }
  .ks-mm-konfeta { opacity: 0; }
  .ks-mm-list { top: calc(12% + var(--i, 0) * 6.5%); }
}

/* ── Hokej ───────────────────────────────────────────────────────────────── */

.discover-band.sky-theme-hokej {
  background:
    radial-gradient(ellipse 120% 52% at 50% 114%, rgba(210, 245, 255, 0.4), transparent 60%),
    linear-gradient(180deg, #041a2c 0%, #063049 28%, #0a5077 56%, #2b87ad 80%, #9fd8e8 100%);
}

.ks-ice {
  position: absolute;
  inset: -10% 0 0;
  background-repeat: repeat;
}

.ks-ice--a {
  background-image: url("data:image/svg+xml,%3Csvg%20xmlns%3D%27http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%27%20viewBox%3D%270%200%20600%20600%27%3E%3Cg%20fill%3D%27%23eaf6ff%27%3E%3Crect%20x%3D%2744.1%27%20y%3D%27356.6%27%20width%3D%272.6%27%20height%3D%276.2%27%20rx%3D%271.3%27%20opacity%3D%271.0%27%20transform%3D%27rotate%28124.0%2044.1%20356.6%29%27%2F%3E%3Crect%20x%3D%27224.6%27%20y%3D%27443.8%27%20width%3D%273.4%27%20height%3D%278.2%27%20rx%3D%271.7%27%20opacity%3D%270.86%27%20transform%3D%27rotate%28216.0%20224.6%20443.8%29%27%2F%3E%3Crect%20x%3D%27421.7%27%20y%3D%27205.7%27%20width%3D%272.8%27%20height%3D%276.7%27%20rx%3D%271.4%27%20opacity%3D%270.72%27%20transform%3D%27rotate%28228.0%20421.7%20205.7%29%27%2F%3E%3Crect%20x%3D%27133.2%27%20y%3D%27485.4%27%20width%3D%271.8%27%20height%3D%274.3%27%20rx%3D%270.9%27%20opacity%3D%270.75%27%20transform%3D%27rotate%28278.0%20133.2%20485.4%29%27%2F%3E%3Crect%20x%3D%27190.6%27%20y%3D%2710.7%27%20width%3D%272.2%27%20height%3D%275.3%27%20rx%3D%271.1%27%20opacity%3D%270.74%27%20transform%3D%27rotate%2891.0%20190.6%2010.7%29%27%2F%3E%3Crect%20x%3D%27132.4%27%20y%3D%27511.0%27%20width%3D%272.5%27%20height%3D%276.0%27%20rx%3D%271.2%27%20opacity%3D%270.84%27%20transform%3D%27rotate%28126.0%20132.4%20511.0%29%27%2F%3E%3Crect%20x%3D%27110.9%27%20y%3D%27565.4%27%20width%3D%271.9%27%20height%3D%274.6%27%20rx%3D%270.9%27%20opacity%3D%270.96%27%20transform%3D%27rotate%28206.0%20110.9%20565.4%29%27%2F%3E%3Crect%20x%3D%27571.9%27%20y%3D%27130.0%27%20width%3D%272.3%27%20height%3D%275.5%27%20rx%3D%271.1%27%20opacity%3D%270.57%27%20transform%3D%27rotate%28151.0%20571.9%20130.0%29%27%2F%3E%3Crect%20x%3D%27510.1%27%20y%3D%2787.9%27%20width%3D%271.7%27%20height%3D%274.1%27%20rx%3D%270.8%27%20opacity%3D%270.58%27%20transform%3D%27rotate%28159.0%20510.1%2087.9%29%27%2F%3E%3Crect%20x%3D%27397.8%27%20y%3D%27292.8%27%20width%3D%272.0%27%20height%3D%274.8%27%20rx%3D%271.0%27%20opacity%3D%270.94%27%20transform%3D%27rotate%28337.0%20397.8%20292.8%29%27%2F%3E%3Crect%20x%3D%27472.1%27%20y%3D%27299.6%27%20width%3D%272.4%27%20height%3D%275.8%27%20rx%3D%271.2%27%20opacity%3D%270.98%27%20transform%3D%27rotate%2829.0%20472.1%20299.6%29%27%2F%3E%3Crect%20x%3D%27588.2%27%20y%3D%2733.5%27%20width%3D%272.3%27%20height%3D%275.5%27%20rx%3D%271.1%27%20opacity%3D%270.69%27%20transform%3D%27rotate%28111.0%20588.2%2033.5%29%27%2F%3E%3Crect%20x%3D%27595.6%27%20y%3D%27114.6%27%20width%3D%273.2%27%20height%3D%277.7%27%20rx%3D%271.6%27%20opacity%3D%270.92%27%20transform%3D%27rotate%2896.0%20595.6%20114.6%29%27%2F%3E%3Crect%20x%3D%2788.1%27%20y%3D%2760.3%27%20width%3D%272.8%27%20height%3D%276.7%27%20rx%3D%271.4%27%20opacity%3D%270.99%27%20transform%3D%27rotate%285.0%2088.1%2060.3%29%27%2F%3E%3Crect%20x%3D%27122.3%27%20y%3D%27347.2%27%20width%3D%272.8%27%20height%3D%276.7%27%20rx%3D%271.4%27%20opacity%3D%270.69%27%20transform%3D%27rotate%28225.0%20122.3%20347.2%29%27%2F%3E%3Crect%20x%3D%27449.9%27%20y%3D%2773.0%27%20width%3D%272.7%27%20height%3D%276.5%27%20rx%3D%271.4%27%20opacity%3D%270.92%27%20transform%3D%27rotate%2886.0%20449.9%2073.0%29%27%2F%3E%3Crect%20x%3D%27485.7%27%20y%3D%27463.1%27%20width%3D%271.9%27%20height%3D%274.6%27%20rx%3D%270.9%27%20opacity%3D%270.79%27%20transform%3D%27rotate%28179.0%20485.7%20463.1%29%27%2F%3E%3Crect%20x%3D%27527.6%27%20y%3D%27356.8%27%20width%3D%272.9%27%20height%3D%277.0%27%20rx%3D%271.4%27%20opacity%3D%270.9%27%20transform%3D%27rotate%28348.0%20527.6%20356.8%29%27%2F%3E%3Crect%20x%3D%27180.1%27%20y%3D%27288.3%27%20width%3D%273.1%27%20height%3D%277.4%27%20rx%3D%271.6%27%20opacity%3D%270.63%27%20transform%3D%27rotate%28100.0%20180.1%20288.3%29%27%2F%3E%3Crect%20x%3D%27401.0%27%20y%3D%27100.2%27%20width%3D%273.1%27%20height%3D%277.4%27%20rx%3D%271.6%27%20opacity%3D%270.78%27%20transform%3D%27rotate%28147.0%20401.0%20100.2%29%27%2F%3E%3Crect%20x%3D%27499.0%27%20y%3D%27211.8%27%20width%3D%272.6%27%20height%3D%276.2%27%20rx%3D%271.3%27%20opacity%3D%270.59%27%20transform%3D%27rotate%2868.0%20499.0%20211.8%29%27%2F%3E%3Crect%20x%3D%27218.5%27%20y%3D%2721.1%27%20width%3D%272.2%27%20height%3D%275.3%27%20rx%3D%271.1%27%20opacity%3D%270.89%27%20transform%3D%27rotate%28221.0%20218.5%2021.1%29%27%2F%3E%3Crect%20x%3D%2718.2%27%20y%3D%27212.7%27%20width%3D%271.8%27%20height%3D%274.3%27%20rx%3D%270.9%27%20opacity%3D%270.81%27%20transform%3D%27rotate%2823.0%2018.2%20212.7%29%27%2F%3E%3Crect%20x%3D%2724.7%27%20y%3D%2718.8%27%20width%3D%272.7%27%20height%3D%276.5%27%20rx%3D%271.4%27%20opacity%3D%270.83%27%20transform%3D%27rotate%28257.0%2024.7%2018.8%29%27%2F%3E%3Crect%20x%3D%27191.1%27%20y%3D%27212.7%27%20width%3D%272.6%27%20height%3D%276.2%27%20rx%3D%271.3%27%20opacity%3D%270.56%27%20transform%3D%27rotate%28290.0%20191.1%20212.7%29%27%2F%3E%3Crect%20x%3D%27113.9%27%20y%3D%2768.6%27%20width%3D%272.9%27%20height%3D%277.0%27%20rx%3D%271.4%27%20opacity%3D%270.67%27%20transform%3D%27rotate%28138.0%20113.9%2068.6%29%27%2F%3E%3Crect%20x%3D%2743.4%27%20y%3D%27466.9%27%20width%3D%272.7%27%20height%3D%276.5%27%20rx%3D%271.4%27%20opacity%3D%270.66%27%20transform%3D%27rotate%2855.0%2043.4%20466.9%29%27%2F%3E%3Crect%20x%3D%2788.8%27%20y%3D%27592.2%27%20width%3D%272.6%27%20height%3D%276.2%27%20rx%3D%271.3%27%20opacity%3D%270.86%27%20transform%3D%27rotate%28264.0%2088.8%20592.2%29%27%2F%3E%3Crect%20x%3D%27526.9%27%20y%3D%27512.0%27%20width%3D%272.8%27%20height%3D%276.7%27%20rx%3D%271.4%27%20opacity%3D%270.8%27%20transform%3D%27rotate%2851.0%20526.9%20512.0%29%27%2F%3E%3Crect%20x%3D%27596.6%27%20y%3D%27146.6%27%20width%3D%273.1%27%20height%3D%277.4%27%20rx%3D%271.6%27%20opacity%3D%270.86%27%20transform%3D%27rotate%2840.0%20596.6%20146.6%29%27%2F%3E%3C%2Fg%3E%3C%2Fsvg%3E");
  background-size: 600px 600px;
  opacity: 0.8;
  animation: ks-icefall 9s linear infinite;
}

.ks-ice--b {
  background-image: url("data:image/svg+xml,%3Csvg%20xmlns%3D%27http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%27%20viewBox%3D%270%200%20460%20460%27%3E%3Cg%20fill%3D%27%23c9e6ff%27%3E%3Crect%20x%3D%27128.7%27%20y%3D%27231.0%27%20width%3D%272.7%27%20height%3D%276.5%27%20rx%3D%271.4%27%20opacity%3D%270.8%27%20transform%3D%27rotate%28166.0%20128.7%20231.0%29%27%2F%3E%3Crect%20x%3D%27224.1%27%20y%3D%27238.2%27%20width%3D%272.1%27%20height%3D%275.0%27%20rx%3D%271.1%27%20opacity%3D%270.64%27%20transform%3D%27rotate%2840.0%20224.1%20238.2%29%27%2F%3E%3Crect%20x%3D%27358.7%27%20y%3D%2711.7%27%20width%3D%272.6%27%20height%3D%276.2%27%20rx%3D%271.3%27%20opacity%3D%270.71%27%20transform%3D%27rotate%28152.0%20358.7%2011.7%29%27%2F%3E%3Crect%20x%3D%27199.4%27%20y%3D%27393.5%27%20width%3D%272.0%27%20height%3D%274.8%27%20rx%3D%271.0%27%20opacity%3D%270.97%27%20transform%3D%27rotate%28205.0%20199.4%20393.5%29%27%2F%3E%3Crect%20x%3D%27402.5%27%20y%3D%27393.6%27%20width%3D%273.2%27%20height%3D%277.7%27%20rx%3D%271.6%27%20opacity%3D%270.76%27%20transform%3D%27rotate%28287.0%20402.5%20393.6%29%27%2F%3E%3Crect%20x%3D%27437.4%27%20y%3D%27105.3%27%20width%3D%272.1%27%20height%3D%275.0%27%20rx%3D%271.1%27%20opacity%3D%270.65%27%20transform%3D%27rotate%28289.0%20437.4%20105.3%29%27%2F%3E%3Crect%20x%3D%27126.2%27%20y%3D%2722.5%27%20width%3D%271.9%27%20height%3D%274.6%27%20rx%3D%270.9%27%20opacity%3D%270.89%27%20transform%3D%27rotate%2885.0%20126.2%2022.5%29%27%2F%3E%3Crect%20x%3D%27282.2%27%20y%3D%2738.8%27%20width%3D%273.3%27%20height%3D%277.9%27%20rx%3D%271.6%27%20opacity%3D%270.9%27%20transform%3D%27rotate%2829.0%20282.2%2038.8%29%27%2F%3E%3Crect%20x%3D%2760.7%27%20y%3D%2765.6%27%20width%3D%272.5%27%20height%3D%276.0%27%20rx%3D%271.2%27%20opacity%3D%270.76%27%20transform%3D%27rotate%28276.0%2060.7%2065.6%29%27%2F%3E%3Crect%20x%3D%27326.0%27%20y%3D%27111.2%27%20width%3D%272.3%27%20height%3D%275.5%27%20rx%3D%271.1%27%20opacity%3D%270.94%27%20transform%3D%27rotate%2873.0%20326.0%20111.2%29%27%2F%3E%3Crect%20x%3D%27369.5%27%20y%3D%27180.7%27%20width%3D%271.8%27%20height%3D%274.3%27%20rx%3D%270.9%27%20opacity%3D%270.58%27%20transform%3D%27rotate%28259.0%20369.5%20180.7%29%27%2F%3E%3Crect%20x%3D%27188.8%27%20y%3D%27157.9%27%20width%3D%273.3%27%20height%3D%277.9%27%20rx%3D%271.6%27%20opacity%3D%270.77%27%20transform%3D%27rotate%2849.0%20188.8%20157.9%29%27%2F%3E%3Crect%20x%3D%27373.8%27%20y%3D%27252.2%27%20width%3D%272.1%27%20height%3D%275.0%27%20rx%3D%271.1%27%20opacity%3D%270.69%27%20transform%3D%27rotate%28139.0%20373.8%20252.2%29%27%2F%3E%3Crect%20x%3D%27187.5%27%20y%3D%27224.7%27%20width%3D%273.3%27%20height%3D%277.9%27%20rx%3D%271.6%27%20opacity%3D%270.89%27%20transform%3D%27rotate%2834.0%20187.5%20224.7%29%27%2F%3E%3Crect%20x%3D%27412.8%27%20y%3D%27246.1%27%20width%3D%272.0%27%20height%3D%274.8%27%20rx%3D%271.0%27%20opacity%3D%270.8%27%20transform%3D%27rotate%2833.0%20412.8%20246.1%29%27%2F%3E%3Crect%20x%3D%2720.7%27%20y%3D%2750.3%27%20width%3D%272.9%27%20height%3D%277.0%27%20rx%3D%271.4%27%20opacity%3D%270.88%27%20transform%3D%27rotate%2871.0%2020.7%2050.3%29%27%2F%3E%3Crect%20x%3D%27358.1%27%20y%3D%27191.0%27%20width%3D%272.7%27%20height%3D%276.5%27%20rx%3D%271.4%27%20opacity%3D%270.86%27%20transform%3D%27rotate%28213.0%20358.1%20191.0%29%27%2F%3E%3Crect%20x%3D%27271.7%27%20y%3D%27296.1%27%20width%3D%272.0%27%20height%3D%274.8%27%20rx%3D%271.0%27%20opacity%3D%270.62%27%20transform%3D%27rotate%28358.0%20271.7%20296.1%29%27%2F%3E%3Crect%20x%3D%2761.6%27%20y%3D%27109.7%27%20width%3D%273.4%27%20height%3D%278.2%27%20rx%3D%271.7%27%20opacity%3D%270.92%27%20transform%3D%27rotate%28352.0%2061.6%20109.7%29%27%2F%3E%3Crect%20x%3D%2762.0%27%20y%3D%27176.5%27%20width%3D%272.3%27%20height%3D%275.5%27%20rx%3D%271.1%27%20opacity%3D%270.89%27%20transform%3D%27rotate%2840.0%2062.0%20176.5%29%27%2F%3E%3C%2Fg%3E%3C%2Fsvg%3E");
  background-size: 460px 460px;
  opacity: 0.5;
  animation: ks-icefall 15s linear infinite;
}

@keyframes ks-icefall {
  from { transform: translate3d(0, -12%, 0); }
  to { transform: translate3d(-14%, 100%, 0); }
}

.ks-rinkglow {
  position: absolute;
  left: 0;
  right: 0;
  bottom: -8%;
  height: 42%;
  background: radial-gradient(ellipse 80% 100% at 50% 100%, rgba(190, 240, 255, 0.35), transparent 72%);
  animation: ks-glow-pulse 6s ease-in-out infinite;
}

/* ── Olympijské medaily ──────────────────────────────────────────────────── */

.ks-theme--medal { --ks-medal: #ffd76a; --ks-medal-soft: rgba(255, 215, 106, 0.34); }

.ks-theme--olympiada-striebro { --ks-medal: #dbe4ee; --ks-medal-soft: rgba(219, 228, 238, 0.34); }

.ks-theme--olympiada-bronz { --ks-medal: #d9915a; --ks-medal-soft: rgba(217, 145, 90, 0.32); }

.discover-band.sky-theme-olympiada-zlato,
.discover-band.sky-theme-olympiada-striebro,
.discover-band.sky-theme-olympiada-bronz {
  background:
    radial-gradient(ellipse 120% 55% at 50% 118%, rgba(120, 96, 40, 0.3), transparent 62%),
    linear-gradient(180deg, #060812 0%, #0d1226 26%, #16203f 54%, #24325c 78%, #3b4c7e 100%);
}

.ks-medalglow {
  position: absolute;
  left: 0;
  right: 0;
  bottom: -10%;
  height: 55%;
  background: radial-gradient(ellipse 70% 100% at 50% 100%, var(--ks-medal-soft), transparent 72%);
  animation: ks-glow-pulse 7s ease-in-out infinite;
}

/* Iskry stúpajú od obzoru — opak padajúcich konfiet. */

.ks-spark {
  position: absolute;
  bottom: -4%;
  width: 5px;
  height: 5px;
  border-radius: 50%;
  background: var(--ks-medal);
  box-shadow: 0 0 10px var(--ks-medal);
  animation: ks-spark-rise 8s ease-out infinite;
}

@keyframes ks-spark-rise {
  0% { transform: translate3d(0, 0, 0) scale(0.5); opacity: 0; }
  12% { opacity: 1; }
  100% { transform: translate3d(3vw, -78vh, 0) scale(1.1); opacity: 0; }
}

/* ── Veselá udalosť ──────────────────────────────────────────────────────── */

.discover-band.sky-theme-vesela {
  background:
    radial-gradient(ellipse 110% 50% at 52% 112%, rgba(255, 240, 190, 0.42), transparent 58%),
    linear-gradient(180deg, #123a6b 0%, #1d68a8 28%, #3f9bcd 58%, #86cfe4 82%, #cdf0f6 100%);
}

.ks-theme--vesela .ks-confetti:nth-child(5n) { background: #ff5d73; }

.ks-theme--vesela .ks-confetti:nth-child(5n+1) { background: #ffd166; }

.ks-theme--vesela .ks-confetti:nth-child(5n+2) { background: #06d6a0; }

.ks-theme--vesela .ks-confetti:nth-child(5n+3) { background: #7b8cff; }

.ks-theme--vesela .ks-confetti:nth-child(5n+4) { background: #ffffff; }

.ks-balloon {
  position: absolute;
  bottom: -14%;
  width: 26px;
  height: 32px;
  border-radius: 50% 50% 48% 48%;
  opacity: 0.9;
  animation: ks-balloon-rise 17s linear infinite;
}

.ks-balloon:nth-of-type(3n) { background: #ff5d73; }

.ks-balloon:nth-of-type(3n+1) { background: #ffd166; }

.ks-balloon:nth-of-type(3n+2) { background: #7b8cff; }

/* Šnúrka pod balónom. */

.ks-balloon::after {
  content: '';
  position: absolute;
  left: 50%;
  top: 100%;
  width: 1px;
  height: 18px;
  background: rgba(255, 255, 255, 0.5);
}

@keyframes ks-balloon-rise {
  0% { transform: translate3d(0, 0, 0); opacity: 0; }
  10% { opacity: 0.9; }
  90% { opacity: 0.9; }
  100% { transform: translate3d(4vw, -125vh, 0); opacity: 0; }
}

/* ── Smutná udalosť ──────────────────────────────────────────────────────── */

.discover-band.sky-theme-smutna {
  background:
    radial-gradient(ellipse 120% 50% at 50% 116%, rgba(255, 214, 160, 0.14), transparent 60%),
    linear-gradient(180deg, #14181f 0%, #202730 30%, #2f3944 58%, #46525f 80%, #6b7885 100%);
}

/* Oblaky aj slnko stlmíme — nič nemá pôsobiť veselo. */

.discover-band.sky-theme-smutna::after { animation: none; opacity: 0; }

.discover-band.sky-theme-smutna::before { opacity: 0.05; }

.ks-rain {
  position: absolute;
  inset: -10% 0 0;
  background-image: url("data:image/svg+xml,%3Csvg%20xmlns%3D%27http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%27%20viewBox%3D%270%200%20600%20600%27%3E%3Cg%20fill%3D%27%23c8d4e2%27%3E%3Crect%20x%3D%27515.8%27%20y%3D%27309.2%27%20width%3D%271.4%27%20height%3D%2715.4%27%20rx%3D%27.7%27%20opacity%3D%270.29%27%2F%3E%3Crect%20x%3D%27185.5%27%20y%3D%27525.2%27%20width%3D%271.4%27%20height%3D%2725.2%27%20rx%3D%27.7%27%20opacity%3D%270.36%27%2F%3E%3Crect%20x%3D%27265.0%27%20y%3D%27274.0%27%20width%3D%271.4%27%20height%3D%2725.1%27%20rx%3D%27.7%27%20opacity%3D%270.38%27%2F%3E%3Crect%20x%3D%27188.0%27%20y%3D%27301.6%27%20width%3D%271.4%27%20height%3D%2714.0%27%20rx%3D%27.7%27%20opacity%3D%270.4%27%2F%3E%3Crect%20x%3D%2776.3%27%20y%3D%27493.5%27%20width%3D%271.4%27%20height%3D%2719.3%27%20rx%3D%27.7%27%20opacity%3D%270.54%27%2F%3E%3Crect%20x%3D%27252.0%27%20y%3D%27161.5%27%20width%3D%271.4%27%20height%3D%2725.9%27%20rx%3D%27.7%27%20opacity%3D%270.51%27%2F%3E%3Crect%20x%3D%270.0%27%20y%3D%27589.5%27%20width%3D%271.4%27%20height%3D%2724.3%27%20rx%3D%27.7%27%20opacity%3D%270.53%27%2F%3E%3Crect%20x%3D%27340.1%27%20y%3D%27441.8%27%20width%3D%271.4%27%20height%3D%2722.6%27%20rx%3D%27.7%27%20opacity%3D%270.35%27%2F%3E%3Crect%20x%3D%2712.3%27%20y%3D%27414.2%27%20width%3D%271.4%27%20height%3D%2725.5%27%20rx%3D%27.7%27%20opacity%3D%270.28%27%2F%3E%3Crect%20x%3D%27415.7%27%20y%3D%27296.6%27%20width%3D%271.4%27%20height%3D%2718.8%27%20rx%3D%27.7%27%20opacity%3D%270.46%27%2F%3E%3Crect%20x%3D%27359.2%27%20y%3D%27468.0%27%20width%3D%271.4%27%20height%3D%2719.2%27%20rx%3D%27.7%27%20opacity%3D%270.39%27%2F%3E%3Crect%20x%3D%27374.2%27%20y%3D%27136.9%27%20width%3D%271.4%27%20height%3D%2725.0%27%20rx%3D%27.7%27%20opacity%3D%270.27%27%2F%3E%3Crect%20x%3D%27502.7%27%20y%3D%2775.8%27%20width%3D%271.4%27%20height%3D%2715.9%27%20rx%3D%27.7%27%20opacity%3D%270.55%27%2F%3E%3Crect%20x%3D%27396.2%27%20y%3D%27172.7%27%20width%3D%271.4%27%20height%3D%2722.3%27%20rx%3D%27.7%27%20opacity%3D%270.34%27%2F%3E%3Crect%20x%3D%27431.0%27%20y%3D%27191.7%27%20width%3D%271.4%27%20height%3D%2718.5%27%20rx%3D%27.7%27%20opacity%3D%270.28%27%2F%3E%3Crect%20x%3D%27340.4%27%20y%3D%27104.1%27%20width%3D%271.4%27%20height%3D%2720.4%27%20rx%3D%27.7%27%20opacity%3D%270.37%27%2F%3E%3Crect%20x%3D%27429.9%27%20y%3D%27136.6%27%20width%3D%271.4%27%20height%3D%2722.8%27%20rx%3D%27.7%27%20opacity%3D%270.28%27%2F%3E%3Crect%20x%3D%27529.7%27%20y%3D%2773.0%27%20width%3D%271.4%27%20height%3D%2719.8%27%20rx%3D%27.7%27%20opacity%3D%270.29%27%2F%3E%3Crect%20x%3D%27502.4%27%20y%3D%27173.4%27%20width%3D%271.4%27%20height%3D%2715.7%27%20rx%3D%27.7%27%20opacity%3D%270.46%27%2F%3E%3Crect%20x%3D%27487.9%27%20y%3D%27373.3%27%20width%3D%271.4%27%20height%3D%2721.5%27%20rx%3D%27.7%27%20opacity%3D%270.45%27%2F%3E%3Crect%20x%3D%27549.7%27%20y%3D%27178.4%27%20width%3D%271.4%27%20height%3D%2715.0%27%20rx%3D%27.7%27%20opacity%3D%270.54%27%2F%3E%3Crect%20x%3D%27409.9%27%20y%3D%27421.4%27%20width%3D%271.4%27%20height%3D%2724.4%27%20rx%3D%27.7%27%20opacity%3D%270.31%27%2F%3E%3Crect%20x%3D%27394.0%27%20y%3D%27294.4%27%20width%3D%271.4%27%20height%3D%2725.8%27%20rx%3D%27.7%27%20opacity%3D%270.45%27%2F%3E%3Crect%20x%3D%27340.8%27%20y%3D%27530.0%27%20width%3D%271.4%27%20height%3D%2722.8%27%20rx%3D%27.7%27%20opacity%3D%270.4%27%2F%3E%3Crect%20x%3D%27449.8%27%20y%3D%27152.3%27%20width%3D%271.4%27%20height%3D%2720.7%27%20rx%3D%27.7%27%20opacity%3D%270.38%27%2F%3E%3Crect%20x%3D%27346.3%27%20y%3D%27494.2%27%20width%3D%271.4%27%20height%3D%2725.2%27%20rx%3D%27.7%27%20opacity%3D%270.49%27%2F%3E%3Crect%20x%3D%27407.6%27%20y%3D%27532.0%27%20width%3D%271.4%27%20height%3D%2722.9%27%20rx%3D%27.7%27%20opacity%3D%270.37%27%2F%3E%3Crect%20x%3D%27357.1%27%20y%3D%2771.9%27%20width%3D%271.4%27%20height%3D%2715.9%27%20rx%3D%27.7%27%20opacity%3D%270.43%27%2F%3E%3Crect%20x%3D%27102.9%27%20y%3D%2760.5%27%20width%3D%271.4%27%20height%3D%2717.0%27%20rx%3D%27.7%27%20opacity%3D%270.49%27%2F%3E%3Crect%20x%3D%27587.4%27%20y%3D%2793.7%27%20width%3D%271.4%27%20height%3D%2714.4%27%20rx%3D%27.7%27%20opacity%3D%270.31%27%2F%3E%3Crect%20x%3D%27371.8%27%20y%3D%2748.9%27%20width%3D%271.4%27%20height%3D%2716.5%27%20rx%3D%27.7%27%20opacity%3D%270.51%27%2F%3E%3Crect%20x%3D%27455.5%27%20y%3D%278.6%27%20width%3D%271.4%27%20height%3D%2724.0%27%20rx%3D%27.7%27%20opacity%3D%270.28%27%2F%3E%3Crect%20x%3D%27228.6%27%20y%3D%27403.7%27%20width%3D%271.4%27%20height%3D%2725.1%27%20rx%3D%27.7%27%20opacity%3D%270.53%27%2F%3E%3Crect%20x%3D%27170.9%27%20y%3D%27196.0%27%20width%3D%271.4%27%20height%3D%2722.8%27%20rx%3D%27.7%27%20opacity%3D%270.33%27%2F%3E%3Crect%20x%3D%27213.6%27%20y%3D%27114.0%27%20width%3D%271.4%27%20height%3D%2716.2%27%20rx%3D%27.7%27%20opacity%3D%270.5%27%2F%3E%3Crect%20x%3D%27492.8%27%20y%3D%27323.8%27%20width%3D%271.4%27%20height%3D%2724.2%27%20rx%3D%27.7%27%20opacity%3D%270.38%27%2F%3E%3Crect%20x%3D%27435.9%27%20y%3D%27262.9%27%20width%3D%271.4%27%20height%3D%2725.3%27%20rx%3D%27.7%27%20opacity%3D%270.46%27%2F%3E%3Crect%20x%3D%27452.6%27%20y%3D%27359.1%27%20width%3D%271.4%27%20height%3D%2719.5%27%20rx%3D%27.7%27%20opacity%3D%270.26%27%2F%3E%3Crect%20x%3D%27416.0%27%20y%3D%27287.3%27%20width%3D%271.4%27%20height%3D%2718.9%27%20rx%3D%27.7%27%20opacity%3D%270.53%27%2F%3E%3Crect%20x%3D%27113.7%27%20y%3D%27558.4%27%20width%3D%271.4%27%20height%3D%2722.3%27%20rx%3D%27.7%27%20opacity%3D%270.36%27%2F%3E%3Crect%20x%3D%27545.5%27%20y%3D%27545.0%27%20width%3D%271.4%27%20height%3D%2721.9%27%20rx%3D%27.7%27%20opacity%3D%270.36%27%2F%3E%3Crect%20x%3D%27393.0%27%20y%3D%2726.9%27%20width%3D%271.4%27%20height%3D%2719.1%27%20rx%3D%27.7%27%20opacity%3D%270.44%27%2F%3E%3Crect%20x%3D%27529.7%27%20y%3D%27299.0%27%20width%3D%271.4%27%20height%3D%2721.4%27%20rx%3D%27.7%27%20opacity%3D%270.5%27%2F%3E%3Crect%20x%3D%27364.4%27%20y%3D%2734.3%27%20width%3D%271.4%27%20height%3D%2718.3%27%20rx%3D%27.7%27%20opacity%3D%270.31%27%2F%3E%3Crect%20x%3D%27129.1%27%20y%3D%27123.9%27%20width%3D%271.4%27%20height%3D%2717.9%27%20rx%3D%27.7%27%20opacity%3D%270.25%27%2F%3E%3Crect%20x%3D%27584.2%27%20y%3D%27420.4%27%20width%3D%271.4%27%20height%3D%2723.9%27%20rx%3D%27.7%27%20opacity%3D%270.46%27%2F%3E%3C%2Fg%3E%3C%2Fsvg%3E");
  background-size: 600px 600px;
  background-repeat: repeat;
  opacity: 0.5;
  animation: ks-rainfall 3.4s linear infinite;
}

@keyframes ks-rainfall {
  from { transform: translate3d(0, -12%, 0); }
  to { transform: translate3d(-3%, 100%, 0); }
}

/* Jedna svieca na obzore — jediný teplý bod v celej scéne. */

.ks-candle {
  position: absolute;
  left: 50%;
  bottom: 4%;
  width: 12rem;
  height: 12rem;
  transform: translateX(-50%);
  background: radial-gradient(circle at 50% 62%, rgba(255, 206, 130, 0.5) 0%, rgba(255, 170, 90, 0.22) 26%, transparent 62%);
  animation: ks-candle-flicker 5.5s ease-in-out infinite;
}

@keyframes ks-candle-flicker {
  0%, 100% { opacity: 0.85; transform: translateX(-50%) scale(1); }
  40% { opacity: 1; transform: translateX(-50%) scale(1.05); }
  70% { opacity: 0.78; transform: translateX(-50%) scale(0.98); }
}

@media (prefers-reduced-motion: reduce) {
  .ks-ribbon, .ks-ice, .ks-rinkglow,
  .ks-medalglow, .ks-spark, .ks-balloon, .ks-rain, .ks-candle {
    animation: none;
  }
  .ks-spark, .ks-balloon { opacity: 0.7; }
}

/* ══ koniec ďalších tém ════════════════════════════════════════════════════ *//* ══ Opravy po vizuálnej kontrole tém ════════════════════════════════════════
   1. Slnko patrí len k predvolenej oblohe a ku konfetám. Pri téme, ktorá si
      nesie vlastné pozadie, pôsobilo ako cudzia oranžová škvrna — najviac
      pri hokeji a medailách.
   2. Stuhy, lístie, vtáky, ľad a iskry boli na snímkach sotva viditeľné.
   ═════════════════════════════════════════════════════════════════════════ */

.discover-band.sky-theme-vianoce::after,
.discover-band.sky-theme-silvester::after,
.discover-band.sky-theme-futbal::after,
.discover-band.sky-theme-volby::after,
.discover-band.sky-theme-maraton::after,
.discover-band.sky-theme-hokej::after,
.discover-band.sky-theme-vesela::after,
.discover-band.sky-theme-olympiada-zlato::after,
.discover-band.sky-theme-olympiada-striebro::after,
.discover-band.sky-theme-olympiada-bronz::after {
  animation: none;
  opacity: 0;
}

/* Voľby: stuhy musia byť vidieť, nie tušiť. */

.ks-ribbon {
  height: 11%;
  filter: blur(14px);
  opacity: 0.8;
}

.ks-ribbon--w { background: rgba(255, 255, 255, 0.95); }

.ks-ribbon--b { background: rgba(52, 116, 214, 0.95); }

.ks-ribbon--r { background: rgba(226, 54, 66, 0.9); }

/* Hokej: ľad je biely na tmavomodrom — nech je to vidieť. */

.ks-ice--a { opacity: 1; background-size: 420px 420px; }

.ks-ice--b { opacity: 0.75; background-size: 320px 320px; }

.ks-rinkglow { opacity: 0.9; }

/* Medaily: väčšie a jasnejšie iskry, aby bolo poznať kov aj na tmavom. */

.ks-spark {
  width: 8px;
  height: 8px;
  box-shadow: 0 0 16px var(--ks-medal), 0 0 34px var(--ks-medal-soft);
}

.ks-medalglow { opacity: 1; }

/* Striebro je chladné, bronz teplý — inak sa od seba na obrazovke nelíšili. */

.discover-band.sky-theme-olympiada-striebro {
  background:
    radial-gradient(ellipse 120% 55% at 50% 118%, rgba(150, 170, 200, 0.34), transparent 62%),
    linear-gradient(180deg, #070a12 0%, #101728 26%, #1d2a42 54%, #2f4160 78%, #4d6484 100%);
}

.discover-band.sky-theme-olympiada-bronz {
  background:
    radial-gradient(ellipse 120% 55% at 50% 118%, rgba(170, 110, 60, 0.34), transparent 62%),
    linear-gradient(180deg, #100806 0%, #1e1310 26%, #33211a 54%, #4d342a 78%, #75513c 100%);
}

/* Smutná: dážď má byť čitateľný, ale nie dramatický. */

.ks-rain { opacity: 0.75; }

/* ══ koniec opráv tém ══════════════════════════════════════════════════════ *//* Voľby — stuhy preč spod nadpisu.
   Nadpis je vľavo hore a biela stuha pod ním zrážala kontrast textu tak,
   že sa dal ťažko prečítať. Posúvame ich doprava a mierne nadol. */

.ks-ribbon {
  left: 34%;
  width: 90%;
  height: 9%;
  opacity: 0.72;
  transform-origin: left center;
}

.ks-ribbon--w { top: 30%; }

.ks-ribbon--b { top: 40%; }

.ks-ribbon--r { top: 50%; }

@keyframes ks-ribbon-drift {
  from { transform: translate3d(-2%, 0, 0) rotate(-3deg); }
  to { transform: translate3d(2%, 2%, 0) rotate(-6deg); }
}

/* Voľby — stuhy až za koniec nadpisu.
   Nadpis má max-width 42rem a pri 1100 px končí na ~49 % šírky, takže
   stuhy začínajú na 55 % a text sa s nimi už nikde nestretne. */

.ks-ribbon {
  left: 55%;
  width: 70%;
}

.ks-ribbon--w { top: 26%; opacity: 0.62; }

.ks-ribbon--b { top: 36%; }

.ks-ribbon--r { top: 46%; }

/* ══ Sviatky a výročia ═══════════════════════════════════════════════════════
   Valentín, fašiangy, Veľká noc, prvý jarný deň, Deň Zeme, SNP, Dušičky.
   Návrat: zmazať blok po značku „koniec sviatkov a výročí".
   ═════════════════════════════════════════════════════════════════════════ *//* ── Valentín ────────────────────────────────────────────────────────────── */

.discover-band.sky-theme-valentin {
  background:
    radial-gradient(ellipse 110% 50% at 50% 114%, rgba(255, 200, 220, 0.45), transparent 60%),
    linear-gradient(180deg, #3a1030 0%, #6b1f4a 26%, #a83f68 54%, #dd7f9c 78%, #ffd3e0 100%);
}

.discover-band.sky-theme-valentin::after { animation: none; opacity: 0; }

/* Srdiečka stúpajú, nepadajú — pôsobí to ľahšie. */

.ks-hearts {
  position: absolute;
  inset: 0 0 -12%;
  background-repeat: repeat;
}

.ks-hearts--a {
  background-image: url("data:image/svg+xml,%3Csvg%20xmlns%3D%27http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%27%20viewBox%3D%270%200%20600%20600%27%3E%3Cpath%20d%3D%27M0%2C3%20C0%2C-1%20-5%2C-1%20-5%2C3%20C-5%2C7%200%2C10%200%2C13%20C0%2C10%205%2C7%205%2C3%20C5%2C-1%200%2C-1%200%2C3%20Z%27%20fill%3D%27%23ffffff%27%20opacity%3D%270.89%27%20transform%3D%27translate%28271.4%20335.9%29%20scale%281.05%29%20rotate%28-2%29%27%2F%3E%3Cpath%20d%3D%27M0%2C3%20C0%2C-1%20-5%2C-1%20-5%2C3%20C-5%2C7%200%2C10%200%2C13%20C0%2C10%205%2C7%205%2C3%20C5%2C-1%200%2C-1%200%2C3%20Z%27%20fill%3D%27%23ff7d9c%27%20opacity%3D%270.59%27%20transform%3D%27translate%28113.9%20482.3%29%20scale%280.79%29%20rotate%287%29%27%2F%3E%3Cpath%20d%3D%27M0%2C3%20C0%2C-1%20-5%2C-1%20-5%2C3%20C-5%2C7%200%2C10%200%2C13%20C0%2C10%205%2C7%205%2C3%20C5%2C-1%200%2C-1%200%2C3%20Z%27%20fill%3D%27%23ff7d9c%27%20opacity%3D%270.79%27%20transform%3D%27translate%28182.0%2054.4%29%20scale%280.99%29%20rotate%2812%29%27%2F%3E%3Cpath%20d%3D%27M0%2C3%20C0%2C-1%20-5%2C-1%20-5%2C3%20C-5%2C7%200%2C10%200%2C13%20C0%2C10%205%2C7%205%2C3%20C5%2C-1%200%2C-1%200%2C3%20Z%27%20fill%3D%27%23ffffff%27%20opacity%3D%270.56%27%20transform%3D%27translate%28237.7%20271.8%29%20scale%280.94%29%20rotate%289%29%27%2F%3E%3Cpath%20d%3D%27M0%2C3%20C0%2C-1%20-5%2C-1%20-5%2C3%20C-5%2C7%200%2C10%200%2C13%20C0%2C10%205%2C7%205%2C3%20C5%2C-1%200%2C-1%200%2C3%20Z%27%20fill%3D%27%23ff7d9c%27%20opacity%3D%270.86%27%20transform%3D%27translate%28317.0%2035.7%29%20scale%280.61%29%20rotate%28-15%29%27%2F%3E%3Cpath%20d%3D%27M0%2C3%20C0%2C-1%20-5%2C-1%20-5%2C3%20C-5%2C7%200%2C10%200%2C13%20C0%2C10%205%2C7%205%2C3%20C5%2C-1%200%2C-1%200%2C3%20Z%27%20fill%3D%27%23ffb3c6%27%20opacity%3D%270.75%27%20transform%3D%27translate%28195.8%20354.6%29%20scale%280.62%29%20rotate%28-16%29%27%2F%3E%3Cpath%20d%3D%27M0%2C3%20C0%2C-1%20-5%2C-1%20-5%2C3%20C-5%2C7%200%2C10%200%2C13%20C0%2C10%205%2C7%205%2C3%20C5%2C-1%200%2C-1%200%2C3%20Z%27%20fill%3D%27%23ff7d9c%27%20opacity%3D%270.83%27%20transform%3D%27translate%28397.5%20274.4%29%20scale%280.67%29%20rotate%2830%29%27%2F%3E%3Cpath%20d%3D%27M0%2C3%20C0%2C-1%20-5%2C-1%20-5%2C3%20C-5%2C7%200%2C10%200%2C13%20C0%2C10%205%2C7%205%2C3%20C5%2C-1%200%2C-1%200%2C3%20Z%27%20fill%3D%27%23ff7d9c%27%20opacity%3D%270.71%27%20transform%3D%27translate%28189.2%20137.8%29%20scale%280.67%29%20rotate%28-26%29%27%2F%3E%3Cpath%20d%3D%27M0%2C3%20C0%2C-1%20-5%2C-1%20-5%2C3%20C-5%2C7%200%2C10%200%2C13%20C0%2C10%205%2C7%205%2C3%20C5%2C-1%200%2C-1%200%2C3%20Z%27%20fill%3D%27%23ff7d9c%27%20opacity%3D%270.64%27%20transform%3D%27translate%28508.0%20231.9%29%20scale%281.07%29%20rotate%2821%29%27%2F%3E%3Cpath%20d%3D%27M0%2C3%20C0%2C-1%20-5%2C-1%20-5%2C3%20C-5%2C7%200%2C10%200%2C13%20C0%2C10%205%2C7%205%2C3%20C5%2C-1%200%2C-1%200%2C3%20Z%27%20fill%3D%27%23ffb3c6%27%20opacity%3D%270.58%27%20transform%3D%27translate%28556.2%2031.4%29%20scale%280.73%29%20rotate%2813%29%27%2F%3E%3Cpath%20d%3D%27M0%2C3%20C0%2C-1%20-5%2C-1%20-5%2C3%20C-5%2C7%200%2C10%200%2C13%20C0%2C10%205%2C7%205%2C3%20C5%2C-1%200%2C-1%200%2C3%20Z%27%20fill%3D%27%23ffb3c6%27%20opacity%3D%270.56%27%20transform%3D%27translate%28377.7%20467.1%29%20scale%280.66%29%20rotate%28-25%29%27%2F%3E%3Cpath%20d%3D%27M0%2C3%20C0%2C-1%20-5%2C-1%20-5%2C3%20C-5%2C7%200%2C10%200%2C13%20C0%2C10%205%2C7%205%2C3%20C5%2C-1%200%2C-1%200%2C3%20Z%27%20fill%3D%27%23ff7d9c%27%20opacity%3D%270.57%27%20transform%3D%27translate%28246.0%20553.7%29%20scale%280.58%29%20rotate%2812%29%27%2F%3E%3Cpath%20d%3D%27M0%2C3%20C0%2C-1%20-5%2C-1%20-5%2C3%20C-5%2C7%200%2C10%200%2C13%20C0%2C10%205%2C7%205%2C3%20C5%2C-1%200%2C-1%200%2C3%20Z%27%20fill%3D%27%23ff7d9c%27%20opacity%3D%270.94%27%20transform%3D%27translate%28478.2%20106.6%29%20scale%280.84%29%20rotate%28-3%29%27%2F%3E%3Cpath%20d%3D%27M0%2C3%20C0%2C-1%20-5%2C-1%20-5%2C3%20C-5%2C7%200%2C10%200%2C13%20C0%2C10%205%2C7%205%2C3%20C5%2C-1%200%2C-1%200%2C3%20Z%27%20fill%3D%27%23ff7d9c%27%20opacity%3D%270.55%27%20transform%3D%27translate%28461.7%20251.5%29%20scale%280.73%29%20rotate%28-6%29%27%2F%3E%3Cpath%20d%3D%27M0%2C3%20C0%2C-1%20-5%2C-1%20-5%2C3%20C-5%2C7%200%2C10%200%2C13%20C0%2C10%205%2C7%205%2C3%20C5%2C-1%200%2C-1%200%2C3%20Z%27%20fill%3D%27%23ff7d9c%27%20opacity%3D%270.63%27%20transform%3D%27translate%28518.6%20584.9%29%20scale%280.86%29%20rotate%2830%29%27%2F%3E%3Cpath%20d%3D%27M0%2C3%20C0%2C-1%20-5%2C-1%20-5%2C3%20C-5%2C7%200%2C10%200%2C13%20C0%2C10%205%2C7%205%2C3%20C5%2C-1%200%2C-1%200%2C3%20Z%27%20fill%3D%27%23ff7d9c%27%20opacity%3D%270.64%27%20transform%3D%27translate%28236.6%20512.6%29%20scale%280.89%29%20rotate%28-24%29%27%2F%3E%3Cpath%20d%3D%27M0%2C3%20C0%2C-1%20-5%2C-1%20-5%2C3%20C-5%2C7%200%2C10%200%2C13%20C0%2C10%205%2C7%205%2C3%20C5%2C-1%200%2C-1%200%2C3%20Z%27%20fill%3D%27%23ff7d9c%27%20opacity%3D%270.58%27%20transform%3D%27translate%28155.0%20463.6%29%20scale%280.7%29%20rotate%28-12%29%27%2F%3E%3Cpath%20d%3D%27M0%2C3%20C0%2C-1%20-5%2C-1%20-5%2C3%20C-5%2C7%200%2C10%200%2C13%20C0%2C10%205%2C7%205%2C3%20C5%2C-1%200%2C-1%200%2C3%20Z%27%20fill%3D%27%23ffffff%27%20opacity%3D%270.73%27%20transform%3D%27translate%28125.2%20382.0%29%20scale%280.51%29%20rotate%28-8%29%27%2F%3E%3Cpath%20d%3D%27M0%2C3%20C0%2C-1%20-5%2C-1%20-5%2C3%20C-5%2C7%200%2C10%200%2C13%20C0%2C10%205%2C7%205%2C3%20C5%2C-1%200%2C-1%200%2C3%20Z%27%20fill%3D%27%23ff7d9c%27%20opacity%3D%270.8%27%20transform%3D%27translate%28575.5%20290.2%29%20scale%280.84%29%20rotate%2822%29%27%2F%3E%3Cpath%20d%3D%27M0%2C3%20C0%2C-1%20-5%2C-1%20-5%2C3%20C-5%2C7%200%2C10%200%2C13%20C0%2C10%205%2C7%205%2C3%20C5%2C-1%200%2C-1%200%2C3%20Z%27%20fill%3D%27%23ff7d9c%27%20opacity%3D%270.85%27%20transform%3D%27translate%28186.5%20137.0%29%20scale%280.87%29%20rotate%2814%29%27%2F%3E%3Cpath%20d%3D%27M0%2C3%20C0%2C-1%20-5%2C-1%20-5%2C3%20C-5%2C7%200%2C10%200%2C13%20C0%2C10%205%2C7%205%2C3%20C5%2C-1%200%2C-1%200%2C3%20Z%27%20fill%3D%27%23ffffff%27%20opacity%3D%270.58%27%20transform%3D%27translate%28564.2%20118.0%29%20scale%281.07%29%20rotate%2823%29%27%2F%3E%3Cpath%20d%3D%27M0%2C3%20C0%2C-1%20-5%2C-1%20-5%2C3%20C-5%2C7%200%2C10%200%2C13%20C0%2C10%205%2C7%205%2C3%20C5%2C-1%200%2C-1%200%2C3%20Z%27%20fill%3D%27%23ffffff%27%20opacity%3D%270.83%27%20transform%3D%27translate%2828.4%2065.4%29%20scale%280.81%29%20rotate%28-15%29%27%2F%3E%3C%2Fsvg%3E");
  background-size: 600px 600px;
  opacity: 0.9;
  animation: ks-rise-slow 20s linear infinite;
}

.ks-hearts--b {
  background-image: url("data:image/svg+xml,%3Csvg%20xmlns%3D%27http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%27%20viewBox%3D%270%200%20440%20440%27%3E%3Cpath%20d%3D%27M0%2C3%20C0%2C-1%20-5%2C-1%20-5%2C3%20C-5%2C7%200%2C10%200%2C13%20C0%2C10%205%2C7%205%2C3%20C5%2C-1%200%2C-1%200%2C3%20Z%27%20fill%3D%27%23ff5c85%27%20opacity%3D%270.95%27%20transform%3D%27translate%28284.7%20394.5%29%20scale%280.9%29%20rotate%28-21%29%27%2F%3E%3Cpath%20d%3D%27M0%2C3%20C0%2C-1%20-5%2C-1%20-5%2C3%20C-5%2C7%200%2C10%200%2C13%20C0%2C10%205%2C7%205%2C3%20C5%2C-1%200%2C-1%200%2C3%20Z%27%20fill%3D%27%23ff5c85%27%20opacity%3D%270.77%27%20transform%3D%27translate%28289.5%20386.0%29%20scale%280.78%29%20rotate%2822%29%27%2F%3E%3Cpath%20d%3D%27M0%2C3%20C0%2C-1%20-5%2C-1%20-5%2C3%20C-5%2C7%200%2C10%200%2C13%20C0%2C10%205%2C7%205%2C3%20C5%2C-1%200%2C-1%200%2C3%20Z%27%20fill%3D%27%23ff5c85%27%20opacity%3D%270.57%27%20transform%3D%27translate%28396.8%2087.2%29%20scale%280.76%29%20rotate%28-20%29%27%2F%3E%3Cpath%20d%3D%27M0%2C3%20C0%2C-1%20-5%2C-1%20-5%2C3%20C-5%2C7%200%2C10%200%2C13%20C0%2C10%205%2C7%205%2C3%20C5%2C-1%200%2C-1%200%2C3%20Z%27%20fill%3D%27%23ffd0dc%27%20opacity%3D%270.87%27%20transform%3D%27translate%28491.3%2044.8%29%20scale%280.91%29%20rotate%28-10%29%27%2F%3E%3Cpath%20d%3D%27M0%2C3%20C0%2C-1%20-5%2C-1%20-5%2C3%20C-5%2C7%200%2C10%200%2C13%20C0%2C10%205%2C7%205%2C3%20C5%2C-1%200%2C-1%200%2C3%20Z%27%20fill%3D%27%23ff5c85%27%20opacity%3D%270.59%27%20transform%3D%27translate%2852.4%20551.3%29%20scale%280.99%29%20rotate%2810%29%27%2F%3E%3Cpath%20d%3D%27M0%2C3%20C0%2C-1%20-5%2C-1%20-5%2C3%20C-5%2C7%200%2C10%200%2C13%20C0%2C10%205%2C7%205%2C3%20C5%2C-1%200%2C-1%200%2C3%20Z%27%20fill%3D%27%23ff5c85%27%20opacity%3D%270.77%27%20transform%3D%27translate%28592.3%20568.0%29%20scale%280.57%29%20rotate%28-5%29%27%2F%3E%3Cpath%20d%3D%27M0%2C3%20C0%2C-1%20-5%2C-1%20-5%2C3%20C-5%2C7%200%2C10%200%2C13%20C0%2C10%205%2C7%205%2C3%20C5%2C-1%200%2C-1%200%2C3%20Z%27%20fill%3D%27%23ff5c85%27%20opacity%3D%270.75%27%20transform%3D%27translate%28529.2%20334.9%29%20scale%281.09%29%20rotate%2823%29%27%2F%3E%3Cpath%20d%3D%27M0%2C3%20C0%2C-1%20-5%2C-1%20-5%2C3%20C-5%2C7%200%2C10%200%2C13%20C0%2C10%205%2C7%205%2C3%20C5%2C-1%200%2C-1%200%2C3%20Z%27%20fill%3D%27%23ffd0dc%27%20opacity%3D%270.77%27%20transform%3D%27translate%2850.2%20364.5%29%20scale%280.9%29%20rotate%28-2%29%27%2F%3E%3Cpath%20d%3D%27M0%2C3%20C0%2C-1%20-5%2C-1%20-5%2C3%20C-5%2C7%200%2C10%200%2C13%20C0%2C10%205%2C7%205%2C3%20C5%2C-1%200%2C-1%200%2C3%20Z%27%20fill%3D%27%23ffd0dc%27%20opacity%3D%270.69%27%20transform%3D%27translate%28384.4%2049.6%29%20scale%280.62%29%20rotate%2817%29%27%2F%3E%3Cpath%20d%3D%27M0%2C3%20C0%2C-1%20-5%2C-1%20-5%2C3%20C-5%2C7%200%2C10%200%2C13%20C0%2C10%205%2C7%205%2C3%20C5%2C-1%200%2C-1%200%2C3%20Z%27%20fill%3D%27%23ff5c85%27%20opacity%3D%270.68%27%20transform%3D%27translate%28217.9%20414.1%29%20scale%280.9%29%20rotate%28-23%29%27%2F%3E%3Cpath%20d%3D%27M0%2C3%20C0%2C-1%20-5%2C-1%20-5%2C3%20C-5%2C7%200%2C10%200%2C13%20C0%2C10%205%2C7%205%2C3%20C5%2C-1%200%2C-1%200%2C3%20Z%27%20fill%3D%27%23ffd0dc%27%20opacity%3D%270.88%27%20transform%3D%27translate%28222.8%20343.9%29%20scale%280.96%29%20rotate%28-19%29%27%2F%3E%3Cpath%20d%3D%27M0%2C3%20C0%2C-1%20-5%2C-1%20-5%2C3%20C-5%2C7%200%2C10%200%2C13%20C0%2C10%205%2C7%205%2C3%20C5%2C-1%200%2C-1%200%2C3%20Z%27%20fill%3D%27%23ffd0dc%27%20opacity%3D%270.63%27%20transform%3D%27translate%28258.1%20311.4%29%20scale%280.63%29%20rotate%28-4%29%27%2F%3E%3Cpath%20d%3D%27M0%2C3%20C0%2C-1%20-5%2C-1%20-5%2C3%20C-5%2C7%200%2C10%200%2C13%20C0%2C10%205%2C7%205%2C3%20C5%2C-1%200%2C-1%200%2C3%20Z%27%20fill%3D%27%23ffd0dc%27%20opacity%3D%270.56%27%20transform%3D%27translate%28364.4%20452.0%29%20scale%280.63%29%20rotate%28-25%29%27%2F%3E%3Cpath%20d%3D%27M0%2C3%20C0%2C-1%20-5%2C-1%20-5%2C3%20C-5%2C7%200%2C10%200%2C13%20C0%2C10%205%2C7%205%2C3%20C5%2C-1%200%2C-1%200%2C3%20Z%27%20fill%3D%27%23ffd0dc%27%20opacity%3D%270.7%27%20transform%3D%27translate%28165.9%20206.5%29%20scale%280.88%29%20rotate%28-27%29%27%2F%3E%3C%2Fsvg%3E");
  background-size: 440px 440px;
  opacity: 0.6;
  animation: ks-rise-slow 31s linear infinite;
}

@keyframes ks-rise-slow {
  from { transform: translate3d(0, 12%, 0); }
  to { transform: translate3d(4%, -100%, 0); }
}

/* ── Fašiangy ────────────────────────────────────────────────────────────── */

.discover-band.sky-theme-fasiangy {
  background:
    radial-gradient(ellipse 110% 50% at 50% 112%, rgba(255, 226, 150, 0.42), transparent 58%),
    linear-gradient(180deg, #2a1240 0%, #4d1f63 26%, #8a3a6d 54%, #cf6f63 78%, #f6c073 100%);
}

.discover-band.sky-theme-fasiangy::after { animation: none; opacity: 0; }

.ks-theme--fasiangy .ks-confetti:nth-child(4n) { background: #ffd166; }

.ks-theme--fasiangy .ks-confetti:nth-child(4n+1) { background: #9b5de5; }

.ks-theme--fasiangy .ks-confetti:nth-child(4n+2) { background: #00bbf9; }

.ks-theme--fasiangy .ks-confetti:nth-child(4n+3) { background: #f15bb5; }

/* Serpentíny — dlhé stuhy, ktoré sa vlnia. */

.ks-streamer {
  position: absolute;
  top: -6%;
  width: 7px;
  height: 46%;
  border-radius: 6px;
  opacity: 0.75;
  animation: ks-streamer-sway 11s ease-in-out infinite alternate;
}

.ks-streamer--1 { left: 14%; background: linear-gradient(#ffd166, transparent); animation-delay: 0s; }

.ks-streamer--2 { left: 38%; background: linear-gradient(#f15bb5, transparent); animation-delay: 1.6s; }

.ks-streamer--3 { left: 63%; background: linear-gradient(#00bbf9, transparent); animation-delay: 3.2s; }

.ks-streamer--4 { left: 86%; background: linear-gradient(#9b5de5, transparent); animation-delay: 4.8s; }

@keyframes ks-streamer-sway {
  from { transform: rotate(-7deg) translateY(-2%); }
  to { transform: rotate(7deg) translateY(2%); }
}

/* ── Veľká noc ───────────────────────────────────────────────────────────── */

.discover-band.sky-theme-velkanoc {
  background:
    radial-gradient(ellipse 110% 48% at 55% 112%, rgba(255, 248, 205, 0.5), transparent 58%),
    linear-gradient(180deg, #35547f 0%, #5b86b8 26%, #93bcd8 54%, #cfe4d6 78%, #f6f2cf 100%);
}

.ks-eggs {
  position: absolute;
  inset: -10% 0 0;
  background-image: url("data:image/svg+xml,%3Csvg%20xmlns%3D%27http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%27%20viewBox%3D%270%200%20600%20600%27%3E%3Cellipse%20cx%3D%27155.4%27%20cy%3D%27411.2%27%20rx%3D%276.3%27%20ry%3D%278.7%27%20fill%3D%27%238ad4c1%27%20opacity%3D%270.9%27%20transform%3D%27rotate%2817%20155.4%20411.2%29%27%2F%3E%3Cellipse%20cx%3D%27399.7%27%20cy%3D%27521.5%27%20rx%3D%276.2%27%20ry%3D%278.6%27%20fill%3D%27%23ffd166%27%20opacity%3D%270.86%27%20transform%3D%27rotate%28-16%20399.7%20521.5%29%27%2F%3E%3Cellipse%20cx%3D%27128.3%27%20cy%3D%27176.8%27%20rx%3D%275.5%27%20ry%3D%277.7%27%20fill%3D%27%23ffffff%27%20opacity%3D%271.0%27%20transform%3D%27rotate%2817%20128.3%20176.8%29%27%2F%3E%3Cellipse%20cx%3D%27595.8%27%20cy%3D%27500.6%27%20rx%3D%274.5%27%20ry%3D%276.3%27%20fill%3D%27%23f4978e%27%20opacity%3D%270.95%27%20transform%3D%27rotate%2815%20595.8%20500.6%29%27%2F%3E%3Cellipse%20cx%3D%27446.9%27%20cy%3D%27569.6%27%20rx%3D%276.6%27%20ry%3D%279.2%27%20fill%3D%27%238ad4c1%27%20opacity%3D%270.85%27%20transform%3D%27rotate%28-12%20446.9%20569.6%29%27%2F%3E%3Cellipse%20cx%3D%27453.0%27%20cy%3D%27338.5%27%20rx%3D%275.5%27%20ry%3D%277.7%27%20fill%3D%27%23a5b8f3%27%20opacity%3D%270.89%27%20transform%3D%27rotate%28-7%20453.0%20338.5%29%27%2F%3E%3Cellipse%20cx%3D%27393.2%27%20cy%3D%27207.6%27%20rx%3D%276.0%27%20ry%3D%278.4%27%20fill%3D%27%23f4978e%27%20opacity%3D%270.91%27%20transform%3D%27rotate%287%20393.2%20207.6%29%27%2F%3E%3Cellipse%20cx%3D%27332.5%27%20cy%3D%27449.0%27%20rx%3D%274.7%27%20ry%3D%276.5%27%20fill%3D%27%23a5b8f3%27%20opacity%3D%270.86%27%20transform%3D%27rotate%289%20332.5%20449.0%29%27%2F%3E%3Cellipse%20cx%3D%27176.0%27%20cy%3D%27107.6%27%20rx%3D%275.3%27%20ry%3D%277.4%27%20fill%3D%27%23f4978e%27%20opacity%3D%270.88%27%20transform%3D%27rotate%28-6%20176.0%20107.6%29%27%2F%3E%3Cellipse%20cx%3D%27237.5%27%20cy%3D%2778.5%27%20rx%3D%275.8%27%20ry%3D%278.0%27%20fill%3D%27%238ad4c1%27%20opacity%3D%270.97%27%20transform%3D%27rotate%28-13%20237.5%2078.5%29%27%2F%3E%3Cellipse%20cx%3D%27420.9%27%20cy%3D%2778.7%27%20rx%3D%275.5%27%20ry%3D%277.7%27%20fill%3D%27%23a5b8f3%27%20opacity%3D%270.82%27%20transform%3D%27rotate%286%20420.9%2078.7%29%27%2F%3E%3Cellipse%20cx%3D%27431.3%27%20cy%3D%27559.8%27%20rx%3D%274.5%27%20ry%3D%276.2%27%20fill%3D%27%23a5b8f3%27%20opacity%3D%270.89%27%20transform%3D%27rotate%28-18%20431.3%20559.8%29%27%2F%3E%3Cellipse%20cx%3D%2795.9%27%20cy%3D%27248.1%27%20rx%3D%276.8%27%20ry%3D%279.5%27%20fill%3D%27%23f4978e%27%20opacity%3D%270.76%27%20transform%3D%27rotate%2819%2095.9%20248.1%29%27%2F%3E%3Cellipse%20cx%3D%27512.2%27%20cy%3D%27224.9%27%20rx%3D%276.4%27%20ry%3D%278.9%27%20fill%3D%27%23ffffff%27%20opacity%3D%270.77%27%20transform%3D%27rotate%28-18%20512.2%20224.9%29%27%2F%3E%3Cellipse%20cx%3D%27297.8%27%20cy%3D%27516.9%27%20rx%3D%274.5%27%20ry%3D%276.2%27%20fill%3D%27%23ffd166%27%20opacity%3D%270.81%27%20transform%3D%27rotate%2810%20297.8%20516.9%29%27%2F%3E%3Cellipse%20cx%3D%27436.6%27%20cy%3D%27204.8%27%20rx%3D%275.2%27%20ry%3D%277.2%27%20fill%3D%27%23ffffff%27%20opacity%3D%270.73%27%20transform%3D%27rotate%28-17%20436.6%20204.8%29%27%2F%3E%3Cellipse%20cx%3D%27135.3%27%20cy%3D%2741.5%27%20rx%3D%276.2%27%20ry%3D%278.6%27%20fill%3D%27%23ffffff%27%20opacity%3D%270.91%27%20transform%3D%27rotate%283%20135.3%2041.5%29%27%2F%3E%3Cellipse%20cx%3D%27582.7%27%20cy%3D%27495.2%27%20rx%3D%276.2%27%20ry%3D%278.6%27%20fill%3D%27%238ad4c1%27%20opacity%3D%271.0%27%20transform%3D%27rotate%281%20582.7%20495.2%29%27%2F%3E%3C%2Fsvg%3E");
  background-size: 520px 520px;
  background-repeat: repeat;
  opacity: 0.9;
  animation: ks-fall-gentle 26s linear infinite;
}

@keyframes ks-fall-gentle {
  from { transform: translate3d(0, -12%, 0) rotate(0deg); }
  to { transform: translate3d(-5%, 100%, 0) rotate(4deg); }
}

/* ── Prvý jarný deň ──────────────────────────────────────────────────────── */

.discover-band.sky-theme-jar {
  background:
    radial-gradient(ellipse 110% 48% at 62% 112%, rgba(255, 245, 200, 0.5), transparent 58%),
    linear-gradient(180deg, #123a63 0%, #2f77ad 26%, #6db6d6 54%, #b6e3d5 80%, #eaf7c9 100%);
}

.ks-petals {
  position: absolute;
  inset: -10% 0 0;
  background-image: url("data:image/svg+xml,%3Csvg%20xmlns%3D%27http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%27%20viewBox%3D%270%200%20600%20600%27%3E%3Cellipse%20cx%3D%2764.1%27%20cy%3D%27421.6%27%20rx%3D%275.5%27%20ry%3D%272.3%27%20fill%3D%27%23ffffff%27%20opacity%3D%270.89%27%20transform%3D%27rotate%28339%2064.1%20421.6%29%27%2F%3E%3Cellipse%20cx%3D%27174.6%27%20cy%3D%2743.6%27%20rx%3D%274.8%27%20ry%3D%272.0%27%20fill%3D%27%23ffffff%27%20opacity%3D%270.76%27%20transform%3D%27rotate%28168%20174.6%2043.6%29%27%2F%3E%3Cellipse%20cx%3D%27545.4%27%20cy%3D%27158.1%27%20rx%3D%276.1%27%20ry%3D%272.5%27%20fill%3D%27%23ffffff%27%20opacity%3D%270.74%27%20transform%3D%27rotate%28114%20545.4%20158.1%29%27%2F%3E%3Cellipse%20cx%3D%27379.6%27%20cy%3D%27309.8%27%20rx%3D%274.0%27%20ry%3D%271.7%27%20fill%3D%27%23ffffff%27%20opacity%3D%270.67%27%20transform%3D%27rotate%28240%20379.6%20309.8%29%27%2F%3E%3Cellipse%20cx%3D%27391.0%27%20cy%3D%2773.8%27%20rx%3D%274.5%27%20ry%3D%271.9%27%20fill%3D%27%23ffd9e6%27%20opacity%3D%270.94%27%20transform%3D%27rotate%2830%20391.0%2073.8%29%27%2F%3E%3Cellipse%20cx%3D%27229.1%27%20cy%3D%27350.0%27%20rx%3D%276.3%27%20ry%3D%272.6%27%20fill%3D%27%23ffd9e6%27%20opacity%3D%270.95%27%20transform%3D%27rotate%28323%20229.1%20350.0%29%27%2F%3E%3Cellipse%20cx%3D%27412.1%27%20cy%3D%2766.9%27%20rx%3D%275.3%27%20ry%3D%272.2%27%20fill%3D%27%23ffd9e6%27%20opacity%3D%270.95%27%20transform%3D%27rotate%28228%20412.1%2066.9%29%27%2F%3E%3Cellipse%20cx%3D%27448.2%27%20cy%3D%27292.0%27%20rx%3D%275.5%27%20ry%3D%272.3%27%20fill%3D%27%23ffe9b8%27%20opacity%3D%270.69%27%20transform%3D%27rotate%2897%20448.2%20292.0%29%27%2F%3E%3Cellipse%20cx%3D%27478.9%27%20cy%3D%27300.3%27%20rx%3D%273.8%27%20ry%3D%271.6%27%20fill%3D%27%23ffd9e6%27%20opacity%3D%270.71%27%20transform%3D%27rotate%28295%20478.9%20300.3%29%27%2F%3E%3Cellipse%20cx%3D%2771.0%27%20cy%3D%2797.0%27%20rx%3D%274.7%27%20ry%3D%272.0%27%20fill%3D%27%23ffe9b8%27%20opacity%3D%270.64%27%20transform%3D%27rotate%28247%2071.0%2097.0%29%27%2F%3E%3Cellipse%20cx%3D%27288.3%27%20cy%3D%27411.2%27%20rx%3D%275.1%27%20ry%3D%272.1%27%20fill%3D%27%23ffffff%27%20opacity%3D%270.78%27%20transform%3D%27rotate%28164%20288.3%20411.2%29%27%2F%3E%3Cellipse%20cx%3D%27250.6%27%20cy%3D%27496.0%27%20rx%3D%274.3%27%20ry%3D%271.8%27%20fill%3D%27%23ffffff%27%20opacity%3D%270.95%27%20transform%3D%27rotate%28142%20250.6%20496.0%29%27%2F%3E%3Cellipse%20cx%3D%27563.4%27%20cy%3D%2739.9%27%20rx%3D%273.9%27%20ry%3D%271.6%27%20fill%3D%27%23ffe9b8%27%20opacity%3D%270.78%27%20transform%3D%27rotate%28253%20563.4%2039.9%29%27%2F%3E%3Cellipse%20cx%3D%27495.2%27%20cy%3D%27243.4%27%20rx%3D%276.5%27%20ry%3D%272.7%27%20fill%3D%27%23ffe9b8%27%20opacity%3D%270.83%27%20transform%3D%27rotate%287%20495.2%20243.4%29%27%2F%3E%3Cellipse%20cx%3D%27563.5%27%20cy%3D%27158.1%27%20rx%3D%274.4%27%20ry%3D%271.8%27%20fill%3D%27%23ffe9b8%27%20opacity%3D%270.82%27%20transform%3D%27rotate%2868%20563.5%20158.1%29%27%2F%3E%3Cellipse%20cx%3D%27478.6%27%20cy%3D%2757.2%27%20rx%3D%273.8%27%20ry%3D%271.6%27%20fill%3D%27%23ffd9e6%27%20opacity%3D%270.99%27%20transform%3D%27rotate%2869%20478.6%2057.2%29%27%2F%3E%3Cellipse%20cx%3D%27351.6%27%20cy%3D%27169.6%27%20rx%3D%276.3%27%20ry%3D%272.6%27%20fill%3D%27%23ffffff%27%20opacity%3D%270.65%27%20transform%3D%27rotate%28129%20351.6%20169.6%29%27%2F%3E%3Cellipse%20cx%3D%27573.9%27%20cy%3D%27465.0%27%20rx%3D%273.5%27%20ry%3D%271.5%27%20fill%3D%27%23ffe9b8%27%20opacity%3D%270.71%27%20transform%3D%27rotate%2890%20573.9%20465.0%29%27%2F%3E%3Cellipse%20cx%3D%27149.2%27%20cy%3D%27362.4%27%20rx%3D%276.3%27%20ry%3D%272.6%27%20fill%3D%27%23ffffff%27%20opacity%3D%270.61%27%20transform%3D%27rotate%28105%20149.2%20362.4%29%27%2F%3E%3Cellipse%20cx%3D%27553.0%27%20cy%3D%27444.8%27%20rx%3D%275.9%27%20ry%3D%272.5%27%20fill%3D%27%23ffe9b8%27%20opacity%3D%270.94%27%20transform%3D%27rotate%2857%20553.0%20444.8%29%27%2F%3E%3Cellipse%20cx%3D%27219.9%27%20cy%3D%27230.5%27%20rx%3D%276.4%27%20ry%3D%272.7%27%20fill%3D%27%23ffffff%27%20opacity%3D%270.8%27%20transform%3D%27rotate%28197%20219.9%20230.5%29%27%2F%3E%3Cellipse%20cx%3D%27571.4%27%20cy%3D%2718.9%27%20rx%3D%275.4%27%20ry%3D%272.3%27%20fill%3D%27%23ffffff%27%20opacity%3D%270.64%27%20transform%3D%27rotate%28155%20571.4%2018.9%29%27%2F%3E%3Cellipse%20cx%3D%27484.3%27%20cy%3D%2777.9%27%20rx%3D%273.7%27%20ry%3D%271.5%27%20fill%3D%27%23ffd9e6%27%20opacity%3D%270.7%27%20transform%3D%27rotate%28334%20484.3%2077.9%29%27%2F%3E%3Cellipse%20cx%3D%27268.4%27%20cy%3D%27326.8%27%20rx%3D%274.6%27%20ry%3D%271.9%27%20fill%3D%27%23ffffff%27%20opacity%3D%270.88%27%20transform%3D%27rotate%28283%20268.4%20326.8%29%27%2F%3E%3Cellipse%20cx%3D%27324.8%27%20cy%3D%27251.2%27%20rx%3D%274.8%27%20ry%3D%272.0%27%20fill%3D%27%23ffe9b8%27%20opacity%3D%270.67%27%20transform%3D%27rotate%2832%20324.8%20251.2%29%27%2F%3E%3Cellipse%20cx%3D%2710.3%27%20cy%3D%27544.9%27%20rx%3D%276.4%27%20ry%3D%272.7%27%20fill%3D%27%23ffffff%27%20opacity%3D%271.0%27%20transform%3D%27rotate%28310%2010.3%20544.9%29%27%2F%3E%3Cellipse%20cx%3D%27357.3%27%20cy%3D%27494.0%27%20rx%3D%275.6%27%20ry%3D%272.3%27%20fill%3D%27%23ffffff%27%20opacity%3D%270.71%27%20transform%3D%27rotate%28208%20357.3%20494.0%29%27%2F%3E%3Cellipse%20cx%3D%27281.9%27%20cy%3D%27560.0%27%20rx%3D%276.1%27%20ry%3D%272.5%27%20fill%3D%27%23ffe9b8%27%20opacity%3D%270.86%27%20transform%3D%27rotate%2822%20281.9%20560.0%29%27%2F%3E%3Cellipse%20cx%3D%27388.8%27%20cy%3D%27493.9%27%20rx%3D%276.3%27%20ry%3D%272.6%27%20fill%3D%27%23ffd9e6%27%20opacity%3D%270.95%27%20transform%3D%27rotate%2825%20388.8%20493.9%29%27%2F%3E%3Cellipse%20cx%3D%27497.3%27%20cy%3D%27558.7%27%20rx%3D%273.7%27%20ry%3D%271.5%27%20fill%3D%27%23ffffff%27%20opacity%3D%270.62%27%20transform%3D%27rotate%28286%20497.3%20558.7%29%27%2F%3E%3C%2Fsvg%3E");
  background-size: 560px 560px;
  background-repeat: repeat;
  opacity: 0.85;
  animation: ks-fall-gentle 19s linear infinite;
}

.ks-petals--fast {
  background-size: 400px 400px;
  opacity: 0.6;
  animation-duration: 12s;
}

/* ── Deň Zeme ────────────────────────────────────────────────────────────── */

.discover-band.sky-theme-den-zeme {
  background:
    radial-gradient(ellipse 110% 50% at 50% 114%, rgba(190, 240, 180, 0.45), transparent 60%),
    linear-gradient(180deg, #08331f 0%, #10553a 26%, #2b8560 54%, #6fb98a 78%, #c8e9bd 100%);
}

.discover-band.sky-theme-den-zeme::after { animation: none; opacity: 0; }

/* Lístie tu neopadáva, len sa vznáša — Deň Zeme nie je jeseň. */

.ks-greenleaves {
  position: absolute;
  inset: -8% 0 -8%;
  background-image: url("data:image/svg+xml,%3Csvg%20xmlns%3D%27http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%27%20viewBox%3D%270%200%20600%20600%27%3E%3Cellipse%20cx%3D%27579.1%27%20cy%3D%277.0%27%20rx%3D%277.9%27%20ry%3D%273.6%27%20fill%3D%27%237bbf6a%27%20opacity%3D%270.61%27%20transform%3D%27rotate%2857%20579.1%207.0%29%27%2F%3E%3Cellipse%20cx%3D%27527.7%27%20cy%3D%27408.8%27%20rx%3D%278.4%27%20ry%3D%273.8%27%20fill%3D%27%237bbf6a%27%20opacity%3D%270.65%27%20transform%3D%27rotate%28360%20527.7%20408.8%29%27%2F%3E%3Cellipse%20cx%3D%27279.8%27%20cy%3D%27213.4%27%20rx%3D%276.6%27%20ry%3D%273.0%27%20fill%3D%27%237bbf6a%27%20opacity%3D%270.95%27%20transform%3D%27rotate%28124%20279.8%20213.4%29%27%2F%3E%3Cellipse%20cx%3D%27478.6%27%20cy%3D%27134.0%27%20rx%3D%278.7%27%20ry%3D%274.0%27%20fill%3D%27%237bbf6a%27%20opacity%3D%270.83%27%20transform%3D%27rotate%28184%20478.6%20134.0%29%27%2F%3E%3Cellipse%20cx%3D%27504.4%27%20cy%3D%27293.8%27%20rx%3D%276.8%27%20ry%3D%273.1%27%20fill%3D%27%23a8d98f%27%20opacity%3D%270.83%27%20transform%3D%27rotate%28288%20504.4%20293.8%29%27%2F%3E%3Cellipse%20cx%3D%27558.1%27%20cy%3D%27387.3%27%20rx%3D%276.6%27%20ry%3D%273.0%27%20fill%3D%27%237bbf6a%27%20opacity%3D%270.8%27%20transform%3D%27rotate%28311%20558.1%20387.3%29%27%2F%3E%3Cellipse%20cx%3D%27567.0%27%20cy%3D%2711.3%27%20rx%3D%275.6%27%20ry%3D%272.5%27%20fill%3D%27%235ea36b%27%20opacity%3D%270.94%27%20transform%3D%27rotate%2862%20567.0%2011.3%29%27%2F%3E%3Cellipse%20cx%3D%2710.4%27%20cy%3D%27318.0%27%20rx%3D%275.6%27%20ry%3D%272.5%27%20fill%3D%27%237bbf6a%27%20opacity%3D%270.76%27%20transform%3D%27rotate%28308%2010.4%20318.0%29%27%2F%3E%3Cellipse%20cx%3D%2744.2%27%20cy%3D%27435.3%27%20rx%3D%278.7%27%20ry%3D%274.0%27%20fill%3D%27%235ea36b%27%20opacity%3D%270.69%27%20transform%3D%27rotate%28106%2044.2%20435.3%29%27%2F%3E%3Cellipse%20cx%3D%27326.2%27%20cy%3D%27300.0%27%20rx%3D%275.3%27%20ry%3D%272.4%27%20fill%3D%27%237bbf6a%27%20opacity%3D%270.93%27%20transform%3D%27rotate%28112%20326.2%20300.0%29%27%2F%3E%3Cellipse%20cx%3D%27191.0%27%20cy%3D%27542.9%27%20rx%3D%276.3%27%20ry%3D%272.9%27%20fill%3D%27%237bbf6a%27%20opacity%3D%270.9%27%20transform%3D%27rotate%28159%20191.0%20542.9%29%27%2F%3E%3Cellipse%20cx%3D%27502.6%27%20cy%3D%27163.5%27%20rx%3D%275.6%27%20ry%3D%272.5%27%20fill%3D%27%23a8d98f%27%20opacity%3D%270.75%27%20transform%3D%27rotate%28244%20502.6%20163.5%29%27%2F%3E%3Cellipse%20cx%3D%27504.0%27%20cy%3D%27556.8%27%20rx%3D%278.0%27%20ry%3D%273.6%27%20fill%3D%27%237bbf6a%27%20opacity%3D%270.78%27%20transform%3D%27rotate%28103%20504.0%20556.8%29%27%2F%3E%3Cellipse%20cx%3D%2735.6%27%20cy%3D%27153.0%27%20rx%3D%278.3%27%20ry%3D%273.8%27%20fill%3D%27%23a8d98f%27%20opacity%3D%270.62%27%20transform%3D%27rotate%28203%2035.6%20153.0%29%27%2F%3E%3Cellipse%20cx%3D%2737.0%27%20cy%3D%27506.2%27%20rx%3D%277.3%27%20ry%3D%273.3%27%20fill%3D%27%235ea36b%27%20opacity%3D%270.78%27%20transform%3D%27rotate%28166%2037.0%20506.2%29%27%2F%3E%3Cellipse%20cx%3D%27432.5%27%20cy%3D%27407.0%27%20rx%3D%277.4%27%20ry%3D%273.4%27%20fill%3D%27%235ea36b%27%20opacity%3D%270.93%27%20transform%3D%27rotate%2820%20432.5%20407.0%29%27%2F%3E%3Cellipse%20cx%3D%27260.2%27%20cy%3D%2733.6%27%20rx%3D%278.7%27%20ry%3D%274.0%27%20fill%3D%27%23a8d98f%27%20opacity%3D%270.72%27%20transform%3D%27rotate%28109%20260.2%2033.6%29%27%2F%3E%3Cellipse%20cx%3D%27493.0%27%20cy%3D%27480.4%27%20rx%3D%278.6%27%20ry%3D%273.9%27%20fill%3D%27%237bbf6a%27%20opacity%3D%270.96%27%20transform%3D%27rotate%28321%20493.0%20480.4%29%27%2F%3E%3Cellipse%20cx%3D%27548.8%27%20cy%3D%27369.9%27%20rx%3D%278.6%27%20ry%3D%273.9%27%20fill%3D%27%23a8d98f%27%20opacity%3D%270.7%27%20transform%3D%27rotate%281%20548.8%20369.9%29%27%2F%3E%3Cellipse%20cx%3D%27591.8%27%20cy%3D%27198.6%27%20rx%3D%278.7%27%20ry%3D%274.0%27%20fill%3D%27%23a8d98f%27%20opacity%3D%270.8%27%20transform%3D%27rotate%28246%20591.8%20198.6%29%27%2F%3E%3Cellipse%20cx%3D%271.5%27%20cy%3D%27213.2%27%20rx%3D%275.9%27%20ry%3D%272.7%27%20fill%3D%27%237bbf6a%27%20opacity%3D%270.86%27%20transform%3D%27rotate%28333%201.5%20213.2%29%27%2F%3E%3Cellipse%20cx%3D%27303.3%27%20cy%3D%27567.7%27%20rx%3D%278.9%27%20ry%3D%274.0%27%20fill%3D%27%23a8d98f%27%20opacity%3D%270.73%27%20transform%3D%27rotate%28261%20303.3%20567.7%29%27%2F%3E%3Cellipse%20cx%3D%27536.4%27%20cy%3D%2777.3%27%20rx%3D%275.4%27%20ry%3D%272.5%27%20fill%3D%27%235ea36b%27%20opacity%3D%270.85%27%20transform%3D%27rotate%28124%20536.4%2077.3%29%27%2F%3E%3Cellipse%20cx%3D%27370.5%27%20cy%3D%27343.2%27%20rx%3D%275.5%27%20ry%3D%272.5%27%20fill%3D%27%235ea36b%27%20opacity%3D%270.6%27%20transform%3D%27rotate%28334%20370.5%20343.2%29%27%2F%3E%3C%2Fsvg%3E");
  background-size: 520px 520px;
  background-repeat: repeat;
  opacity: 0.8;
  animation: ks-float-around 34s ease-in-out infinite alternate;
}

@keyframes ks-float-around {
  from { transform: translate3d(-3%, 2%, 0) rotate(-2deg); }
  to { transform: translate3d(3%, -2%, 0) rotate(2deg); }
}

/* ── SNP a Dušičky ───────────────────────────────────────────────────────── */

.discover-band.sky-theme-snp {
  background:
    radial-gradient(ellipse 110% 46% at 50% 112%, rgba(255, 150, 60, 0.4), transparent 58%),
    linear-gradient(180deg, #05070f 0%, #0d1220 26%, #1d2033 54%, #3b3040 78%, #6b4438 100%);
}

.discover-band.sky-theme-dusicky {
  background:
    radial-gradient(ellipse 120% 40% at 50% 114%, rgba(255, 180, 100, 0.32), transparent 58%),
    linear-gradient(180deg, #05070d 0%, #0b0f1a 28%, #151c2b 56%, #26303f 80%, #3f4a56 100%);
}

.ks-flame {
  position: absolute;
  bottom: 4%;
  width: 2.6rem;
  height: 4.4rem;
  transform: translateX(-50%);
  background: radial-gradient(circle at 50% 68%, rgba(255, 226, 150, 0.95) 0%, rgba(255, 160, 60, 0.55) 30%, rgba(255, 110, 30, 0.16) 55%, transparent 74%);
  animation: ks-candle-flicker 4.5s ease-in-out infinite;
}

/* Vatra SNP je jedna, ale veľká. */

.ks-theme--snp .ks-flame {
  width: 16rem;
  height: 10rem;
  bottom: 0;
}

.ks-ember {
  position: absolute;
  bottom: 6%;
  width: 4px;
  height: 4px;
  border-radius: 50%;
  background: #ffb457;
  box-shadow: 0 0 9px #ff9a3c;
  animation: ks-ember-rise 11s ease-out infinite;
}

@keyframes ks-ember-rise {
  0% { transform: translate3d(0, 0, 0) scale(0.6); opacity: 0; }
  15% { opacity: 0.95; }
  100% { transform: translate3d(4vw, -62vh, 0) scale(0.9); opacity: 0; }
}

@media (prefers-reduced-motion: reduce) {
  .ks-hearts, .ks-streamer, .ks-eggs, .ks-petals, .ks-greenleaves,
  .ks-flame, .ks-ember {
    animation: none;
  }
  .ks-ember { opacity: 0.7; }
}

/* ══ koniec sviatkov a výročí ══════════════════════════════════════════════ *//* ══ Popiska témy ════════════════════════════════════════════════════════════
   Bez nej je animácia len ozdoba, ktorú návštevník nevie zaradiť —
   sneženie povie „zima", nie „Vianoce". Preto sa téma predstaví aj slovom.
   Návrat: zmazať blok po značku „koniec popisky témy".
   ═════════════════════════════════════════════════════════════════════════ */

.ks-sky-caption {
  position: absolute;
  z-index: 2;
  top: clamp(1rem, 3vh, 2rem);
  right: clamp(1rem, 4vw, 2.5rem);
  margin: 0;
  display: inline-flex;
  align-items: center;
  gap: 0.55rem;
  max-width: min(22rem, 60vw);
  padding: 0.5rem 1rem;
  border-radius: 999px;
  border: 1px solid rgba(255, 255, 255, 0.28);
  background: rgba(10, 20, 38, 0.45);
  -webkit-backdrop-filter: blur(8px);
  backdrop-filter: blur(8px);
  color: #fff;
  font-size: clamp(0.82rem, 1.5vw, 0.95rem);
  font-weight: 600;
  letter-spacing: 0.01em;
  line-height: 1.3;
  text-shadow: 0 1px 6px rgba(0, 0, 0, 0.45);
  animation: ks-caption-in 0.9s ease-out both;
}

.ks-sky-caption i {
  font-size: 1.05em;
  opacity: 0.9;
}

@keyframes ks-caption-in {
  from { opacity: 0; transform: translateY(-0.4rem); }
  to { opacity: 1; transform: none; }
}

/* Na mobile je hore tesno — popiska ide do toku nad nadpis, aby nezavadzala.
   `.discover-band` je flex v RIADKU, takže popiska v toku by bola stĺpec
   vedľa nadpisu a obsah by sa stlačil do pravej polovice (opravené pri
   TODO 132). Pás sa preto zalomí: popiska na vlastnom riadku, obsah pod ňou
   na celú šírku; `align-content: center` drží oboje v strede ako predtým.
   Počas rozhovoru sa popiska skryje — rozhovor potrebuje celú výšku. */

@media (max-width: 640px) {
  .discover-band:has(> .ks-sky-caption) {
    flex-wrap: wrap;
    align-content: center;
  }
  .ks-sky-caption {
    position: static;
    flex: 0 0 auto;
    /* Ľavý okraj = odsadenie `.discover-inner` na mobile (blok „Viac miesta
       pre text na mobile“), aby pilulka lícovala s nadpisom. */
    margin: 1rem 1rem 0;
    max-width: calc(100% - 2rem);
  }
  .discover-band.is-rozhovor > .ks-sky-caption {
    display: none;
  }
}

@media (max-width: 576px) {
  .ks-sky-caption {
    margin-inline: 0.85rem;
    max-width: calc(100% - 1.7rem);
  }
}

@media (prefers-reduced-motion: reduce) {
  .ks-sky-caption { animation: none; }
}

/* Popiska témy ako odkaz (TODO 132/133) — celá pilulka vedie na podujatie.
   Pozadie je tmavšie než pri obyčajnej popiske (0,78 namiesto 0,45): biely
   text tak drží aspoň 7 : 1 aj nad najsvetlejšou dennou oblohou. Štítok
   „Viac o podujatí →“ je biely s tmavým písmom (16 : 1) — hovorí, že sa dá
   kliknúť. Focus je dvojitý prstenec (biely + tmavý), vidieť ho na svetlom
   aj tmavom podklade. z-index 11: `.discover-inner` má na úvodke 10 a jeho
   (priehľadný) rámec by inak klik zachytil.
   Návrat: zmazať po značku „koniec tlačidla témy“ a v DiscoverSearch.tsx
   komponent SkyCaptionLink. */

.ks-sky-caption--link {
  z-index: 11;
  pointer-events: auto;
  flex-wrap: wrap;
  row-gap: 0.35rem;
  column-gap: 0.7rem;
  max-width: min(30rem, 70vw);
  padding: 0.35rem 0.4rem 0.35rem 1rem;
  background: rgba(10, 20, 38, 0.78);
  color: #fff;
  text-decoration: none;
  cursor: pointer;
  transition: background-color 0.15s ease, border-color 0.15s ease;
}

.ks-sky-caption--link:hover {
  background: rgba(10, 20, 38, 0.92);
  border-color: rgba(255, 255, 255, 0.6);
  color: #fff;
}

.ks-sky-caption--link:focus-visible {
  outline: 2px solid #fff;
  outline-offset: 2px;
  box-shadow: 0 0 0 5px #0b1f3a;
}

.ks-sky-caption__text {
  display: inline-flex;
  align-items: center;
  gap: 0.55rem;
}

.ks-sky-caption__more {
  display: inline-flex;
  align-items: center;
  gap: 0.4rem;
  min-height: 1.75rem;
  padding: 0.2rem 0.75rem;
  border-radius: 999px;
  background: #fff;
  color: #0b1f3a;
  font-size: var(--ks-t-s);
  font-weight: 700;
  text-shadow: none;
  white-space: nowrap;
}

.ks-sky-caption__more i {
  font-size: 0.85em;
  opacity: 1;
  transition: transform 0.15s ease;
}

.ks-sky-caption--link:hover .ks-sky-caption__more {
  background: #e6f0ff;
}

.ks-sky-caption--link:hover .ks-sky-caption__more i {
  transform: translateX(2px);
}

/* Bez popisky zostane len biely štítok — tmavá pilulka okolo by bola prázdny rámik. */

.ks-sky-caption--link:not(:has(.ks-sky-caption__text)) {
  padding: 0;
  border: 0;
  background: none;
  -webkit-backdrop-filter: none;
  backdrop-filter: none;
}

@media (prefers-reduced-motion: reduce) {
  .ks-sky-caption--link,
  .ks-sky-caption__more i { transition: none; }
  .ks-sky-caption--link:hover .ks-sky-caption__more i { transform: none; }
}

/* ══ koniec šírky na mobile ══════════════════════════════════════════════ *//* ============================================================================
   ÚVODKA — obsah vyhľadávača nesmie končiť pod horským predelom
   `.sec-ridge--hero svg` má `top: -3.55rem`, čiže hory vystupujú 57 px nad
   hranicu pásu. Na úzkom displeji sa ponuky otázok zalomili do dvoch radov
   a spodný zmizol za horami — namerané 57 px prekryvu pri 360 px šírky
   (na 1280 px to boli 3 px). Preto pásu pridávame spodnú rezervu.
   Návrat: zmazať blok po značku „koniec hero rezervy".
   ========================================================================= *//* Pozor: na širokej obrazovke je pás vysoký na celý výrez a rozdelený flexom,
   takže odsadenie mu uberie priestor a obsah sa posunie **nižšie** — prekryv
   z 3 px narástol na 13. Preto rezerva platí len na úzkych displejoch, kde sa
   ponuky zalamujú do dvoch radov a pás rastie s obsahom. */

@media (max-width: 767.98px) {
  .home-intro .discover-inner {
    /* Plná výška predelu (3,55rem) plus trochu vzduchu. */
    padding-bottom: 4.25rem;
  }
}

/* Nápoveda v poli je písaná animácia s `white-space: nowrap`, takže sa neláme.
   Na úzkom displeji používa komponent kratšie vety (PLACEHOLDERS_MOBIL); toto
   je poistka, aby sa ani dlhé slovo nedostalo spod poľa až na tlačidlo. */

.discover-input-wrap {
  overflow: hidden;
}

/* Poistka pre šírky, kde sa ponuky zalomia a pás je ešte viazaný na výšku
   výrezu (typicky ~1024 px): obsah sa dvíha nad predel. Rovnaký princíp je
   nižšie použitý pri kartách krajov — dekorácia nikdy nesmie prekryť obsah.
   `.sec-ridge--hero` má z-index 9. */

.home-intro .discover-band > .discover-inner {
  position: relative;
  z-index: 10;
}

@media (max-width: 767.98px) {
  /* ── 2. Vzduch nad nadpisom úvodky ─────────────────────────────────── */
  .home-intro .discover-inner {
    padding-top: 3.25rem;
  }
}

/* ══ koniec mojich článkov ═══════════════════════════════════════════════ *//* ============================================================================
   VYHĽADÁVAČ NA ÚVODKE — rozdelenie na dva stĺpce (24. 9.)

   Kým nepadne prvá otázka, je vyhľadávač jeden stĺpec cez celú šírku.
   Po odoslaní sa javisko roztiahne na dve polovice: vľavo rozhovor a vstupné
   pole, vpravo navrhované objekty. Výsledky boli predtým vnútri bubliny
   odpovede, kde súťažili o šírku s textom a pri ďalšej otázke sa odrolovali.

   Návrat: zmazať blok po značku „koniec dvoch stĺpcov“ a v `DiscoverSearch.tsx`
   vrátiť zálohu z `data/backup-views/`.
   ========================================================================= */

.discover-stage {
  display: grid;
  /* Druhý stĺpec je zbalený na nulu, nie skrytý — inak sa nedá animovať. */
  grid-template-columns: minmax(0, 1fr) minmax(0, 0fr);
  gap: 0;
  align-items: stretch;
  min-height: 0;
  /* Animuje sa mriežka, nie šírka stĺpcov: obsah si tak drží vlastné
     rozmery a počas prechodu sa nepreteká a nelámu sa v ňom riadky. */
  transition:
    grid-template-columns 0.65s cubic-bezier(0.22, 1, 0.36, 1),
    gap 0.65s cubic-bezier(0.22, 1, 0.36, 1);
}

.discover-stage.is-split {
  grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
  gap: clamp(1rem, 2.5vw, 2.25rem);
}

.discover-stage > .discover-chat {
  min-width: 0;
  min-height: 0;
}

/*
 * `.discover-chat` bol priamym flex potomkom `.discover-inner` a pravidlo
 * `.discover-band .discover-chat.is-open { flex: 1 1 auto }` mu dávalo výšku
 * celého pásu. Po vložení do mriežky ten flex už neplatí — roztiahnuť sa musí
 * javisko. Bez toho má pravý panel nulovú výšku a `height: 100%` v ňom nemá
 * z čoho počítať.
 */

.discover-band.is-rozhovor .discover-stage {
  flex: 1 1 auto;
  min-height: 0;
}

/* ── pravý stĺpec ──────────────────────────────────────────────────────── */

.discover-navrhy {
  min-width: 0;
  min-height: 0;
  /* Kým je stĺpec zbalený, obsah sa nesmie vyliať do ľavej polovice. */
  overflow: hidden;
  opacity: 0;
  transition: opacity 0.45s ease 0.2s;
}

.discover-stage.is-split .discover-navrhy {
  opacity: 1;
}

/*
 * Panel je **biela karta, rovnaká ako rozhovor vedľa**, a je to nutnosť, nie
 * vkus: položky výsledkov (`.ks-chat-hit`, `.ks-chat-hits-h`, `.ks-chat-pick`)
 * majú farby počítané na biely podklad — tmavomodrý názov, sivý popis, červený
 * nadpis skupiny. Na priesvitnom podklade nad modrým pásom z nich nezostalo nič
 * čitateľné. Kto sem bude pridávať ďalší obsah, musí rátať s bielym pozadím.
 */

.discover-navrhy__in {
  display: flex;
  flex-direction: column;
  height: 100%;
  min-height: 0;
  padding: 0.9rem 1rem 1rem;
  border-radius: 16px;
  background: #fff;
  box-shadow: 0 18px 44px rgba(0, 0, 0, 0.3);
}

.discover-navrhy__hd {
  display: flex;
  align-items: baseline;
  justify-content: space-between;
  gap: 0.6rem;
  margin-bottom: 0.6rem;
}

.discover-navrhy__eye {
  font-size: var(--ks-t-2xs);
  font-weight: 800;
  letter-spacing: 0.1em;
  text-transform: uppercase;
  color: var(--ks-soft);
}

.discover-navrhy__load {
  font-size: var(--ks-t-xs);
  font-weight: 600;
  color: var(--ks-blue);
  animation: navrhy-puls 1.4s ease-in-out infinite;
}

.discover-navrhy__prazdne {
  margin: 0;
  color: var(--ks-soft);
  font-size: var(--ks-t-sm);
  line-height: 1.55;
}

.discover-navrhy__zoznam {
  flex: 1 1 auto;
  min-height: 0;
  overflow-y: auto;
  overscroll-behavior: contain;
  scrollbar-width: thin;
  scrollbar-color: rgba(13, 52, 96, 0.25) transparent;
  padding-right: 0.25rem;
}

.discover-navrhy__zoznam::-webkit-scrollbar {
  width: 8px;
}

.discover-navrhy__zoznam::-webkit-scrollbar-thumb {
  background: rgba(13, 52, 96, 0.25);
  border-radius: 999px;
}

/* Hlavička skupiny („Objekty 10“) sa pri rolovaní prilepí hore, aby bolo
   vidieť, v ktorej skupine sa človek nachádza. */

.discover-navrhy__zoznam .ks-chat-hits-h {
  position: sticky;
  top: 0;
  z-index: 1;
  background: #fff;
  padding-block: 0.3rem;
}

/* ── nábeh položiek ────────────────────────────────────────────────────── *//* Každá položka príde s malým oneskorením podľa poradia, takže zoznam sa
   „posype“ zhora nadol namiesto toho, aby naskočil naraz. Strop na 12 —
   pri dlhšom zozname by posledné čakali priveľa. */

.discover-navrhy__item {
  animation: navrhy-prichod 0.55s cubic-bezier(0.22, 1, 0.36, 1) backwards;
  animation-delay: calc(min(var(--i, 0), 12) * 55ms);
}

@keyframes navrhy-prichod {
  from {
    opacity: 0;
    transform: translateY(10px) scale(0.985);
  }
  to {
    opacity: 1;
    transform: none;
  }
}

@keyframes navrhy-puls {
  0%, 100% { opacity: 0.45; }
  50% { opacity: 1; }
}

/* ── úzke displeje ─────────────────────────────────────────────────────── *//* Dve polovice majú zmysel od šírky, kde sa do nich zmestí veta aj karta.
   Nižšie idú pod seba — panel pod vstupné pole, nech je odpoveď hneď vidieť. */

@media (max-width: 991.98px) {
  .discover-stage,
  .discover-stage.is-split {
    grid-template-columns: minmax(0, 1fr);
    gap: 0;
  }
  .discover-stage.is-split {
    row-gap: 1rem;
  }
  .discover-navrhy {
    /* Na výšku sa animuje z nuly — `grid-template-rows` by tu robil to isté
       čo stĺpce hore, ale jeden zbalený riadok stačí zvládnuť maximálnou
       výškou, lebo obsah je rolovateľný. */
    max-height: 0;
    transition: max-height 0.65s cubic-bezier(0.22, 1, 0.36, 1), opacity 0.45s ease 0.2s;
  }
  .discover-stage.is-split .discover-navrhy {
    max-height: 60vh;
  }
}

@media (prefers-reduced-motion: reduce) {
  .discover-stage,
  .discover-navrhy,
  .discover-navrhy__item,
  .discover-navrhy__load {
    transition: none;
    animation: none;
  }
}

/* ══ koniec dvoch stĺpcov ════════════════════════════════════════════════ *//* ============================================================================
   VYHĽADÁVAČ — nábeh bublín rozhovoru (24. 9.)

   Panel návrhov vpravo už nabieha animovane, ale text v ľavom stĺpci
   naskakoval skokom. Bublina otázky prichádza sprava (je pri pravom okraji),
   bublina odpovede zľava spolu s avatarom — z tej strany, kde stoja.

   Prehráva sa **raz, pri vzniku uzla**. Staršie otázky ostávajú v DOM
   nedotknuté, takže sa pri ďalšej otázke neprehrávajú znova; bublina odpovede
   sa animuje, lebo pri dopísaní odpovede vystrieda bublinu „Hľadám…“ a vzniká
   nanovo.

   Návrat: zmazať blok po značku „koniec nábehu bublín“.
   ========================================================================= */

.ks-chat-row--user .ks-chat-bubble {
  animation: bublina-sprava 0.5s cubic-bezier(0.22, 1, 0.36, 1) backwards;
}

.ks-chat-row--bot {
  animation: bublina-zlava 0.55s cubic-bezier(0.22, 1, 0.36, 1) backwards;
}

/* Odpoveď necháme chvíľu vydýchnuť po tom, ako zmizne „Hľadám…“ — bez toho
   sa nová bublina objaví v tej istej stotine sekundy a splynie s ňou. */

.ks-chat-row--bot .ks-chat-bubble:not(.ks-chat-bubble--typing) {
  animation: bublina-obsah 0.5s ease backwards 0.08s;
}

/* Ponuky ďalších otázok patria k odpovedi, tak prídu tesne po nej. */

.ks-chat-follow .discover-chip {
  animation: bublina-obsah 0.45s ease backwards 0.22s;
}

@keyframes bublina-sprava {
  from {
    opacity: 0;
    transform: translate(14px, 8px) scale(0.97);
  }
  to {
    opacity: 1;
    transform: none;
  }
}

@keyframes bublina-zlava {
  from {
    opacity: 0;
    transform: translate(-14px, 8px) scale(0.97);
  }
  to {
    opacity: 1;
    transform: none;
  }
}

@keyframes bublina-obsah {
  from {
    opacity: 0;
    transform: translateY(6px);
  }
  to {
    opacity: 1;
    transform: none;
  }
}

@media (prefers-reduced-motion: reduce) {
  .ks-chat-row--user .ks-chat-bubble,
  .ks-chat-row--bot,
  .ks-chat-row--bot .ks-chat-bubble:not(.ks-chat-bubble--typing),
  .ks-chat-follow .discover-chip {
    animation: none;
  }
}

.discover-navrhy__rozmysla { display: flex; align-items: center; gap: 0.75rem; padding: 0.4rem 0; }

.discover-navrhy__tvar { width: 64px; height: 64px; flex: 0 0 auto; }

.discover-navrhy__rozmysla .discover-navrhy__prazdne { margin: 0; }

.ks-kviz-pozvanka__otazka { margin: 0; font-family: 'Source Serif 4', Georgia, serif; font-size: 1.05rem; font-weight: 800; line-height: 1.2; color: var(--ks-bluedk); }

.ks-kviz-pozvanka__pod { margin: 0.15rem 0 0.45rem; font-size: var(--ks-t-xs); color: var(--ks-soft); }

.ks-kviz-pozvanka__btn {
  display: inline-flex;
  align-items: center;
  gap: 0.4rem;
  padding: 0.4rem 0.85rem;
  border-radius: 999px;
  background: var(--grad-red);
  color: #fff;
  font-size: var(--ks-t-s);
  font-weight: 700;
  text-decoration: none;
}

.ks-kviz-pozvanka__btn:hover { color: #fff; filter: brightness(1.05); }

.ks-kviz-pozvanka__zavriet {
  position: absolute;
  top: 0.35rem;
  right: 0.35rem;
  width: 28px;
  height: 28px;
  border: 0;
  border-radius: 50%;
  background: transparent;
  color: var(--ks-soft);
  cursor: pointer;
}

.ks-kviz-pozvanka__zavriet:hover { background: var(--ks-bluelt); color: var(--ks-text); }

@media (max-width: 576px) {
  .ks-kviz-pozvanka { left: 0.6rem; right: 0.6rem; bottom: 0.6rem; max-width: none; }
}

/* ══ AI VYHĽADÁVAČ — okienko ako karta (6. 10. 2026) ═══════════════════════
   Pole, prepínač typu a filtre v jednej bielej karte; bačik namiesto ikony.
   Predtým sivá priesvitná pilulka a pod ňou dva rady tlačidiel.
   Návrat: data/backup-css/style-pred-ai-vyhladavac-2026-10-06.css */

.discover-band .discover-form.discover-composer {
  margin-top: 0.35rem;
  padding: 0.45rem 0.45rem 0.35rem;
  background: rgba(255, 255, 255, 0.97);
  border: 1px solid rgba(255, 255, 255, 0.9);
  border-radius: 22px;
  box-shadow: 0 18px 48px rgba(3, 10, 30, 0.38), 0 2px 6px rgba(3, 10, 30, 0.18);
  transition: box-shadow 0.2s ease;
}

.discover-band .discover-form.discover-composer:focus-within {
  box-shadow: 0 0 0 4px rgba(245, 158, 11, 0.45), 0 18px 48px rgba(3, 10, 30, 0.42);
}

.discover-band .discover-chat:not(.is-landing) .discover-form.discover-composer {
  border-top: 1px solid rgba(255, 255, 255, 0.9);
}

.discover-band .discover-form.discover-composer .discover-input-row,
.discover-band .discover-form.discover-composer .discover-input-row:focus-within {
  background: transparent;
  border: 0;
  border-radius: 16px;
  box-shadow: none;
  padding: 0.2rem 0.2rem 0.2rem 0.15rem;
  backdrop-filter: none;
  -webkit-backdrop-filter: none;
}

.discover-band .discover-form.discover-composer .discover-input-row input {
  font-size: 1.08rem;
  font-weight: 600;
  color: var(--ks-text);
}

.discover-band .discover-form.discover-composer .discover-typehint { color: #8a8f99; }

.discover-avatar {
  display: inline-grid;
  place-items: center;
  flex: 0 0 auto;
  width: 44px;
  height: 44px;
  margin-right: 0.15rem;
  border-radius: 50%;
  background: linear-gradient(180deg, #fff7ed, #fde7cf);
  box-shadow: inset 0 0 0 1px rgba(194, 65, 12, 0.12);
}

.discover-avatar__tvar { width: 38px; height: 38px; }

/* Riadok s poľom neorezáva — inak by tieň tlačidla vyzeral ako bledý rámik. */

.discover-band .discover-form.discover-composer .discover-input-row { overflow: visible; }

.discover-band .discover-form.discover-composer .discover-input-wrap { overflow: hidden; }

.discover-band .discover-form.discover-composer .discover-submit {
  min-height: 46px;
  padding: 0 1.15rem;
  border-radius: 14px;
  box-shadow: 0 3px 8px rgba(208, 2, 27, 0.25);
}

/* spodná lišta karty: segmentový prepínač typu + filtre */

.discover-band .discover-toolbar {
  display: flex;
  align-items: center;
  justify-content: space-between;
  flex-wrap: wrap;
  gap: 0.4rem;
  margin: 0.35rem 0.2rem 0;
  padding: 0.45rem 0 0.1rem;
  border-top: 1px solid #eef0f4;
}

.discover-seg {
  display: inline-flex;
  gap: 2px;
  padding: 3px;
  border-radius: 999px;
  background: #f1f3f7;
}

.discover-band .discover-composer .discover-seg .map-btn.discover-chip,
.discover-band .discover-composer .discover-toolbar .map-btn.discover-filtre-btn {
  min-height: 0;
  padding: 0.32rem 0.75rem;
  border: 0;
  border-radius: 999px;
  background: transparent;
  color: #4b5563;
  font-size: var(--ks-t-s);
  font-weight: 700;
  box-shadow: none;
}

.discover-band .discover-composer .discover-seg .map-btn.discover-chip:hover,
.discover-band .discover-composer .discover-toolbar .map-btn.discover-filtre-btn:hover {
  background: rgba(13, 52, 96, 0.07);
  color: var(--ks-bluedk);
}

.discover-band .discover-composer .discover-seg .map-btn.discover-chip.active {
  background: #fff;
  color: var(--ks-bluedk);
  box-shadow: 0 1px 3px rgba(13, 52, 96, 0.18);
}

.discover-band .discover-composer .discover-toolbar .map-btn.discover-filtre-btn.active {
  background: var(--ks-bluelt);
  color: var(--ks-bluedk);
}

/* filtre vnútri karty — tmavý text na bielej */

.discover-band .discover-composer .discover-filters {
  margin: 0.4rem 0.2rem 0.2rem;
  padding-top: 0.6rem;
  border-top: 1px solid #eef0f4;
}

.discover-band .discover-composer .discover-filters label { color: #6b7280; }

.discover-band .discover-composer .discover-filters select,
.discover-band .discover-composer .discover-filters input[type='date'] {
  border: 1px solid #e3e7ee;
  background: #f9fafb;
  color: var(--ks-text);
}

/* návrhy pod kartou */

.discover-band .discover-starters { align-items: center; }

.discover-starters__label {
  margin-right: 0.15rem;
  font-size: var(--ks-t-xs);
  font-weight: 700;
  letter-spacing: 0.04em;
  color: rgba(255, 255, 255, 0.7);
}

.discover-band .discover-starters .map-btn.discover-chip {
  background: rgba(255, 255, 255, 0.1);
  border-color: rgba(255, 255, 255, 0.18);
  color: rgba(255, 255, 255, 0.9);
}

.discover-band .discover-starters .map-btn.discover-chip:hover {
  background: rgba(255, 255, 255, 0.2);
  color: #fff;
}

@media (max-width: 575.98px) {
  .discover-band .discover-form.discover-composer { border-radius: 18px; }
  .discover-avatar { width: 38px; height: 38px; }
  .discover-avatar__tvar { width: 32px; height: 32px; }
  .discover-band .discover-form.discover-composer .discover-submit { min-height: 42px; padding: 0 0.95rem; }
  .discover-starters__label { width: 100%; }
  /* Lišta v jednom riadku: prepínač bez ikon, Filtre len ikonou (názov
     ostáva čítačke — text je skrytý opticky, nie display: none). */
  .discover-band .discover-toolbar { flex-wrap: nowrap; }
  .discover-band .discover-composer .discover-seg .map-btn.discover-chip { padding: 0.32rem 0.6rem; }
  .discover-band .discover-composer .discover-seg .map-btn.discover-chip i { display: none; }
  .discover-band .discover-composer .discover-toolbar .map-btn.discover-filtre-btn { padding: 0.4rem 0.6rem; }
  .discover-filtre-text {
    position: absolute;
    width: 1px;
    height: 1px;
    overflow: hidden;
    clip: rect(0 0 0 0);
    white-space: nowrap;
  }
}

/* ── Úvodka: počas rozhovoru so sprievodcom zbaliť nadpis a perex ─────── */

@media (max-width: 767.98px) {
  .discover-band.is-rozhovor .discover-lead {
    display: none;
  }
  /* Nadpis ostáva pre čítačky (h1 stránky), opticky zmizne. */
  .discover-band.is-rozhovor .discover-title {
    position: absolute;
    width: 1px;
    height: 1px;
    overflow: hidden;
    clip: rect(0 0 0 0);
    white-space: nowrap;
  }
}

/* ── Druhé kolo (nezávislá kontrola 9. 10. 2026) ───────────────────── *//* Odpoveď sprievodcu na mobile bez vnoreného rolovania — rastie so stránkou. */

@media (max-width: 767.98px) {
  .discover-band .discover-chat.is-open .discover-thread {
    max-height: none;
    overflow: visible;
  }
}

/* ══ koniec auditu UX ════════════════════════════════════════════════════ *//* ============================================================================
   PRÍBEH VÍKEND — animácia „Kam s deťmi cez víkend?“ na úvodke (9. 10. 2026)
   components/PribehVikend.tsx (scény) a PribehVikendHero.tsx (umiestnenie).
   Návrat: zmazať blok po značku „koniec príbehu víkend“.
   ========================================================================= */

.pv-hero {
  position: absolute;
  z-index: 2;
  top: 50%;
  right: clamp(1.25rem, 4vw, 2.25rem);
  width: min(36%, 470px);
  transform: translateY(-46%);
}

.discover-band.is-rozhovor .pv-hero {
  display: none;
}

.pv-obraz {
  position: relative;
  line-height: 0;
}

.pv-obraz svg {
  display: block;
  width: 100%;
  height: auto;
}

.pv-text {
  font-family: var(--ks-font-text);
  font-size: 12.5px;
  font-weight: 600;
  fill: #1c2b3d;
}

.pv-text--b { font-weight: 800; }

.pv-text--w { fill: #fff; font-size: 11px; }

.pv-text--soft { fill: #5b6b80; font-size: 11.5px; font-weight: 600; }

.pv-text--nadpis { font-family: var(--ks-font-nadpis); font-size: 13px; font-weight: 800; }

.pv-text--koniec { font-family: var(--ks-font-nadpis); font-size: 27px; font-weight: 800; fill: #fff; }

.pv-pole {
  font-family: var(--ks-font-text);
  font-size: 12px;
  font-weight: 600;
  line-height: 1.3;
  color: #1c2b3d;
}

.pv-kurzor {
  display: inline-block;
  width: 1.5px;
  height: 13px;
  margin-left: 1px;
  vertical-align: -2px;
  background: #1a5fa8;
  animation: pv-blik 0.8s steps(1) infinite;
}

.pv-bacik,
.pv-bacik svg {
  width: 100%;
  height: 100%;
}

.pv-cta {
  position: absolute;
  /* Na stred bez transform — ten patrí animácii pv-objav a prebil by ho. */
  left: 0;
  right: 0;
  bottom: 22%;
  width: fit-content;
  margin: 0 auto;
  display: inline-flex;
  align-items: center;
  gap: 0.5rem;
  min-height: 44px;
  padding: 0.6rem 1.4rem;
  border: 0;
  border-radius: 999px;
  background: var(--grad-red, #c8102e);
  color: #fff;
  font-weight: 800;
  font-size: var(--ks-t-sm);
  line-height: 1;
  box-shadow: 0 8px 22px rgba(200, 16, 46, 0.45);
  animation: pv-objav 0.5s 0.4s both;
}

.pv-titulok {
  margin: 0;
  min-height: 3.2em;
  padding: 0.6rem 0.9rem 0.2rem;
  font-size: var(--ks-t-xs);
  line-height: 1.4;
  color: #43536a;
}

.pv-ovladanie {
  display: flex;
  align-items: center;
  gap: 0.4rem;
  padding: 0.25rem 0.6rem 0.6rem;
}

.pv-btn {
  flex: 0 0 auto;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 36px;
  height: 36px;
  border: 0;
  border-radius: 50%;
  background: #0d3460;
  color: #fff;
  font-size: 0.85rem;
}

.pv-btn--maly {
  width: 30px;
  height: 30px;
  background: #eef3f8;
  color: #0d3460;
  font-size: 0.75rem;
}

.pv-casova-os {
  flex: 1 1 auto;
  display: flex;
  gap: 3px;
}

.pv-usek {
  flex: 1 1 0;
  height: 14px;
  padding: 5px 0;
  border: 0;
  background: transparent;
  cursor: pointer;
}

.pv-usek span {
  display: block;
  height: 4px;
  border-radius: 2px;
  background: #1a5fa8;
  transform-origin: left center;
}

.pv-usek::before {
  content: '';
  display: block;
  height: 4px;
  margin-bottom: -4px;
  border-radius: 2px;
  background: #dbe4ee;
}

.pv-cas {
  flex: 0 0 auto;
  min-width: 2.4rem;
  font-size: var(--ks-t-2xs);
  font-weight: 700;
  color: #5b6b80;
  font-variant-numeric: tabular-nums;
  text-align: right;
}

/* Na úzkom displeji: tlačidlo pod návrhmi a okno. *//* Zvýraznené (10. 10. 2026): priesvitné splývalo s návrhmi otázok vedľa. */

.pv-otvor {
  display: inline-flex;
  align-items: center;
  gap: 0.5rem;
  min-height: 44px;
  padding: 0.5rem 1.1rem 0.5rem 0.6rem;
  border: 0;
  border-radius: 999px;
  background: #fff;
  color: #0d3460;
  font-weight: 800;
  font-size: var(--ks-t-sm);
  box-shadow: 0 6px 18px rgba(0, 0, 0, 0.28);
  animation: pv-otvor-pulz 2.4s ease-in-out infinite;
}

.pv-otvor i {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 30px;
  height: 30px;
  border-radius: 50%;
  background: var(--grad-red, #c8102e);
  color: #fff;
  font-size: 0.75rem;
  padding-left: 2px;
}

.pv-otvor span { color: #5b6b80; font-weight: 600; }

@keyframes pv-otvor-pulz {
  0%, 100% { box-shadow: 0 6px 18px rgba(0, 0, 0, 0.28), 0 0 0 0 rgba(255, 255, 255, 0.55); }
  50% { box-shadow: 0 6px 18px rgba(0, 0, 0, 0.28), 0 0 0 8px rgba(255, 255, 255, 0); }
}

@media (prefers-reduced-motion: reduce) {
  .pv-otvor { animation: none; }
}

.pv-okno {
  position: fixed;
  inset: 0;
  z-index: 3000;
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 1rem;
  background: rgba(5, 18, 36, 0.6);
  backdrop-filter: blur(4px);
}

.pv-okno__karta {
  position: relative;
  width: min(100%, 560px);
}

.pv-okno__zavri {
  position: absolute;
  top: -14px;
  right: -6px;
  z-index: 2;
  width: 44px;
  height: 44px;
  border: 0;
  border-radius: 50%;
  background: #fff;
  color: #0d3460;
  font-size: 1.1rem;
  box-shadow: 0 6px 18px rgba(0, 0, 0, 0.3);
}

/* ── pohyb (beží len pri .pv-hra) ─────────────────────────────────────── */

.pv-bublina,
.pv-karta,
.pv-objav {
  opacity: 0;
  animation: pv-objav 0.45s cubic-bezier(0.22, 1, 0.36, 1) both;
  transform-box: fill-box;
  transform-origin: center bottom;
}

.pv-skok {
  animation: pv-skok 0.55s ease-in-out infinite alternate;
  transform-box: fill-box;
}

.pv-skok--2 { animation-delay: 0.27s; }

.pv-skok .pv-ruka-l,
.pv-skok .pv-ruka-p {
  transform-box: fill-box;
  transform-origin: center top;
  animation: pv-ruky 0.55s ease-in-out infinite alternate;
}

.pv-pot { animation: pv-pot 1.4s ease-in infinite; }

.pv-dazd rect { animation: pv-kvapka 0.9s linear infinite; }

.pv-bodky circle { animation: pv-bodka 1s ease-in-out infinite; }

.pv-bodky circle:nth-child(2) { animation-delay: 0.15s; }

.pv-bodky circle:nth-child(3) { animation-delay: 0.3s; }

.pv-bodky { animation: pv-zmiz 0.3s 2.2s both; }

.pv-klik { animation: pv-klik 0.5s both; transform-box: fill-box; transform-origin: center; }

.pv-smyk { animation: pv-smyk 2.6s cubic-bezier(0.5, 0, 0.6, 1) infinite; }

.pv-konfety rect { animation: pv-konfeta 2.2s ease-in infinite; }

.pv-stop * { animation-play-state: paused !important; }

@keyframes pv-objav { from { opacity: 0; transform: translateY(8px) scale(0.96); } to { opacity: 1; transform: none; } }

@keyframes pv-zmiz { to { opacity: 0; } }

@keyframes pv-skok { from { transform: translateY(0); } to { transform: translateY(-26px); } }

@keyframes pv-ruky { from { transform: rotate(10deg); } to { transform: rotate(-150deg); } }

@keyframes pv-pot { 0% { opacity: 0; transform: translateY(-4px); } 30% { opacity: 1; } 100% { opacity: 0; transform: translateY(8px); } }

@keyframes pv-kvapka { from { transform: translateY(-30px); opacity: 0; } 20% { opacity: 1; } to { transform: translateY(60px); opacity: 0; } }

@keyframes pv-bodka { 0%, 100% { transform: translateY(0); } 50% { transform: translateY(-6px); } }

@keyframes pv-klik { 0% { transform: scale(1); } 40% { transform: scale(0.8); } 100% { transform: scale(1); } }

@keyframes pv-smyk { 0%, 15% { transform: translate(0, 0); } 70% { transform: translate(110px, 112px); } 100% { transform: translate(110px, 112px); opacity: 0; } }

@keyframes pv-konfeta { from { transform: translateY(-20px) rotate(0); opacity: 0; } 20% { opacity: 1; } to { transform: translateY(120px) rotate(200deg); opacity: 0; } }

@keyframes pv-blik { 50% { opacity: 0; } }

/* ══ koniec príbehu víkend ═══════════════════════════════════════════════ *//* ============================================================================
   VOĽBY — scéna (10. 10. 2026): škola s volebnou miestnosťou, zástava, urna
   a voliči. components/sky/VolbyScena.tsx. Rovnaké miesto a mierka ako futbal.
   Návrat: zmazať blok po značku „koniec volieb — scéna“ (ostanú stuhy).
   ========================================================================= */

.ks-theme--volby {
  z-index: 1;
}

.ks-vo-box {
  position: absolute;
  left: max(calc(50vw + 9.5rem), 43.5rem);
  right: 1.25rem;
  top: 5.25rem;
  bottom: 4.1rem;
  overflow: hidden;
  container-type: size;
  pointer-events: none;
}

.ks-vo {
  position: absolute;
  right: 0;
  bottom: 0;
  width: 50em;
  height: 30em;
  font-size: 9px;
  font-size: min(2cqw, 3.333cqh, 15px);
  line-height: 1;
}

.ks-vo > * {
  position: absolute;
}

.ks-vo svg {
  display: block;
}

.ks-vo-kulisa {
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  -webkit-mask-image: linear-gradient(90deg, transparent 0, #000 3em, #000 calc(100% - 1em), transparent 100%);
  mask-image: linear-gradient(90deg, transparent 0, #000 3em, #000 calc(100% - 1em), transparent 100%);
}

.ks-vo-chodnik { fill: #c9c2b5; }

.ks-vo-obrubnik { stroke: #a39b8c; stroke-width: 2; }

.ks-vo-strecha { fill: #8c4a3a; }

.ks-vo-fasada { fill: #efe6d6; }

.ks-vo-rimsa { fill: #d8cbb4; }

.ks-vo-okno { fill: #9cc3df; }

.ks-vo-priecka,
.ks-vo-priecka-dvere { stroke: #efe6d6; stroke-width: 2.5; fill: #efe6d6; }

.ks-vo-dvere { fill: #5b3a29; }

.ks-vo-schod { fill: #b8ad99; }

.ks-vo-lampa { fill: #d9d2c4; }

.ks-vo-napis { fill: #0b4ea2; }

.ks-vo-napis-text {
  fill: #fff;
  font-family: var(--ks-font-text);
  font-size: 9.5px;
  font-weight: 800;
  letter-spacing: 0.04em;
}

.ks-vo-stoziar { fill: #8d99a8; }

.ks-vo-stol { fill: #7a5a40; }

/* noc: okná a lampa svietia, fasáda stmavne */

.sky-night .ks-vo-fasada { fill: #8b8578; }

.sky-night .ks-vo-rimsa { fill: #77715f; }

.sky-night .ks-vo-strecha { fill: #4d2a22; }

.sky-night .ks-vo-okno { fill: #ffd36b; }

.sky-night .ks-vo-lampa { fill: #fff2b0; filter: drop-shadow(0 0 4px #ffe58a); }

.sky-night .ks-vo-chodnik { fill: #6d6a63; }

.sky-night .ks-vo-priecka,
.sky-night .ks-vo-priecka-dvere { stroke: #8b8578; fill: #8b8578; }

/* zástava na stožiari — vlaje */

.ks-vo-zastava {
  left: 30.4em;
  top: 3.5em;
  width: 7.2em;
  height: 4.8em;
  transform-origin: left center;
  animation: ks-vo-vlaj 3.2s ease-in-out infinite alternate;
}

.ks-vo-zastava svg {
  width: 100%;
  height: 100%;
}

/* tabuľa s hodinami */

.ks-vo-tabula {
  /* Vpravo hore vedľa zástavy — nižšie by ju prekrývala fajka nad urnou. */
  left: 38.6em;
  top: 2.2em;
  width: 11em;
  padding: 0.8em 1em;
  border-radius: 0.6em;
  background: rgba(255, 255, 255, 0.94);
  box-shadow: 0 0.4em 1.2em rgba(0, 0, 0, 0.25);
  text-align: center;
  font-family: var(--ks-font-text);
}

.ks-vo-tabula-nadpis {
  display: block;
  font-family: var(--ks-font-nadpis);
  font-size: 2em;
  font-weight: 800;
  color: #0b4ea2;
}

.ks-vo-tabula-text {
  display: block;
  margin-top: 0.4em;
  font-size: 1em;
  font-weight: 700;
  color: #1c2b3d;
}

.ks-vo-tabula-cas {
  display: block;
  margin-top: 0.15em;
  font-size: 1.35em;
  font-weight: 800;
  color: #ee1c25;
  font-variant-numeric: tabular-nums;
}

/* urna — každé 4 s, keď do nej padne obálka, sa rozžiari */

.ks-vo-urna {
  left: 36.2em;
  top: 18.3em;
  width: 7.6em;
  height: 5.9em;
  animation: ks-vo-urna 4s ease-out infinite;
}

.ks-vo-urna svg { width: 100%; height: 100%; }

.ks-vo-urna-sklo { fill: rgba(225, 240, 252, 0.72); stroke: #0b4ea2; stroke-width: 2; }

.ks-vo-urna-veko { fill: #0b4ea2; }

.ks-vo-fajka {
  left: 38.9em;
  top: 14.4em;
  width: 2.4em;
  height: 2.4em;
  border-radius: 50%;
  background: #1e9e5a;
  color: #fff;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 1em;
  opacity: 0;
  animation: ks-vo-fajka 4s ease-out infinite;
}

.ks-vo-fajka i { font-size: 1.3em; }

/* voliči: zprava k urne, vhodiť obálku, doľava do dverí školy */

.ks-vo-volic {
  left: 0;
  bottom: 3.8em;
  width: calc(var(--h) / 2);
  height: var(--h);
  opacity: 0;
  will-change: transform, opacity;
  animation: ks-vo-cesta 12s linear infinite;
}

.ks-vo-postava {
  width: 100%;
  height: 100%;
}

.ks-vo-noha {
  transform-box: fill-box;
  transform-origin: center top;
  animation: ks-vo-krok 0.55s ease-in-out infinite alternate;
}

.ks-vo-noha--p { animation-direction: alternate-reverse; }

.ks-vo-obalka {
  left: -0.5em;
  top: 46%;
  width: 1.4em;
  height: 0.95em;
  border-radius: 0.12em;
  background: #fff8e6;
  box-shadow: inset 0 0 0 0.08em #c9b98f;
  animation: ks-vo-obalka 12s linear infinite;
}

.ks-vo-volic--pani .ks-vo-obalka { top: 48%; }

@keyframes ks-vo-cesta {
  0% { transform: translateX(53em); opacity: 0; }
  3% { opacity: 1; }
  20% { transform: translateX(44.4em); }
  33% { transform: translateX(44.4em); }
  66% { transform: translateX(15.2em); opacity: 1; }
  71%, 100% { transform: translateX(15.2em); opacity: 0; }
}

@keyframes ks-vo-obalka {
  0%, 23% { transform: translate(0, 0); opacity: 1; }
  27% { transform: translate(-2.4em, -2.6em) rotate(-12deg); opacity: 1; }
  31% { transform: translate(-3.1em, -1.6em) rotate(-90deg) scale(0.9); opacity: 0; }
  100% { transform: translate(-3.1em, -1.6em); opacity: 0; }
}

@keyframes ks-vo-urna {
  0%, 74%, 100% { filter: none; transform: none; }
  80% { filter: drop-shadow(0 0 0.6em rgba(255, 255, 255, 0.95)); transform: translateY(0.08em); }
}

@keyframes ks-vo-fajka {
  0%, 76% { opacity: 0; transform: translateY(0.6em) scale(0.6); }
  82% { opacity: 1; transform: none; }
  95% { opacity: 1; transform: translateY(-0.6em); }
  100% { opacity: 0; transform: translateY(-1em); }
}

@keyframes ks-vo-krok { from { transform: rotate(16deg); } to { transform: rotate(-16deg); } }

@keyframes ks-vo-vlaj { from { transform: skewY(-3deg) scaleX(0.97); } to { transform: skewY(3deg) scaleX(1); } }

/* po otvorení odpovede scéna zhasne a pohyb sa pozastaví (ako futbal) */

.discover-band.sky-theme-volby.is-rozhovor .ks-vo-box {
  opacity: 0;
  transition: opacity 0.4s ease;
}

.discover-band.sky-theme-volby.is-rozhovor .ks-vo-box * {
  animation-play-state: paused;
}

/* pod 1000 px pod návrhmi otázok, nad horami (ako futbal) */

@media (max-width: 999.98px) {
  .discover-band.sky-theme-volby {
    --vo-mh: clamp(8.5rem, 24vw, 11rem);
  }
  .discover-band.sky-theme-volby:not(.is-rozhovor) .discover-inner {
    padding-bottom: calc(var(--vo-mh) + 4.3rem);
  }
  .ks-vo-box {
    left: 0.75rem;
    right: 0.75rem;
    top: auto;
    bottom: 3.7rem;
    height: var(--vo-mh);
  }
  .ks-vo {
    font-size: 7px;
    font-size: min(2cqw, 4.76cqh);
  }
}

@media (prefers-reduced-motion: reduce) {
  .ks-vo-box .ks-vo,
  .ks-vo-box .ks-vo * {
    animation: none;
  }
  .ks-vo-fajka { opacity: 1; }
}

/* ══ koniec volieb — scéna ═══════════════════════════════════════════════ *//* ============================================================================
   SCÉNY TÉM NA MOBILE — nad vyhľadávačom, vycentrované (10. 10. 2026)
   Na širokej obrazovke je scéna vpravo dole (.ks-theme-scena v SkyScene),
   do 1000 px ju DiscoverSearch vykreslí medzi nadpis a vyhľadávač
   (.discover-scena-mobil). Register scén: components/sky/sceny.tsx.
   Predtým bola na mobile dole pod návrhmi otázok a pás mal dole rezervu
   (padding-bottom v blokoch jednotlivých tém) — tú tu rušíme.
   Návrat: zmazať blok po značku „koniec scén na mobile“.
   ========================================================================= */

.ks-theme-scena {
  z-index: 1;
}

.discover-scena-mobil {
  display: none;
}

@media (max-width: 999.98px) {
  .ks-theme-scena {
    display: none;
  }
  .discover-scena-mobil {
    display: block;
    position: relative;
    height: clamp(9.5rem, 50vw, 15rem);
    margin: -0.4rem 0 1rem;
  }
  /* Box scény (.ks-XX-box) sa v blokoch tém umiestňuje absolútne k pásu —
     tu ho natiahneme na slot; vnútro (50 × 30 em) na stred. */
  .discover-scena-mobil > div {
    position: absolute !important;
    inset: 0 !important;
    width: auto !important;
    height: auto !important;
    opacity: 1 !important;
  }
  .discover-scena-mobil > div > div {
    left: 50% !important;
    right: auto !important;
    transform: translateX(-50%);
    font-size: min(2cqw, 3.333cqh) !important;
  }
  .discover-band.sky-theme-futbal:not(.is-rozhovor) .discover-inner,
  .discover-band.sky-theme-maraton:not(.is-rozhovor) .discover-inner,
  .discover-band.sky-theme-volby:not(.is-rozhovor) .discover-inner,
  .discover-band.sky-theme-vianoce:not(.is-rozhovor) .discover-inner,
  .discover-band.sky-theme-silvester:not(.is-rozhovor) .discover-inner,
  .discover-band.sky-theme-konfety:not(.is-rozhovor) .discover-inner,
  .discover-band.sky-theme-valentin:not(.is-rozhovor) .discover-inner,
  .discover-band.sky-theme-fasiangy:not(.is-rozhovor) .discover-inner,
  .discover-band.sky-theme-velkanoc:not(.is-rozhovor) .discover-inner,
  .discover-band.sky-theme-jar:not(.is-rozhovor) .discover-inner,
  .discover-band.sky-theme-den-zeme:not(.is-rozhovor) .discover-inner,
  .discover-band.sky-theme-snp:not(.is-rozhovor) .discover-inner,
  .discover-band.sky-theme-dusicky:not(.is-rozhovor) .discover-inner,
  .discover-band.sky-theme-hokej:not(.is-rozhovor) .discover-inner,
  .discover-band.sky-theme-olympiada-zlato:not(.is-rozhovor) .discover-inner,
  .discover-band.sky-theme-olympiada-striebro:not(.is-rozhovor) .discover-inner,
  .discover-band.sky-theme-olympiada-bronz:not(.is-rozhovor) .discover-inner,
  .discover-band.sky-theme-vesela:not(.is-rozhovor) .discover-inner,
  .discover-band.sky-theme-smutna:not(.is-rozhovor) .discover-inner {
    /* !important: CSS scény (public/css/sceny/*.css) sa načíta až po tomto
       súbore a jeho starú rezervu dole by inak vyhral. */
    padding-bottom: clamp(1.75rem, 4vh, 2.75rem) !important;
  }
}

/* ══ koniec scén na mobile ═══════════════════════════════════════════════ *//* Tlačidlo „Ako to funguje?“ nad vyhľadávačom (12. 10. 2026). Karta príbehu
   na širokej obrazovke je v ňom absolútne, takže obal nezaberie miesto. */

.discover-pribeh {
  display: flex;
  margin: 0 0 0.85rem;
}

.discover-pribeh:has(.pv-hero) {
  margin: 0;
}

/* Server nevie šírku okna, vykreslí tlačidlo; od 1200 px ho po hydratácii
   nahradí karta vpravo (absolútne). Tlačidlo preto na širokej obrazovke
   nezaberá miesto už od prvého vykreslenia — inak vyhľadávač poskočil o 60 px
   hore (CLS 0,09–0,11, audit 13. 10. 2026). */

@media (min-width: 1200px) {
  .discover-pribeh--vedla {
    margin: 0;
  }
  .discover-pribeh--vedla .pv-otvor {
    display: none;
  }
}

.ks-ev-odporucame--feat { margin-bottom: .35rem; }

/* ══ TIEŇ KARTY VYHĽADÁVAČA (23. 10. 2026) ═══════════════════════════════
   `.discover-chat` má `overflow: hidden` (zaoblený rám rozhovoru) a na úvodke
   tak orezával tieň karty na svoj obdĺžnik — pod kartou bol tmavší pás
   s ostrou hranou pod ponukami otázok. Pred rozhovorom rám nič nekreslí,
   orezávať netreba. */

.discover-band .discover-chat.is-landing {
  overflow: visible;
}

/* ══ koniec polopriehľadnej hlavičky ══════════════════════════════════════ *//* ══ VLNA POD HLAVIČKOU NA ÚVODKE (23. 10. 2026) ══════════════════════════
   Hlavička a navigácia na úvodke sú čisto biele a spodok navigácie nie je
   rovná hrana, ale biela vlna s červenou stužkou ako v značke portálu
   (logo-ks-mark.svg) — prechádza do oblohy hero sekcie. Po odrolovaní
   (`.ks-scrolled`) vlna zmizne a lepiaca navigácia je bežná.
   Návrat: cp data/backup-css/style-pred-vlnou-hlavicky-2026-10-23.css public/css/style.css */

@media (min-width: 768px) {
  body:has(.home-intro) .ks-header,
  html:not(.ks-scrolled) body:has(.home-intro) .ks-mainnav {
    background: #fff;
    border-bottom-color: transparent;
    box-shadow: none;
  }
  body:has(.home-intro) .ks-mainnav::after {
    content: "";
    position: absolute;
    left: 0;
    right: 0;
    top: calc(100% - 1px);
    height: clamp(34px, 3.4vw, 50px);
    background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 1440 50' preserveAspectRatio='none'%3E%3Cpath d='M0 0H1440V25C1320 40 1195 13 1040 23S765 46 580 30 300 9 150 23 40 36 0 29Z' fill='%23e02636'/%3E%3Cpath d='M0 0H1440V18C1320 34 1200 6 1040 16S760 38 580 22 300 2 150 16 40 30 0 22Z' fill='%23ffffff'/%3E%3C/svg%3E") center top / 100% 100% no-repeat;
    filter: drop-shadow(0 6px 10px rgba(3, 12, 30, 0.25));
    pointer-events: none;
    transition: opacity 0.25s ease, transform 0.25s ease;
  }
  /* vlna zasahuje do hero — nadpis o ňu nižšie */
  body:has(.home-intro) .home-intro .discover-band {
    padding-top: clamp(34px, 3.4vw, 50px);
  }
  /* Po odrolovaní: takmer nepriehľadná biela (polopriehľadná nad farebnými pásmi kalnela do siva)
     a z vlny ostane tenká červená stužka pri spodnej hrane. */
  html.ks-scrolled body:has(.home-intro) .ks-mainnav {
    background: rgba(255, 255, 255, 0.92);
    border-bottom: 3px solid #e02636;
    box-shadow: 0 8px 22px rgba(13, 52, 96, 0.14);
  }
  html.ks-scrolled body:has(.home-intro) .ks-mainnav::after {
    opacity: 0;
    transform: translateY(-8px);
  }
}
