/* SLO Down demo: additions on top of style.css (a copy of the live stylesheet).
   Only the demo caption bar and the filters-only list variants live here. */

.demo-bar {
  position: fixed;
  left: 56px;
  bottom: 40px;
  z-index: 30;
  max-width: min(380px, calc(100vw - 440px));
  padding: 10px 14px 11px;
  background: var(--card);
  color: var(--text-primary);
  border: 1px solid var(--border);
  border-left: 3px solid var(--accent);
  border-radius: 8px;
  box-shadow: var(--shadow-md);
  transition: background 0.28s ease, color 0.28s ease;
}
.demo-bar-back {
  display: inline-block;
  margin-bottom: 6px;
  font-family: 'Barlow Condensed', sans-serif;
  font-weight: 600;
  font-size: 11px;
  letter-spacing: 0.14em;
  text-transform: uppercase;
  color: var(--text-secondary);
  text-decoration: none;
}
.demo-bar-back:hover { color: var(--accent); }
.demo-bar-title { font-weight: 600; font-size: 16px; line-height: 1.2; letter-spacing: -0.01em; }
.demo-bar-hint { margin-top: 3px; font-size: 13px; line-height: 1.35; color: var(--text-secondary); }
.demo-bar-hint:empty { display: none; }

/* Filters-only list: the panel hugs the pills instead of running full height. */
.lv.lv--filters-only { height: auto; pointer-events: none; }   /* don't block the map under the empty column */
.lv.lv--filters-only .lv-panel { position: relative; height: auto; border-radius: 0 0 10px 0; pointer-events: auto; }
.lv.lv--filters-only .lv-tab { pointer-events: auto; }
.lv-mobile-sheet.lv--filters-only { height: auto; padding-bottom: 20px; }

/* The themes demo keeps its switcher on phones (the live app hides it there). */
@media (max-width: 768px) {
  .demo-themes .ts:not(.ts-hidden) { display: block; }
  .demo-bar { left: 16px; right: 16px; bottom: 72px; max-width: none; }
  .demo-themes .demo-bar { bottom: 20px; }
}
@media (min-width: 769px) and (max-width: 1100px) {
  .demo-bar { max-width: min(320px, calc(100vw - 440px)); }
}
