/**
 * ================================================
 * ARCA ACADEMY - BRANDING GLOBAL
 * Estilos de branding aplicados em toda plataforma
 * ================================================
 * 
 * Este arquivo garante consistência visual completa
 * entre landing page e área de membros
 */

/* ============================================
   VARIÁVEIS GLOBAIS ARCA ACADEMY
   ============================================ */
:root {
  /* Paleta Oficial */
  --deep-navy: #1B2A41;
  --antique-gold: #C59D5F;
  --parchment: #F2EFE9;
  --terracotta: #A05C45;
  
  /* Tipografia */
  --font-primary: 'Lato', -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif;
  --font-serif: 'Playfair Display', Georgia, serif;
}

/* ============================================
   TIPOGRAFIA
   ============================================ */
body {
  font-family: var(--font-primary) !important;
}

/* Força parchment com máxima prioridade */
html body,
body:not(.aa-dark-theme),
body.d-flex {
  background: var(--parchment) !important;
  background-color: var(--parchment) !important;
  background-image: none !important;
  color: var(--deep-navy) !important;
}

body:not(.aa-dark-theme) {
  background: var(--parchment) !important;
  background-color: var(--parchment) !important;
  background-image: none !important;
  color: var(--deep-navy);
}

h1, h2, h3, .heading-serif, .font-serif {
  font-family: var(--font-serif) !important;
}

/* ============================================
   UTILITÁRIOS DE COR
   ============================================ */

/* Backgrounds */
.bg-navy { background-color: var(--deep-navy) !important; }
.bg-gold { background-color: var(--antique-gold) !important; }
.bg-parchment { background-color: var(--parchment) !important; }
.bg-terracotta { background-color: var(--terracotta) !important; }

/* Textos */
.text-navy { color: var(--deep-navy) !important; }
.text-gold { color: var(--antique-gold) !important; }
.text-terracotta { color: var(--terracotta) !important; }
.text-parchment { color: var(--parchment) !important; }

/* Bordas */
.border-navy { border-color: var(--deep-navy) !important; }
.border-gold { border-color: var(--antique-gold) !important; }
.border-terracotta { border-color: var(--terracotta) !important; }

/* ============================================
   BOTÕES PRIMÁRIOS
   ============================================ */
.btn-primary, 
.btn.btn-primary,
.btn-arca-primary {
  background-color: var(--antique-gold) !important;
  border-color: var(--antique-gold) !important;
  color: white !important;
  transition: all 0.3s ease;
}

.btn-primary:hover,
.btn.btn-primary:hover,
.btn-arca-primary:hover {
  background-color: #b08c52 !important;
  border-color: #b08c52 !important;
  transform: translateY(-2px);
  box-shadow: 0 10px 25px rgba(197, 157, 95, 0.4);
}

.btn-secondary,
.btn.btn-secondary,
.btn-arca-secondary {
  background-color: var(--deep-navy) !important;
  border-color: var(--deep-navy) !important;
  color: white !important;
  transition: all 0.3s ease;
}

.btn-secondary:hover,
.btn.btn-secondary:hover,
.btn-arca-secondary:hover {
  background-color: #15202f !important;
  border-color: #15202f !important;
  transform: translateY(-2px);
  box-shadow: 0 10px 25px rgba(27, 42, 65, 0.4);
}

/* ============================================
   BADGES E TAGS
   ============================================ */
