/* The announcement bar (announce.js): one line across the top of the public
   pages and the docs, in the site's signal orange with ink text in both
   themes. It sits in the page's flow above the header, so a sticky header
   still sticks once it scrolls away. Scoped under .an-. */
.an-bar {
  display: flex; align-items: center; justify-content: center; gap: 12px; position: relative; z-index: 30;
  min-height: 36px; padding: 6px 48px 6px 16px; background: #ff5b1f; color: #111111;
  font: 500 13.5px/1.4 "Helvetica Neue", -apple-system, BlinkMacSystemFont, "Segoe UI", Arial, sans-serif;
  animation: an-in 200ms ease both;
}
.an-text { margin: 0; text-align: center; }
.an-more { color: #111111; font-weight: 700; text-decoration: underline; text-underline-offset: 2px; white-space: nowrap; }
.an-more:hover { text-decoration-thickness: 2px; }
.an-close {
  position: absolute; right: 8px; top: 50%; translate: 0 -50%; width: 30px; height: 30px;
  border: 1px solid transparent; border-radius: 6px; background: transparent; color: #111111;
  font: 400 20px/1 "Helvetica Neue", Arial, sans-serif; cursor: pointer;
}
.an-close:hover { border-color: #111111; }
.an-more:focus-visible, .an-close:focus-visible { outline: 2px solid #111111; outline-offset: 2px; }
@keyframes an-in { from { opacity: 0; } to { opacity: 1; } }
@media (prefers-reduced-motion: reduce) { .an-bar { animation: none; } }
@media (max-width: 640px) { .an-bar { justify-content: flex-start; font-size: 13px; } .an-text { text-align: left; } }
