/* Aethera — overrides & brand tweaks on top of the cloned ViLao design system */
:root {
  --aeth-accent: #2E5BFF;
  --aeth-accent-soft: #EAF0FF;
}

/* brand wordmark kerning */
a[aria-label="Aethera"] span,
.hidden.font-display {
  letter-spacing: -0.02em;
}

/* hero typing caret */
.aeth-caret {
  display: inline-block;
  width: 2px;
  height: 0.95em;
  margin-left: 2px;
  background: var(--aeth-accent);
  vertical-align: -0.08em;
  animation: aeth-blink 1.05s steps(1, end) infinite;
}
@keyframes aeth-blink {
  0%, 49% { opacity: 1; }
  50%, 100% { opacity: 0; }
}

/* live indicator dot */
.aeth-live-dot {
  display: inline-block;
  width: 7px; height: 7px;
  border-radius: 50%;
  background: #22C55E;
  box-shadow: 0 0 0 3px rgba(34,197,94,.18);
  animation: aeth-pulse 2s ease-in-out infinite;
}
@keyframes aeth-pulse {
  0%, 100% { box-shadow: 0 0 0 3px rgba(34,197,94,.18); }
  50% { box-shadow: 0 0 0 6px rgba(34,197,94,.06); }
}

/* model kartu harga — dipakai saat data live diinject */
.aeth-model-row td { font-variant-numeric: tabular-nums; }
