/* Optimized Widget: season_announcer */
@keyframes announcer-fade-in {
  from { opacity: 0; transform: translateY(-20px); }
  to { opacity: 1; transform: translateY(0); }
}
@keyframes announcer-fade-out {
  from { opacity: 1; transform: translateY(0); }
  to { opacity: 0; transform: translateY(-20px); visibility: hidden; }
}
@keyframes terminal-blink {
  0%, 100% { opacity: 1; }
  50% { opacity: 0; }
}
.widget-season-announcer { position: fixed; top: 80px; left: 1rem; width: clamp(320px, 30vw, 420px); z-index: 1040; display: none; opacity: 0; will-change: transform, opacity; }
.widget-season-announcer.is-visible { display: block; animation: announcer-fade-in 1.3s cubic-bezier(0.2, 0.8, 0.2, 1) 2.6s forwards; }
.widget-season-announcer.is-hidden { animation: announcer-fade-out 0.4s ease-in forwards; }
.decorative-terminal { font-family: "JetBrains Mono", "Share Tech Mono", monospace; background: rgba(10, 10, 20, 0.85); border: 1px solid rgba(167, 234, 255, 0.5); border-radius: 5px; box-shadow: 0 0 25px rgba(0, 163, 255, 0.3), inset 0 0 10px rgba(0, 163, 255, 0.2); color: #a7eaef; text-shadow: 0 0 3px #a7eaef, 0 0 8px rgba(0, 163, 255, 0.5), 0 0 15px rgba(0, 163, 255, 0.3); padding: 0.5rem; padding-right: 2.5rem; }
.announcer-header { display: flex; justify-content: space-between; align-items: center; font-size: 0.7rem; color: rgba(167, 234, 255, 0.6); padding-bottom: 0.4rem; border-bottom: 1px solid rgba(167, 234, 255, 0.2); margin-bottom: 0.5rem; }
.header-icon { width: 16px; height: 16px; opacity: 0.7; }
.announcer-body .announcer-log { font-size: 0.8rem; line-height: 1.6; margin: 0; padding-left: 0.25rem; }
.announcer-log a { color: #a7eaef; text-decoration: underline; text-underline-offset: 3px; }
.announcer-log a:hover { background-color: rgba(167, 234, 255, 0.1); }
.announcer-log strong { color: white; font-weight: 600; }
.announcer-log .date-highlight { color: #fde047; font-weight: 700; }
.player-highlight { display: inline-flex; align-items: center; gap: 0.3rem; background-color: rgba(167, 234, 255, 0.1); border: 1px solid rgba(167, 234, 255, 0.2); border-radius: 4px; padding: 1px 6px 1px 2px; font-size: 0.75rem; color: #6ee7b7; text-decoration: none; transition: background-color 0.2s ease, box-shadow 0.2s ease; margin: 0 4px; }
.player-highlight:hover { background-color: rgba(167, 234, 255, 0.2); box-shadow: 0 0 8px rgba(167, 234, 255, 0.4); }
.player-highlight .player-avatar { width: 16px; height: 16px; border-radius: 50%; border: 1px solid rgba(255,255,255,0.2); }
.countdown-timer { display: inline-block; color: #fde047; font-weight: 700; margin: 0 4px; }
.announcer-cursor { display: inline-block; width: 8px; height: 1em; background-color: #a7eaef; box-shadow: 0 0 5px #a7eaef; animation: terminal-blink 1.2s infinite step-end; margin-left: 4px; vertical-align: text-bottom; }
.announcer-close-btn { position: absolute; top: 4px; right: 4px; width: 24px; height: 24px; background: transparent; border: none; color: rgba(167, 234, 255, 0.4); font-size: 1.2rem; line-height: 1; cursor: pointer; border-radius: 50%; transition: color 0.2s ease, background-color 0.2s ease; z-index: 3; }
.announcer-close-btn:hover { color: #a7eaef; background-color: rgba(167, 234, 255, 0.1); }
@media (max-width: 767px) {
  .widget-season-announcer { top: 10px; left: 0.5rem; right: 0.5rem; width: auto; max-width: none; }
}
