/* Politician demo — meaning-led micro motion.
   Motion is scoped to the demo and only activates after the dedicated hook tags elements. */
[data-demo-static][data-category="politician"] {
  --politician-motion-ease: cubic-bezier(0.22, 0.61, 0.36, 1);
}

[data-demo-static][data-category="politician"] [data-politician-progress-bar="true"] {
  transform-origin: left center;
  will-change: transform;
}

[data-demo-static][data-category="politician"] [data-hero-flow-label="true"] {
  transition:
    background-color 620ms var(--politician-motion-ease),
    border-color 620ms var(--politician-motion-ease),
    box-shadow 620ms var(--politician-motion-ease),
    transform 620ms var(--politician-motion-ease),
    opacity 620ms var(--politician-motion-ease);
}

[data-demo-static][data-category="politician"] [data-hero-flow-label="true"].is-hero-flow-current {
  transform: translateY(-2px);
  border-color: rgba(88, 189, 248, 0.72) !important;
  background: rgba(255, 255, 255, 0.92) !important;
  box-shadow: 0 12px 28px rgba(80, 147, 205, 0.18);
}

[data-demo-static][data-category="politician"] [data-civic-flow="true"] {
  isolation: isolate;
}

[data-demo-static][data-category="politician"] [data-civic-flow-line="true"] {
  position: absolute;
  left: 6%;
  right: 6%;
  top: 4.25rem;
  z-index: 0;
  width: 88%;
  height: 1.4rem;
  pointer-events: none;
  overflow: visible;
}

[data-demo-static][data-category="politician"] [data-civic-flow-line="true"] path {
  fill: none;
  stroke: rgba(30, 120, 219, 0.52);
  stroke-width: 1.35;
  stroke-linecap: round;
  stroke-dasharray: 1;
  stroke-dashoffset: 1;
  transition: stroke-dashoffset 1450ms var(--politician-motion-ease) 120ms;
}

[data-demo-static][data-category="politician"] [data-civic-flow="true"].is-civic-flow-active [data-civic-flow-line="true"] path {
  stroke-dashoffset: 0;
}

[data-demo-static][data-category="politician"] [data-flow-step="true"] {
  position: relative;
  z-index: 1;
  transition:
    transform 700ms var(--politician-motion-ease) var(--flow-delay, 0ms),
    border-color 700ms var(--politician-motion-ease) var(--flow-delay, 0ms),
    box-shadow 700ms var(--politician-motion-ease) var(--flow-delay, 0ms),
    opacity 700ms var(--politician-motion-ease) var(--flow-delay, 0ms);
}

[data-demo-static][data-category="politician"] [data-politician-motion-ready="true"] [data-flow-step="true"] {
  opacity: 0.76;
  transform: translateY(6px);
}

[data-demo-static][data-category="politician"] [data-flow-step="true"].is-civic-step-active {
  opacity: 1;
  transform: translateY(0);
  border-color: rgba(30, 120, 219, 0.28) !important;
  box-shadow: 0 18px 40px rgba(77, 138, 197, 0.14) !important;
}

[data-demo-static][data-category="politician"] [data-area-photo="true"] {
  transform-origin: center;
}

[data-demo-static][data-category="politician"] [data-area-panel="true"].is-area-refreshing [data-area-photo="true"] {
  animation: politician-area-photo 520ms var(--politician-motion-ease) both;
}

[data-demo-static][data-category="politician"] [data-area-panel="true"].is-area-refreshing [data-area-list-item="true"] {
  animation: politician-area-item 460ms var(--politician-motion-ease) both;
  animation-delay: var(--area-delay, 0ms);
}

@keyframes politician-area-photo {
  0% {
    opacity: 0.44;
    transform: scale(1.018);
    filter: saturate(0.9) blur(1px);
  }
  100% {
    opacity: 1;
    transform: scale(1);
    filter: saturate(1) blur(0);
  }
}

@keyframes politician-area-item {
  0% {
    opacity: 0;
    transform: translateY(7px);
  }
  100% {
    opacity: 1;
    transform: translateY(0);
  }
}

