/* =======================================================================
   Cookie-Consent-Banner-Erweiterung - eigenstaendiges Basis-CSS, wird
   unabhaengig vom aktiven Theme automatisch geladen (siehe
   Nexis\Template\ExtensionAssets). Das Markup selbst wird per
   assets/script.js zur Laufzeit erzeugt (siehe dortige Klassendoku).
   ======================================================================= */

.nx-cookie-banner {
  position: fixed;
  left: var(--nx-space-4);
  right: var(--nx-space-4);
  bottom: var(--nx-space-4);
  z-index: 9999;
  max-width: 640px;
  margin: 0 auto;
  background: var(--nx-surface);
  color: var(--nx-text);
  border-radius: var(--nx-radius-lg);
  box-shadow: var(--nx-shadow);
  padding: var(--nx-space-5);
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: var(--nx-space-4);
  opacity: 0;
  transform: translateY(16px);
  transition: opacity 0.2s ease, transform 0.2s ease;
}
.nx-cookie-banner--visible { opacity: 1; transform: translateY(0); }
.nx-cookie-banner--hiding { opacity: 0; transform: translateY(16px); }
.nx-cookie-banner-text { margin: 0; flex: 1 1 260px; font-size: var(--nx-fs-sm); color: var(--nx-muted); line-height: var(--nx-lh-base); }
.nx-cookie-banner-actions { display: flex; gap: var(--nx-space-2); flex-shrink: 0; }
.nx-cookie-banner-btn {
  border: 1px solid var(--nx-border, #d0d5dd);
  background: transparent;
  color: var(--nx-text);
  padding: 0.55em 1.1em;
  border-radius: var(--nx-radius);
  font-size: var(--nx-fs-sm);
  font-weight: 600;
  cursor: pointer;
  white-space: nowrap;
}
.nx-cookie-banner-btn--primary { background: var(--nx-primary); color: var(--nx-on-primary); border-color: var(--nx-primary); }

@media (max-width: 480px) {
  .nx-cookie-banner { flex-direction: column; align-items: stretch; }
  .nx-cookie-banner-actions { justify-content: stretch; }
  .nx-cookie-banner-btn { flex: 1; }
}
