@keyframes civitus-pulse-ring{0%{transform:scale(1);opacity:.55}70%{transform:scale(1.35);opacity:0}to{transform:scale(1.35);opacity:0}}@keyframes civitus-pulse-dot{0%,to{opacity:.5;transform:scale(1)}50%{opacity:1;transform:scale(1.08)}}@keyframes civitus-reveal-up{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}@keyframes civitus-reveal-fade{0%{opacity:0}to{opacity:1}}@keyframes civitus-severity-fill{0%{transform:scaleX(0)}to{transform:scaleX(1)}}@keyframes civitus-sparkline-draw{0%{stroke-dashoffset:var(--spark-offset,1000)}to{stroke-dashoffset:0}}@keyframes civitus-enter{0%{opacity:0;transform:translateY(8px) scale(.985)}to{opacity:1;transform:translateY(0) scale(1)}}@keyframes civitus-exit{0%{opacity:1;transform:scale(1)}to{opacity:.45;transform:scale(.97)}}@keyframes civitus-threshold-flash{0%{opacity:0;transform:scale(.96)}15%{opacity:1;transform:scale(1)}to{opacity:0;transform:scale(1.02)}}@keyframes civitus-vote-confirm{0%{opacity:0;transform:scale(.85)}40%{opacity:1;transform:scale(1.05)}to{opacity:0;transform:scale(1.15)}}@keyframes civitus-share-pop{0%{transform:scale(1)}35%{transform:scale(1.12)}to{transform:scale(1)}}@keyframes civitus-progress-tip{0%,to{opacity:.35;transform:translateX(0)}50%{opacity:1;transform:translateX(2px)}}@keyframes civitus-banner-enter{0%{opacity:0;max-height:0;transform:translateY(-6px)}to{opacity:1;max-height:120px;transform:translateY(0)}}@keyframes civitus-lineage-expand{0%{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:translateY(0)}}.civitus-pulse-badge{position:relative;display:inline-flex;align-items:center;gap:6px}.civitus-pulse-badge__ring{position:absolute;inset:-3px;border-radius:inherit;border:1px solid;pointer-events:none;animation:civitus-pulse-ring 2.2s ease-out infinite}.civitus-pulse-badge__dot{width:7px;height:7px;border-radius:50%;flex-shrink:0;animation:civitus-pulse-dot 1.6s ease-in-out infinite}.civitus-reveal-section>.civitus-reveal-item{opacity:0;animation:civitus-reveal-up var(--reveal-duration,.32s) var(--reveal-ease,cubic-bezier(.22,1,.36,1)) forwards;animation-delay:var(--reveal-delay,0ms)}.civitus-reveal-section--fade>.civitus-reveal-item{animation-name:civitus-reveal-fade;transform:none}.civitus-reveal-on-scroll{opacity:0;transform:translateY(12px);transition:opacity var(--reveal-duration,.42s) cubic-bezier(.22,1,.36,1),transform var(--reveal-duration,.42s) cubic-bezier(.22,1,.36,1)}.civitus-reveal-on-scroll--visible{opacity:1;transform:translateY(0)}.civitus-severity-rail__fill{transform-origin:left center;animation:civitus-severity-fill var(--severity-duration,.52s) cubic-bezier(.22,1,.36,1) forwards}.civitus-sparkline--animate path{stroke-dasharray:var(--spark-offset,1000);animation:civitus-sparkline-draw var(--spark-duration,.72s) ease-out forwards}.civitus-motion-enter{animation:civitus-enter var(--motion-enter-ms,.32s) cubic-bezier(.22,1,.36,1) forwards}.civitus-motion-exit{animation:civitus-exit var(--motion-exit-ms,.4s) cubic-bezier(.22,1,.36,1) forwards;pointer-events:none}.civitus-consume-once{transition:opacity var(--consume-ms,.4s) ease,transform var(--consume-ms,.4s) cubic-bezier(.22,1,.36,1),filter var(--consume-ms,.4s) ease;will-change:opacity,transform}.civitus-consume-once--consumed{opacity:.5;transform:scale(.985);filter:saturate(.85)}.civitus-threshold-cross{position:absolute;inset:0;border-radius:inherit;pointer-events:none;background:radial-gradient(circle at 50% 40%,rgba(201,162,39,.22),transparent 70%);animation:civitus-threshold-flash .68s ease-out forwards}.civitus-vote-confirm{position:absolute;inset:0;pointer-events:none;z-index:2}.civitus-vote-confirm,.civitus-vote-confirm__burst{display:flex;align-items:center;justify-content:center}.civitus-vote-confirm__burst{width:64px;height:64px;border-radius:50%;font-size:28px;font-weight:900;animation:civitus-vote-confirm .3s cubic-bezier(.22,1,.36,1) forwards}.civitus-share-feedback--pop{animation:civitus-share-pop .38s cubic-bezier(.34,1.56,.64,1)}.civitus-progress-pulse__tip{position:absolute;top:50%;right:0;width:8px;height:8px;margin-top:-4px;margin-right:-4px;border-radius:50%;animation:civitus-progress-tip 1.4s ease-in-out infinite}.civitus-binding-banner{overflow:hidden;animation:civitus-banner-enter .48s cubic-bezier(.22,1,.36,1) forwards}.civitus-lineage-expand{animation:civitus-lineage-expand .28s cubic-bezier(.22,1,.36,1) forwards}.civitus-detail-shell{--detail-hero-height:min(42vh,320px)}.civitus-detail-shell__hero{min-height:var(--detail-hero-height);position:relative;overflow:hidden;border-radius:0 0 20px 20px}.civitus-detail-shell__hero--compact{min-height:auto}.civitus-detail-shell__hero-overlay{position:absolute;inset:0;background:linear-gradient(180deg,transparent 30%,var(--bg-elevated) 100%);pointer-events:none}.civitus-detail-shell__body{animation:civitus-reveal-up .42s cubic-bezier(.22,1,.36,1) forwards}.civitus-journey-strip__track{transform-origin:left center;transition:transform var(--journey-ms,.52s) cubic-bezier(.22,1,.36,1)}@media (prefers-reduced-motion:reduce){.civitus-binding-banner,.civitus-detail-shell__body,.civitus-lineage-expand,.civitus-motion-enter,.civitus-motion-exit,.civitus-progress-pulse__tip,.civitus-pulse-badge__dot,.civitus-pulse-badge__ring,.civitus-reveal-section>.civitus-reveal-item,.civitus-severity-rail__fill,.civitus-share-feedback--pop,.civitus-sparkline--animate path,.civitus-threshold-cross,.civitus-vote-confirm__burst{animation:none!important;transition:none!important;opacity:1!important;transform:none!important;stroke-dashoffset:0!important;max-height:none!important}.civitus-reveal-on-scroll{opacity:1;transform:none;transition:none}.civitus-consume-once--consumed{opacity:.65;transform:none;filter:none}}