.badge-arca-gold {
  background: linear-gradient(135deg, var(--antique-gold) 0%, #b08c52 100%);
  color: white;
  padding: 0.35rem 0.75rem;
  border-radius: 20px;
  font-weight: 700;
  font-size: 0.78rem;
  box-shadow: 0 2px 8px rgba(197, 157, 95, 0.3);
}

.badge-arca-navy {
  background: linear-gradient(135deg, var(--deep-navy) 0%, #15202f 100%);
  color: white;
  padding: 0.35rem 0.75rem;
  border-radius: 20px;
  font-weight: 700;
  font-size: 0.78rem;
  box-shadow: 0 2px 8px rgba(27, 42, 65, 0.3);
}

/* ============================================
   CARDS
   ============================================ */
.card-arca {
  background: white;
  border: 1px solid #E2E8F0;
  border-radius: 16px;
  box-shadow: 0 4px 6px -1px rgba(0, 0, 0, 0.1);
  transition: all 0.3s ease;
}

.card-arca:hover {
  transform: translateY(-4px);
  box-shadow: 0 10px 25px rgba(197, 157, 95, 0.15);
  border-color: var(--antique-gold);
}

.card-arca-header {
  background: linear-gradient(135deg, var(--antique-gold) 0%, var(--terracotta) 100%);
  color: white;
  padding: 1rem 1.5rem;
  border-radius: 16px 16px 0 0;
  font-weight: 700;
}

.card-arca-navy {
  background: var(--deep-navy);
  color: white;
  border: 1px solid rgba(197, 157, 95, 0.2);
  border-radius: 16px;
}

/* ============================================
   NAVBAR E FOOTER
   ============================================ */
.navbar-arca {
  background: rgba(242, 239, 233, 0.95) !important;
  backdrop-filter: blur(10px);
  border-bottom: 1px solid rgba(197, 157, 95, 0.1);
}

.navbar-arca .nav-link {
  color: var(--deep-navy) !important;
  font-weight: 600;
  transition: color 0.3s ease;
}

.navbar-arca .nav-link:hover {
  color: var(--antique-gold) !important;
}

.footer-arca {
  background: var(--deep-navy) !important;
  color: var(--parchment) !important;
  border-top: 2px solid var(--antique-gold);
}

.aa-footer {
  background: var(--deep-navy) !important;
  color: var(--parchment) !important;
  border-top: 2px solid var(--antique-gold);
}

.aa-footer a {
  color: var(--antique-gold) !important;
}

.aa-footer a:hover {
  color: #b08c52 !important;
}

/* ============================================
   INLINE COLOR OVERRIDES (LEGACY TEMPLATES)
   ============================================ */

/* Gradients using the old blue/purple palette */
[style*="linear-gradient(135deg, #667eea"],
[style*="linear-gradient(135deg, #764ba2"],
[style*="linear-gradient(135deg, #3B82F6"],
[style*="linear-gradient(135deg, #6366F1"],
[style*="linear-gradient(135deg, #7c3aed"],
[style*="linear-gradient(135deg, #8b5cf6"],
[style*="linear-gradient(135deg, #4facfe"],
[style*="linear-gradient(135deg, #f093fb"],
[style*="linear-gradient(135deg, #f5576c"],
[style*="linear-gradient(135deg, #30cfd0"],
[style*="linear-gradient(135deg, #00f2fe"],
[style*="linear-gradient(135deg, #00d4ff"],
[style*="linear-gradient(135deg, #fa709a"],
[style*="linear-gradient(135deg, #fee140"],
[style*="linear-gradient(135deg, #b721ff"],
[style*="linear-gradient(135deg, #330867"],
[style*="linear-gradient(90deg, #667eea"],
[style*="linear-gradient(90deg, #764ba2"] {
  background: linear-gradient(135deg, var(--antique-gold) 0%, var(--terracotta) 100%) !important;
}

/* Solid backgrounds using the old palette */
[style*="background: #667eea"],
[style*="background:#667eea"],
[style*="background: #764ba2"],
[style*="background:#764ba2"],
[style*="background: #3B82F6"],
[style*="background:#3B82F6"],
[style*="background: #6366F1"],
[style*="background:#6366F1"],
[style*="background: #7c3aed"],
[style*="background:#7c3aed"],
[style*="background: #8b5cf6"],
[style*="background:#8b5cf6"],
[style*="background: #4facfe"],
[style*="background:#4facfe"],
[style*="background: #f093fb"],
[style*="background:#f093fb"],
[style*="background: #f5576c"],
[style*="background:#f5576c"],
[style*="background: #30cfd0"],
[style*="background:#30cfd0"],
[style*="background: #00f2fe"],
[style*="background:#00f2fe"],
[style*="background: #00d4ff"],
[style*="background:#00d4ff"],
[style*="background: #fa709a"],
[style*="background:#fa709a"],
[style*="background: #fee140"],
[style*="background:#fee140"],
[style*="background: #b721ff"],
[style*="background:#b721ff"],
[style*="background: #330867"],
[style*="background:#330867"] {
  background: var(--antique-gold) !important;
}

/* Inline text colors */
[style*="color: #667eea"],
[style*="color:#667eea"],
[style*="color: #764ba2"],
[style*="color:#764ba2"],
[style*="color: #3B82F6"],
[style*="color:#3B82F6"],
[style*="color: #6366F1"],
[style*="color:#6366F1"],
[style*="color: #7c3aed"],
[style*="color:#7c3aed"],
[style*="color: #8b5cf6"],
[style*="color:#8b5cf6"],
[style*="color: #4facfe"],
[style*="color:#4facfe"],
[style*="color: #00d4ff"],
[style*="color:#00d4ff"],
[style*="color: #f093fb"],
[style*="color:#f093fb"],
[style*="color: #f5576c"],
[style*="color:#f5576c"],
[style*="color: #fa709a"],
[style*="color:#fa709a"],
[style*="color: #fee140"],
[style*="color:#fee140"],
[style*="color: #b721ff"],
[style*="color:#b721ff"],
[style*="color: #330867"],
[style*="color:#330867"] {
  color: var(--antique-gold) !important;
}

/* Inline borders */
[style*="border-color: #667eea"],
[style*="border-color:#667eea"],
[style*="border-color: #764ba2"],
[style*="border-color:#764ba2"],
[style*="border-left: 4px solid #667eea"],
[style*="border-left:4px solid #667eea"],
[style*="border-left: 4px solid #3B82F6"],
[style*="border-left:4px solid #3B82F6"],
[style*="border-left: 4px solid #f093fb"],
[style*="border-left:4px solid #f093fb"],
[style*="border-left: 4px solid #4facfe"],
[style*="border-left:4px solid #4facfe"] {
  border-color: var(--antique-gold) !important;
  border-left-color: var(--antique-gold) !important;
}

/* ============================================
   GRADIENTES
   ============================================ */
.gradient-gold-terracotta {
  background: linear-gradient(135deg, var(--antique-gold) 0%, var(--terracotta) 100%);
}

.gradient-navy-dark {
  background: linear-gradient(135deg, var(--deep-navy) 0%, #15202f 100%);
}

.gradient-parchment {
  background: linear-gradient(135deg, var(--parchment) 0%, #E8E4DB 100%);
}

/* ============================================
   TEXT GRADIENT
   ============================================ */
.text-gradient-arca {
  background: linear-gradient(135deg, var(--antique-gold) 0%, var(--terracotta) 100%);
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  background-clip: text;
  font-weight: 700;
}

/* ============================================
   LINKS
   ============================================ */
a {
  color: var(--antique-gold);
  transition: color 0.3s ease;
}

a:hover {
  color: #b08c52;
}

/* ============================================
   FORMULÁRIOS
   ============================================ */
.form-control:focus,
.form-select:focus {
  border-color: var(--antique-gold) !important;
  box-shadow: 0 0 0 0.25rem rgba(197, 157, 95, 0.25) !important;
}

/* ============================================
   ALERTS
   ============================================ */
.alert-arca-gold {
  background-color: #f5ecd7;
  border-color: var(--antique-gold);
  color: var(--deep-navy);
}

.alert-arca-navy {
  background-color: #e6eaf0;
  border-color: var(--deep-navy);
  color: var(--deep-navy);
}

/* ============================================
   PROGRESSO
   ============================================ */
.progress-bar-arca {
  background: linear-gradient(135deg, var(--antique-gold) 0%, var(--terracotta) 100%);
}

/* ============================================
   SOMBRAS CUSTOMIZADAS
   ============================================ */
.shadow-arca-gold {
  box-shadow: 0 10px 25px rgba(197, 157, 95, 0.2);
}

.shadow-arca-navy {
  box-shadow: 0 10px 25px rgba(27, 42, 65, 0.2);
}

/* ============================================
   ANIMAÇÕES
   ============================================ */
@keyframes fadeInUp {
  from {
    opacity: 0;
    transform: translateY(20px);
  }
  to {
    opacity: 1;
    transform: translateY(0);
  }
}

.fade-in-up {
  animation: fadeInUp 0.6s ease-out;
}

/* ============================================
   RESPONSIVO
   ============================================ */
@media (max-width: 768px) {
  .card-arca {
    border-radius: 12px;
  }
  
  .card-arca-header {
    border-radius: 12px 12px 0 0;
  }
}

/* ============================================
   OVERRIDE FINAL - MÁXIMA PRIORIDADE
   Remove qualquer gradiente ou background indesejado
   ============================================ */
html body,
html body.d-flex,
html body.d-flex.flex-column,
html body:not(.aa-dark-theme) {
  background: var(--parchment) !important;
  background-color: var(--parchment) !important;
  background-image: none !important;
  background-size: auto !important;
  background-repeat: repeat !important;
  background-attachment: scroll !important;
  background-position: 0% 0% !important;
}
