.env-top-banner[data-v-b42892b0] {
  position: fixed;
  top: 0;
  left: 0;
  right: 0;
  z-index: 9999;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: var(--spacing-md);
  box-sizing: border-box;
  padding: env(safe-area-inset-top, 0px) var(--spacing-md) 0;
  height: var(--env-banner-height, calc(32px + env(safe-area-inset-top, 0px)));
  background: var(--env-bg-light);
  border-bottom: 2px solid var(--env-color);
  backdrop-filter: blur(8px);
  transition: all 0.3s ease;
}
.body--dark .env-top-banner[data-v-b42892b0] {
  background: var(--env-bg-dark);
}
.env-banner-content[data-v-b42892b0] {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: var(--spacing-sm);
  overflow: hidden;
}
.env-icon[data-v-b42892b0] {
  font-size: 1.2rem;
  color: var(--env-color);
  flex-shrink: 0;
}
.env-banner-text[data-v-b42892b0] {
  font-size: 0.8rem;
  color: #1d1f23;
  font-weight: 500;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}
.body--dark .env-banner-text[data-v-b42892b0] {
  color: #ffffff;
}
@media (max-width: 600px) {
.env-banner-text[data-v-b42892b0] {
    font-size: 0.7rem;
}
}
.env-dismiss-btn[data-v-b42892b0] {
  position: absolute;
  right: var(--spacing-sm);
  color: var(--env-color);
}
.env-dismiss-btn[data-v-b42892b0]:hover {
  background: var(--env-bg-dark);
}
.sr-only[data-v-b42892b0] {
  position: absolute;
  width: 1px;
  height: 1px;
  padding: 0;
  margin: -1px;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
  white-space: nowrap;
  border-width: 0;
}
.banner-slide-enter-active[data-v-b42892b0] {
  animation: slideDown-b42892b0 0.4s cubic-bezier(0.4, 0, 0.2, 1);
}
.banner-slide-leave-active[data-v-b42892b0] {
  animation: slideUp-b42892b0 0.3s cubic-bezier(0.4, 0, 0.2, 1);
}
@keyframes slideDown-b42892b0 {
from {
    transform: translateY(-100%);
    opacity: 0;
}
to {
    transform: translateY(0);
    opacity: 1;
}
}
@keyframes slideUp-b42892b0 {
from {
    transform: translateY(0);
    opacity: 1;
}
to {
    transform: translateY(-100%);
    opacity: 0;
}
}