/* Live status line (v8/livestatus.js): the Cognitive mark breathing, a verb that names the real step, and a running timer. */
.lv { display: flex; align-items: center; gap: 8px; min-width: 0; padding: 6px 2px; font-size: 13.5px; line-height: 1.4; color: var(--text2); }
.lv-mark { position: relative; width: 14px; height: 14px; flex: none; }
.lv-mark i { position: absolute; width: 5.6px; height: 5.6px; border-radius: 1.6px; background: var(--accent); animation: lvSq 1.5s ease-in-out infinite; }
.lv-mark i:nth-child(1) { left: 4.2px; top: 0; }
.lv-mark i:nth-child(2) { left: 0; top: 7.6px; animation-delay: .25s; }
.lv-mark i:nth-child(3) { left: 8.4px; top: 7.6px; animation-delay: .5s; }
@keyframes lvSq { 0%, 100% { opacity: .3; transform: scale(.8); } 35% { opacity: 1; transform: scale(1.06); } }
/* The verb carries a soft light that sweeps across it, so the line reads as alive even when nothing else moves. */
.lv-verb { flex: none; font-weight: 500; color: var(--text); background: linear-gradient(90deg, var(--text2) 0%, var(--text2) 35%, var(--accent) 50%, var(--text2) 65%, var(--text2) 100%); background-size: 250% 100%; -webkit-background-clip: text; background-clip: text; -webkit-text-fill-color: transparent; animation: lvShine 2.6s linear infinite; }
@keyframes lvShine { from { background-position: 100% 0; } to { background-position: -150% 0; } }
.lv-verb.lv-swap { animation: lvShine 2.6s linear infinite, lvIn .35s ease-out; }
@keyframes lvIn { from { opacity: 0; transform: translateY(3px); } to { opacity: 1; transform: none; } }
.lv-time { flex: none; color: var(--text3); font-variant-numeric: tabular-nums; font-size: 12.5px; }
.lv-detail { min-width: 0; color: var(--text3); font-family: var(--mono); font-size: 12px; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
.lv-detail:empty { display: none; }
.lv-detail::before { content: '·'; margin-right: 8px; font-family: var(--font, inherit); }
.lv-sm { font-size: 12.5px; padding: 2px 0; }
.now-line .lv { padding: 0; flex: 1; }
@media (prefers-reduced-motion: reduce) {
  .lv-mark i, .lv-verb, .lv-verb.lv-swap { animation: none; }
  .lv-mark i { opacity: .85; }
  .lv-verb { -webkit-text-fill-color: currentColor; background: none; color: var(--text); }
}
