/* src/public_html/css/widgets/market_motion.css */

:root {
  --market-motion-up: #33d17a;
  --market-motion-down: #ff4d6d;
  --market-motion-warn: #f2a93b;
  --market-motion-info: #59b3ff;
}

.market-alert-badge {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  flex: 0 0 auto;
  min-width: 3.1rem;
  max-width: 5.8rem;
  border: 1px solid rgba(128, 151, 180, 0.5);
  border-radius: 4px;
  padding: 0.12rem 0.34rem;
  background: rgba(12, 25, 41, 0.78);
  color: #d8e6f6;
  font-family: var(--font-mono);
  font-size: 0.58rem;
  line-height: 1.1;
  letter-spacing: 0.045em;
  text-transform: uppercase;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
  pointer-events: none;
}

.widget-header-title .market-alert-badge {
  margin-left: 0.05rem;
  margin-right: 0.02rem;
}

.market-alert-badge[data-alert-id="regime_change"] {
  border-color: rgba(89, 179, 255, 0.58);
  color: #d9ecff;
}

.market-alert-badge[data-alert-id="liquidation_risk"],
.market-alert-badge[data-alert-id="capitulation"] {
  border-color: rgba(255, 77, 109, 0.66);
  color: #ffd2db;
  background: rgba(255, 77, 109, 0.13);
}

.market-alert-badge[data-alert-id="risk_on_confirmed"] {
  border-color: rgba(51, 209, 122, 0.62);
  color: #bcf7d8;
  background: rgba(51, 209, 122, 0.12);
}

.market-alert-badge[data-alert-id="overheat"] {
  border-color: rgba(242, 169, 59, 0.68);
  color: #ffdfad;
  background: rgba(242, 169, 59, 0.13);
}

.market-alert-badge[data-severity="2"] {
  animation: market-badge-pulse 1800ms ease-in-out infinite;
}

.market-data-tick .grid-stack-item:not([hidden]) .grid-stack-item-content {
  animation: market-data-sync 820ms ease-out both;
}

.motion-tick-up {
  animation: market-price-tick-up 680ms ease-out both;
}

.motion-tick-down {
  animation: market-price-tick-down 680ms ease-out both;
}

#w_leverage_pressure .leverage-pressure-donut-high,
#w_regime .regime-donut-capitulation,
#w_regime .regime-donut-overheat,
#w_sentiment .sentiment-fg-donut-extreme-fear,
#w_sentiment .sentiment-fg-donut-extreme-greed {
  animation: market-risk-breathe 2200ms ease-in-out infinite;
}

.market-alert-enter {
  animation: market-alert-enter 220ms ease-out both;
}

.market-chip-enter {
  animation: market-chip-enter 260ms ease-out both;
}

@keyframes market-data-sync {
  0% {
    filter: brightness(1);
    box-shadow: 0 0 0 rgba(89, 179, 255, 0);
  }
  35% {
    filter: brightness(1.08);
    box-shadow: 0 0 18px rgba(89, 179, 255, 0.18);
  }
  100% {
    filter: brightness(1);
    box-shadow: 0 0 0 rgba(89, 179, 255, 0);
  }
}

@keyframes market-price-tick-up {
  0% {
    color: var(--market-motion-up);
    text-shadow: 0 0 10px rgba(51, 209, 122, 0.42);
    transform: translateY(0.06rem);
  }
  100% {
    text-shadow: none;
    transform: translateY(0);
  }
}

@keyframes market-price-tick-down {
  0% {
    color: var(--market-motion-down);
    text-shadow: 0 0 10px rgba(255, 77, 109, 0.4);
    transform: translateY(-0.06rem);
  }
  100% {
    text-shadow: none;
    transform: translateY(0);
  }
}

@keyframes market-risk-breathe {
  0%,
  100% {
    box-shadow: 0 0 0 rgba(255, 77, 109, 0);
    filter: brightness(1);
  }
  50% {
    box-shadow: 0 0 16px rgba(255, 77, 109, 0.2);
    filter: brightness(1.06);
  }
}

@keyframes market-badge-pulse {
  0%,
  100% {
    box-shadow: 0 0 0 rgba(255, 77, 109, 0);
    filter: brightness(1);
  }
  50% {
    box-shadow: 0 0 12px rgba(255, 77, 109, 0.24);
    filter: brightness(1.08);
  }
}

@keyframes market-alert-enter {
  0% {
    opacity: 0;
    transform: translateY(0.35rem) scale(0.985);
  }
  100% {
    opacity: 1;
    transform: translateY(0) scale(1);
  }
}

@keyframes market-chip-enter {
  0% {
    opacity: 0;
    transform: translateY(-0.12rem) scale(0.96);
  }
  100% {
    opacity: 1;
    transform: translateY(0) scale(1);
  }
}

@media (prefers-reduced-motion: reduce) {
  .market-alert-badge,
  .market-alert-badge[data-severity="2"],
  .market-data-tick .grid-stack-item .grid-stack-item-content,
  .motion-tick-up,
  .motion-tick-down,
  #w_leverage_pressure .leverage-pressure-donut-high,
  #w_regime .regime-donut-capitulation,
  #w_regime .regime-donut-overheat,
  #w_sentiment .sentiment-fg-donut-extreme-fear,
  #w_sentiment .sentiment-fg-donut-extreme-greed,
  .market-alert-enter,
  .market-chip-enter {
    animation: none !important;
    transition: none !important;
    transform: none !important;
    filter: none !important;
    text-shadow: none !important;
    box-shadow: none !important;
  }
}