[data-demo-static][data-category="politician"] [data-report-card="true"] [data-report-date],
[data-demo-static][data-category="politician"] [data-report-card="true"] [data-report-image],
[data-demo-static][data-category="politician"] [data-report-card="true"] [data-report-title],
[data-demo-static][data-category="politician"] [data-report-card="true"] [data-report-meta] {
  transition:
    opacity 720ms var(--politician-motion-ease),
    transform 720ms var(--politician-motion-ease),
    filter 720ms var(--politician-motion-ease);
}

[data-demo-static][data-category="politician"] [data-politician-motion-ready="true"] [data-report-card="true"] [data-report-date],
[data-demo-static][data-category="politician"] [data-politician-motion-ready="true"] [data-report-card="true"] [data-report-image],
[data-demo-static][data-category="politician"] [data-politician-motion-ready="true"] [data-report-card="true"] [data-report-title],
[data-demo-static][data-category="politician"] [data-politician-motion-ready="true"] [data-report-card="true"] [data-report-meta] {
  opacity: 0;
  transform: translateY(8px);
}

[data-demo-static][data-category="politician"] [data-politician-motion-ready="true"] [data-report-card="true"] [data-report-image] {
  transform: scale(1.012);
  filter: saturate(0.92);
}

[data-demo-static][data-category="politician"] [data-report-card="true"].is-report-visible [data-report-date] {
  opacity: 1;
  transform: translateY(0);
  transition-delay: 0ms;
}

[data-demo-static][data-category="politician"] [data-report-card="true"].is-report-visible [data-report-image] {
  opacity: 1;
  transform: scale(1);
  filter: saturate(1);
  transition-delay: 90ms;
}

[data-demo-static][data-category="politician"] [data-report-card="true"].is-report-visible [data-report-title] {
  opacity: 1;
  transform: translateY(0);
  transition-delay: 170ms;
}

[data-demo-static][data-category="politician"] [data-report-card="true"].is-report-visible [data-report-meta] {
  opacity: 1;
  transform: translateY(0);
  transition-delay: 250ms;
}

[data-demo-static][data-category="politician"] [data-check-item="true"] {
  transition:
    transform 520ms var(--politician-motion-ease) var(--check-delay, 0ms),
    background-color 520ms var(--politician-motion-ease) var(--check-delay, 0ms),
    box-shadow 520ms var(--politician-motion-ease) var(--check-delay, 0ms);
}

[data-demo-static][data-category="politician"] [data-check-item="true"] svg {
  transition:
    opacity 420ms var(--politician-motion-ease) var(--check-delay, 0ms),
    transform 420ms var(--politician-motion-ease) var(--check-delay, 0ms),
    color 420ms var(--politician-motion-ease) var(--check-delay, 0ms);
  opacity: 0.45;
  transform: scale(0.82);
}

[data-demo-static][data-category="politician"] [data-check-item="true"].is-checked {
  transform: translateX(2px);
  background-color: #ffffff !important;
  box-shadow: inset 3px 0 0 rgba(30, 120, 219, 0.32);
}

[data-demo-static][data-category="politician"] [data-check-item="true"].is-checked svg {
  opacity: 1;
  transform: scale(1);
}

@media (max-width: 767px) {
  [data-demo-static][data-category="politician"] [data-civic-flow-line="true"] {
    display: none;
  }

  [data-demo-static][data-category="politician"] [data-politician-motion-ready="true"] [data-report-card="true"] [data-report-image] {
    transform: scale(1.006);
  }
}

@media (prefers-reduced-motion: reduce) {
  [data-demo-static][data-category="politician"] [data-hero-flow-label="true"],
  [data-demo-static][data-category="politician"] [data-civic-flow-line="true"] path,
  [data-demo-static][data-category="politician"] [data-flow-step="true"],
  [data-demo-static][data-category="politician"] [data-report-card="true"] [data-report-date],
  [data-demo-static][data-category="politician"] [data-report-card="true"] [data-report-image],
  [data-demo-static][data-category="politician"] [data-report-card="true"] [data-report-title],
  [data-demo-static][data-category="politician"] [data-report-card="true"] [data-report-meta],
  [data-demo-static][data-category="politician"] [data-check-item="true"],
  [data-demo-static][data-category="politician"] [data-check-item="true"] svg {
    animation: none !important;
    transition: none !important;
    opacity: 1 !important;
    transform: none !important;
    filter: none !important;
  }
}
