.flash-info { display: flex; align-items: center; gap: 16px; min-height: 42px; padding: 6px clamp(16px, 3vw, 32px); background: #064e3b; color: #fff; font: 500 13px/1.5 Inter, sans-serif; }
.flash-info[hidden] { display: none; }
.flash-info-label { flex: none; display: flex; align-items: center; gap: 8px; font-weight: 700; }
.flash-info-label .material-symbols-outlined { font-size: 18px; color: #95d3ba; }
.flash-info-viewport { min-width: 0; flex: 1; overflow: hidden; }
.flash-info-track { display: flex; width: max-content; animation: flash-info-scroll var(--flash-duration, 35s) linear infinite; }
.flash-info-group { display: flex; flex: none; align-items: center; }
.flash-info-message { flex: none; white-space: nowrap; padding-right: 48px; }
.flash-info-message::before { content: ''; display: inline-block; width: 4px; height: 4px; margin: 0 12px 3px 0; border-radius: 50%; background: #95d3ba; }
.flash-info-readable { position: absolute; width: 1px; height: 1px; overflow: hidden; clip-path: inset(50%); }
@keyframes flash-info-scroll { to { transform: translateX(-50%); } }
@media (max-width: 480px) { .flash-info { gap: 10px; padding-inline: 12px; } .flash-info-label { gap: 4px; } }
@media (prefers-reduced-motion: reduce) {
    .flash-info { align-items: flex-start; }
    .flash-info-track { display: none; animation: none; }
    .flash-info-readable { position: static; width: auto; height: auto; clip-path: none; overflow: visible; margin: 0; padding-left: 18px; }
    .flash-info-readable li { overflow-wrap: anywhere; }
}
