/* Banner de consentimento de cookies (LGPD) — standalone, serve landing e painéis */
.cookie-bar {
  position: fixed; left: 16px; right: 16px; bottom: 16px; z-index: 12000;
  max-width: 760px; margin: 0 auto;
  display: flex; align-items: center; gap: 16px; flex-wrap: wrap;
  padding: 16px 18px; border-radius: 14px;
  background: #14141a; border: 1px solid rgba(255,255,255,.12);
  box-shadow: 0 20px 50px rgba(0,0,0,.5);
  font-family: 'Inter', system-ui, sans-serif; color: #E8E8ED;
  animation: cookieUp .35s ease;
}
@keyframes cookieUp { from { opacity: 0; transform: translateY(14px); } to { opacity: 1; transform: none; } }
.cookie-bar__txt { flex: 1 1 320px; font-size: 13px; line-height: 1.5; color: #C6C9CF; }
.cookie-bar__txt b { color: #E8E8ED; }
.cookie-bar__txt a { color: #8B5CF6; font-weight: 600; text-decoration: none; }
.cookie-bar__txt a:hover { text-decoration: underline; }
.cookie-bar__actions { display: flex; gap: 8px; flex: 0 0 auto; }
.cookie-btn { border: none; border-radius: 9px; padding: 9px 16px; font-size: 13px; font-weight: 600; cursor: pointer; font-family: inherit; }
.cookie-btn--ok { background: #7C3AED; color: #fff; }
.cookie-btn--ok:hover { background: #8B5CF6; }
.cookie-btn--no { background: rgba(255,255,255,.08); color: #E8E8ED; }
.cookie-btn--no:hover { background: rgba(255,255,255,.14); }
.cookie-btn:focus-visible, .cookie-bar__txt a:focus-visible {
  outline: 3px solid #A78BFA; outline-offset: 3px;
}
@media (max-width: 560px) {
  .cookie-bar { flex-direction: column; align-items: stretch; }
  .cookie-bar__txt { flex-basis: auto; }
  .cookie-bar__actions { justify-content: stretch; }
  .cookie-btn { flex: 1; }
}

/* Página de privacidade */
.legal-page { max-width: 720px; margin: 0 auto; padding: 48px 22px 80px;
  font-family: 'Inter', system-ui, sans-serif; color: #E8E8ED; line-height: 1.6; }
.legal-page h1 { font-family: 'Space Grotesk', sans-serif; font-size: 30px; margin: 0 0 6px; }
.legal-page .legal-sub { color: #9AA0AA; font-size: 13.5px; margin: 0 0 32px; }
.legal-page h2 { font-family: 'Space Grotesk', sans-serif; font-size: 18px; margin: 30px 0 8px; color: #fff; }
.legal-page p, .legal-page li { color: #C6C9CF; font-size: 14.5px; }
.legal-page ul { padding-left: 20px; }
.legal-page a { color: #8B5CF6; font-weight: 600; }
.legal-page .legal-back { display: inline-block; margin-top: 36px; color: #8B5CF6; font-weight: 600; text-decoration: none; }
