/* ===== GCDW Live Threat Ticker (auto-updating) ===== */
#threat-ticker{
  width: 100%;
  background: #050a13;
  border-top: 1px solid #172b3d;
  border-bottom: 1px solid #172b3d;
  overflow: hidden;
  display: flex;
  align-items: stretch;
  font-family: Inter, Arial, sans-serif;
}

#threat-ticker .ticker-label{
  flex-shrink: 0;
  display: flex;
  align-items: center;
  gap: 8px;
  background: #0a1a2a;
  color: #27b4ff;
  font-size: 11px;
  font-weight: 800;
  letter-spacing: 0.1em;
  text-transform: uppercase;
  padding: 0 16px;
  border-right: 1px solid #172b3d;
  white-space: nowrap;
}

#threat-ticker .ticker-label .live-dot{
  width: 7px;
  height: 7px;
  border-radius: 50%;
  background: #e8543e;
  box-shadow: 0 0 0 0 rgba(232,84,62,.6);
  animation: ticker-pulse 1.8s infinite;
}
@keyframes ticker-pulse{
  0%{ box-shadow: 0 0 0 0 rgba(232,84,62,.55); }
  70%{ box-shadow: 0 0 0 6px rgba(232,84,62,0); }
  100%{ box-shadow: 0 0 0 0 rgba(232,84,62,0); }
}

#threat-ticker .ticker-track-wrap{
  flex: 1;
  overflow: hidden;
  position: relative;
}

#threat-ticker .ticker-track{
  display: flex;
  align-items: center;
  white-space: nowrap;
  animation: ticker-scroll 75s linear infinite;
  will-change: transform;
}

#threat-ticker:hover .ticker-track{
  animation-play-state: paused;
}

@keyframes ticker-scroll{
  from{ transform: translateX(0); }
  to{ transform: translateX(-50%); }
}

.ticker-item{
  display: inline-flex;
  align-items: center;
  gap: 8px;
  padding: 10px 28px;
  font-size: 12.5px;
  color: #cfe3f5;
  border-right: 1px solid #172b3d;
}

.ticker-item .sev{
  font-size: 9.5px;
  font-weight: 800;
  letter-spacing: 0.06em;
  padding: 2px 7px;
  border-radius: 4px;
  text-transform: uppercase;
  flex-shrink: 0;
}
.sev-critical{ background: #3a0f0f; color: #ff6b5e; border: 1px solid #5c1f1a; }
.sev-high{ background: #3a2a0f; color: #ffb454; border: 1px solid #5c421a; }
.sev-advisory{ background: #0f2a3a; color: #54c4ff; border: 1px solid #1a4a5c; }

.ticker-item .ticker-date{
  color: #5c7286;
  font-size: 11px;
  flex-shrink: 0;
}

@media (max-width: 700px){
  #threat-ticker .ticker-label span.label-text{ display:none; }
  #threat-ticker .ticker-label{ padding: 0 10px; }
  .ticker-item{ padding: 9px 18px; font-size: 12px; }
}
