/* Ransomware Early Warning only: the leak site feed in the hero. The live dot pulses once, then rests. */
.uc2--ransomware-early-warning .uc-hero__mod { max-width: 500px; }
.uc-lt__title { display: inline-flex; align-items: center; gap: 12px; }
.uc-lt__title small { font-family: var(--bd-font-mono); font-size: var(--bd-eyebrow-size); font-weight: 500; letter-spacing: .08em; text-transform: uppercase; color: var(--uc-coral, #ff5247); }
.uc-lt__live { position: relative; width: 8px; height: 8px; border-radius: 50%; background: var(--uc-coral, #ff5247); box-shadow: 0 0 10px rgb(255 82 71 / .6); }
.uc-lt__live::after { content: ""; position: absolute; inset: -1px; border-radius: 50%; border: 1.5px solid var(--uc-coral, #ff5247); opacity: 0; animation: uc-lt-ping 1.8s cubic-bezier(.16, 1, .3, 1) .8s 1 both; }
.uc-lt__list { position: relative; display: flex; flex-direction: column; }
.uc-lt__list::before { content: ""; position: absolute; left: 4px; top: 30px; bottom: 30px; width: 1px; background: rgb(255 255 255 / .14); }
.uc-lt__row { position: relative; display: grid; grid-template-columns: 9px minmax(0, 1fr) auto; gap: 18px; align-items: center; padding: 18px 0; }
.uc-lt__node { width: 9px; height: 9px; border-radius: 50%; background: #0b1236; box-shadow: inset 0 0 0 1.5px #8b97c4; position: relative; z-index: 1; }
.uc-lt__row.is-hot .uc-lt__node { background: var(--uc-coral, #ff5247); box-shadow: none; }
.uc-lt__txt { display: flex; flex-direction: column; gap: 3px; min-width: 0; }
.uc-lt__txt small { font-family: var(--bd-font-mono); font-size: var(--bd-eyebrow-size); letter-spacing: .08em; text-transform: uppercase; color: #8b97c4; }
.uc-lt__txt small a { color: #fff; text-decoration: none; border-bottom: 1px solid rgb(255 255 255 / .3); }
.uc-lt__txt small a:hover { border-color: var(--uc-coral, #ff5247); }
.uc-lt__txt b { font-size: var(--bd-body-size); font-weight: 600; color: #fff; }
.uc-lt__txt span { font-size: var(--bd-small-size); color: #a6b0d2; }
.uc-lt__chip { padding: 4px 10px; border-radius: 8px; font-style: normal; white-space: nowrap; font-family: var(--bd-font-mono); font-size: var(--bd-eyebrow-size); background: rgb(255 82 71 / .16); color: var(--uc-coral, #ff5247); }
.uc-lt__foot { margin-top: 8px; padding-top: 14px; border-top: 1px solid rgb(255 255 255 / .08); font-family: var(--bd-font-mono); font-size: var(--bd-eyebrow-size); letter-spacing: .04em; color: #8b97c4; }
@keyframes uc-lt-ping { 0% { opacity: .9; transform: scale(1); } 100% { opacity: 0; transform: scale(3.4); } }
@media (max-width: 480px) { .uc-lt__row { grid-template-columns: 9px minmax(0, 1fr); } .uc-lt__chip { grid-column: 2; justify-self: start; } }
@media (prefers-reduced-motion: reduce) { .uc-lt__live::after { animation: none; } }
