/* AngolaX Accent Overrides — Angola Red (#CE1126) + Gold (#FFCD00) */
:root {
  --accent: #CE1126;
  --accent-dark: #8C0C1A;
  --accent-mid: #E83050;
  --accent-light: #F07080;
  --accent-pale: #FDECEE;
  --accent2: #FFCD00;
  --accent2-dark: #CCA000;
  --accent2-light: #FFE050;

  /* Section Accents */
  --section-markets: #CE1126;
  --section-bonds: #1A3A5C;
  --section-fx: #2471A3;
  --section-economy: #1A5C4B;
  --section-ipos: #7B3FC0;
  --section-investment: #C8903A;
  --section-tools: #2D6A4F;
  --section-regulation: #8B0000;
  --section-diaspora: #CE1126;
  --section-research: #1A5C4B;
  --section-encyclopedia: #484038;
  --section-education: #FFCD00;
}

/* Navigation active state */
.nav__item--active {
  border-bottom-color: var(--accent);
  color: var(--accent);
}

/* Badges */
.nav__badge {
  background: var(--accent);
}

/* Primary buttons */
.btn--primary {
  background: var(--accent);
  border-color: var(--accent);
}
.btn--primary:hover {
  background: var(--accent-dark);
  border-color: var(--accent-dark);
}

/* Accent2 buttons */
.btn--accent2 {
  background: var(--accent2);
  color: #1A1108;
  border-color: var(--accent2);
}
.btn--accent2:hover {
  background: var(--accent2-dark);
  border-color: var(--accent2-dark);
}

/* Ticker positive/negative */
.ticker__change--up {
  color: #22C55E;
}
.ticker__change--down {
  color: var(--accent);
}

/* Section tags */
.section-tag {
  background: var(--accent-pale);
  color: var(--accent-dark);
}

/* Progress bars */
.progress-bar__fill--accent {
  background: var(--accent);
}

/* Badge accent */
.badge--accent {
  background: var(--accent);
  color: #fff;
}

/* L2 callout accent border */
.l2-callout {
  border-left-color: var(--accent2);
}

/* Subscribe CTA */
.subscribe-cta {
  border-top-color: var(--accent);
}

/* Brand highlight — ANGOLA X with gold accent */
.brand-x {
  color: #CCA000;
  font-size: 1.1em;
  font-weight: 900;
}
.brand-name {
  letter-spacing: 0.04em;
}

/* Premium overlay */
.premium-overlay__box {
  border-top: 4px solid var(--accent);
}

/* Deep header accent line */
.deep-header {
  border-bottom: 3px solid var(--accent);
}

/* Dashboard header */
.dash-header {
  border-bottom: 3px solid var(--accent);
}

/* Section index header */
.section-index-header__rule {
  background: var(--accent);
}

/* Masthead subscribe button */
.masthead__subscribe {
  background: var(--accent);
  color: #fff;
  padding: 2px 10px;
  border-radius: 3px;
  font-size: 11px;
  text-transform: uppercase;
  letter-spacing: 0.5px;
}

/* Entity badge */
.badge--entity {
  background: var(--accent-pale);
  color: var(--accent-dark);
}

/* Status badges */
.badge--on-track { background: #DCFCE7; color: #166534; }
.badge--at-risk { background: #FEF9C3; color: #854D0E; }
.badge--off-track { background: var(--accent-pale); color: var(--accent-dark); }

/* Link hover accent */
a:hover {
  color: var(--accent);
}

/* Cookie accept button */
.cookie-accept {
  background: var(--accent);
  color: #fff;
}

/* ─── TIER 1 LIVE DATA INDICATORS ─── */

/* Live data value styling */
.live-data {
  font-variant-numeric: tabular-nums;
}

/* Live: green pulsing dot */
.live-data.live::after {
  content: '';
  display: inline-block;
  width: 6px;
  height: 6px;
  border-radius: 50%;
  background: #4CAF50;
  margin-left: 4px;
  vertical-align: middle;
  animation: liveDataPulse 2s infinite;
}

/* Stale: amber dot (API failed, showing fallback) */
.live-data.stale::after {
  content: '';
  display: inline-block;
  width: 6px;
  height: 6px;
  border-radius: 50%;
  background: #FF9800;
  margin-left: 4px;
  vertical-align: middle;
}

@keyframes liveDataPulse {
  0%, 100% { opacity: 1; }
  50% { opacity: 0.4; }
}

/* Live change indicator in ticker */
.ticker__change-live {
  font-size: 0.85em;
  margin-left: 2px;
}

/* ─── DATA FRESHNESS INDICATORS ─── */

/* Data point container */
.data-point {
  position: relative;
}

/* Timestamp styling */
.data-timestamp {
  font-size: 10px;
  letter-spacing: 0.03em;
  text-transform: uppercase;
}

/* Fresh: updated today — green */
[data-fresh="true"] .data-timestamp {
  color: #4CAF50;
}

/* Recent: updated this week — muted */
[data-fresh="recent"] .data-timestamp {
  color: var(--ink-40, #999);
}

/* Stale: > 7 days — amber warning */
[data-fresh="stale"] .data-timestamp {
  color: #FF9800;
}
[data-fresh="stale"] .data-value {
  opacity: 0.7;
}
[data-fresh="stale"] .data-timestamp::before {
  content: '⚠ ';
}

/* Live indicator dot (standalone) */
.live-indicator {
  display: inline-block;
  width: 6px;
  height: 6px;
  border-radius: 50%;
  background: #4CAF50;
  margin-right: 3px;
  vertical-align: middle;
  animation: liveDataPulse 2s infinite;
}
