/* ═══════════════════════════════════════════════════════════
   destineai.css — Design system compartilhado
   Tokens, flash-prevention, fade-up, nav e footer injetados
   ═══════════════════════════════════════════════════════════ */

/* ── Design Tokens ──────────────────────────────────────── */
:root {
  --dai-navy:    #0D1B3E;
  --dai-dark:    #0A1530;
  --dai-mid:     #132247;
  --dai-gold:    #FFD700;
  --dai-golddk:  #FFC000;
  --dai-success: #059669;
}

/* ── Flash prevention ───────────────────────────────────── */
/* Mantém o body invisível até Layout.init() adicionar .dai-ready */
body           { visibility: hidden; margin: 0; font-family: 'Inter', sans-serif; }
body.dai-ready { visibility: visible; }

/* ── Fade-up on scroll ──────────────────────────────────── */
.fade-up         { opacity: 0; transform: translateY(28px); transition: opacity 0.7s ease, transform 0.7s ease; }
.fade-up.visible { opacity: 1; transform: none; }

/* ══════════════════════════════════════════════════════════
   NAV
   ══════════════════════════════════════════════════════════ */
.dai-nav {
  position: fixed; top: 0; left: 0; right: 0; z-index: 50;
  transition: background 0.3s ease, box-shadow 0.3s ease;
}

/* Padrão: sólido (maioria das páginas) */
.dai-nav {
  background: rgba(13, 27, 62, 0.97);
  backdrop-filter: blur(12px);
  -webkit-backdrop-filter: blur(12px);
  box-shadow: 0 4px 24px rgba(0, 0, 0, 0.18);
}

/* Transparente: só home / pages com transparentNav:true */
.dai-nav.dai-nav--transparent {
  background: transparent;
  backdrop-filter: none;
  -webkit-backdrop-filter: none;
  box-shadow: none;
}

/* Solidifica ao fazer scroll (classe adicionada por JS) */
.dai-nav.dai-nav--scrolled {
  background: rgba(13, 27, 62, 0.97) !important;
  backdrop-filter: blur(12px) !important;
  -webkit-backdrop-filter: blur(12px) !important;
  box-shadow: 0 4px 24px rgba(0, 0, 0, 0.2) !important;
}

.dai-nav__inner {
  max-width: 1280px; margin: 0 auto;
  display: flex; align-items: center; justify-content: space-between;
  padding: 1rem 1.5rem;
}

/* Logo */
.dai-nav__logo {
  font-size: 1.25rem; font-weight: 900; color: #fff;
  text-decoration: none; letter-spacing: -0.025em; line-height: 1;
}
.dai-nav__logo span { color: var(--dai-gold); }

/* Links de navegação */
.dai-nav__links {
  display: flex; align-items: center; gap: 1.5rem;
}

.dai-nav__link {
  font-size: 0.875rem; font-weight: 500;
  color: rgba(255, 255, 255, 0.65);
  text-decoration: none; transition: color 0.2s;
  white-space: nowrap;
}
.dai-nav__link:hover   { color: #fff; }
.dai-nav__link--active { color: var(--dai-gold); font-weight: 600; }

/* Botão entrar (texto) */
.dai-nav__enter {
  font-size: 0.875rem; font-weight: 500;
  color: rgba(255, 255, 255, 0.7);
  text-decoration: none; transition: color 0.2s;
}
.dai-nav__enter:hover { color: #fff; }

/* Botão "Criar conta" (gold) */
.dai-nav__register {
  display: inline-flex; align-items: center; gap: 0.25rem;
  background: var(--dai-gold); color: var(--dai-navy);
  font-size: 0.875rem; font-weight: 700;
  padding: 0.5rem 1rem; border-radius: 0.5rem;
  text-decoration: none;
  transition: background 0.2s, transform 0.15s;
  white-space: nowrap;
}
.dai-nav__register:hover {
  background: var(--dai-golddk);
  transform: translateY(-1px);
}

/* Ocultar links de texto em telas pequenas */
@media (max-width: 639px) {
  .dai-nav__link { display: none; }
}

/* ══════════════════════════════════════════════════════════
   FOOTER
   ══════════════════════════════════════════════════════════ */
.dai-footer { background: var(--dai-dark); padding: 2.5rem 0; }

.dai-footer__inner {
  max-width: 1024px; margin: 0 auto; padding: 0 1.5rem;
  display: flex; flex-direction: column;
  align-items: center; gap: 1rem;
}

@media (min-width: 640px) {
  .dai-footer__inner {
    flex-direction: row;
    justify-content: space-between;
    align-items: center;
  }
}

/* Logo no footer */
.dai-footer__logo {
  font-size: 0.875rem; font-weight: 700;
  color: rgba(255, 255, 255, 0.4);
  letter-spacing: -0.02em;
}
.dai-footer__logo span { color: rgba(255, 215, 0, 0.55); }

/* Links legais (privacidade, termos) */
.dai-footer__links {
  display: flex; align-items: center; gap: 0.75rem;
}
.dai-footer__link {
  font-size: 0.75rem; color: rgba(255, 255, 255, 0.3);
  text-decoration: none; transition: color 0.2s;
}
.dai-footer__link:hover { color: rgba(255, 255, 255, 0.6); }
.dai-footer__sep {
  color: rgba(255, 255, 255, 0.15); font-size: 0.75rem;
}

/* Tagline legal */
.dai-footer__legal {
  font-size: 0.75rem; color: rgba(255, 255, 255, 0.28);
  text-align: center;
}
@media (min-width: 640px) { .dai-footer__legal { text-align: right; } }
