
html[data-bs-theme="light"] .fill-body {
    color: #FFFFFF;
  }

  html[data-bs-theme="dark"] .fill-body { 
    color: #0b0f1a;
  }

  [data-bs-theme="dark"] {
  --bs-gray-100: #101521;
  --bs-gray-200: #1c2130;
  --bs-gray-300: #5f5f68;
  --bs-gray-400: #a1a1a8;
  --bs-gray-500: #bfc0c9;
  --bs-gray-600: #CFD0D4;
  --bs-gray-700: #ffffffb3;
  --bs-gray-800: #ffffffd9;
  --bs-gray-900: #fff;
  --bs-body-bg: #0b0f1a;
  --bs-body-bg-rgb: 11, 15, 26;
  --bs-body-color: #c4c5c7;
  --bs-heading-color: var(--bs-gray-900);
  --bs-secondary: #1f2434;
  --bs-secondary-bg-rgb: 31, 36, 52;
  --bs-border-color: rgba(255, 255, 255, 0.07);
  }


  .step-card {
    border: 1px solid #e0e0e0;
    border-radius: 1rem;
    padding: 2rem;
    text-align: center;
    transition: 0.3s;
    height: 100%;
  }
  .step-card:hover {
    background-color: #f8f9fa;
    transform: translateY(-5px);
  }
  .step-number {
    font-size: 2rem;
    font-weight: bold;
    color: #0d6efd;
  }
  .step-icon {
    font-size: 2.5rem;
    color: #0d6efd;
    margin-bottom: 1rem;
  }
  .final-message {
    margin-top: 2rem;
    font-size: 1.25rem;
    font-weight: bold;
    text-align: center;
    color: #198754;
  }


  


  .fill-body {
    color: #FFFFFF; /* cor de fundo atual (inverte o contraste do svg) */
  }

  .header-sticky {
    position: fixed;
    top: 0;
    width: 100%;
    z-index: 1050;
    background-color: transparent;
    transition: 0.4s ease-in-out;
  }

  .header-sticky.hide {
    transform: translateY(-150px);
  }
  @media (max-width: 768px) {
    .header-sticky {
      background-color: var(--bs-body-bg);
    }
  }

  /* Quando rolar */
  .header-sticky.scrolled {
    transform: translateY(0);
    background-color: var(--bs-body-bg); 
    color: var(--bs-body-color);
  }
  
  [data-bs-theme="dark"] .logo-img {
    filter: invert(0) !important;
  }

  .header-absolute {
    position: relative;
  }

  .navbar-brand img {
    width: 44px;
    opacity: 0.9;
  }

  .dropdown-menu-size-lg {
    min-width: 600px;
  }

  .dropdown-menu-size-xl {
    min-width: 800px;
  }

      /* Esconde todos os dropdown-menus por padrão */
  .dropdown-hover .dropdown-menu {
  display: none;
  opacity: 0;
  transition: opacity 0.2s ease;
  margin-top: 0.5rem;
  position: absolute;
  left: 0;
  top: 100%;
  z-index: 1000;
  }

  /* Mostra o dropdown ao passar o mouse */
  .dropdown-hover:hover > .dropdown-menu,
  .dropdown-hover:focus-within > .dropdown-menu {
  display: block ;
  opacity: 1;
  }

  /* Corrige z-index para evitar sobreposição incorreta */
  .navbar-nav .dropdown-menu {
  z-index: 2000;
  }


  .navbar-toggler-animation span {
    display: block;
    width: 25px;
    height: 2px;
    background-color: #000;
    margin: 5px 0;
  }

  .bg-overlay {
    position: absolute;
    inset: 0;
  }

  .mode-switch svg {
    margin-right: 8px;
  }

  .icon-md {
    width: 40px;
    height: 40px;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 20px;
  }
  .bg-secondary-grad {
    background: linear-gradient(90deg, rgba(240, 150, 255, 0.3) 0%, rgba(191, 200, 252, 0.15) 51%, rgba(187, 148, 255, 0.15) 100%);
  }

  @keyframes flutuar {
    0% {
      transform: translateY(0px);
    }
    50% {
      transform: translateY(-10px);
    }
    100% {
      transform: translateY(0px);
    }
  }

  .elemento-flutuante {
    animation: flutuar 3s ease-in-out infinite;
  }

  /* animação mensagens */
  /* .chat-window {
    width: 450px;
    height: 500px;
    overflow: hidden;
    position: relative;
    color: #000000;
    padding: 16px;
    display: flex;
    flex-direction: column;
    justify-content: flex-end;
    gap: 10px;
    font-family: sans-serif;
  }

  .message {
    max-width: 80%;
    padding: 10px 14px;
    border-radius: 16px;
    font-size: 14px;
    line-height: 1.4;
    opacity: 0;
    transform: translateY(20px) scale(1);
    animation: fadeInUp 0.5s ease-in-out forwards;
    position: relative;
  }

  .message-user {
    background-color: #d2f8cd;
    align-self: flex-end;
  }

  .message-bot {
    background-color: #fff;
    align-self: flex-start;
  }

  @keyframes fadeInUp {
    from {
      opacity: 0;
      transform: translateY(30px) scale(0.98);
    }
    to {
      opacity: 1;
      transform: translateY(0) scale(1);
    }
  }

  @keyframes fadeOutUp {
    to {
      opacity: 0;
      transform: translateY(-40px) scale(0.9);
    }
  }

  .fade-out {
    animation: fadeOutUpSmooth 0.8s ease forwards;
  }

  @keyframes fadeOutUpSmooth {
    0% {
      opacity: 1;
      transform: translateY(0) scale(1);
    }
    100% {
      opacity: 0;
      transform: translateY(-40px) scale(0.95);
    }
  } */

  /* price-cards */
  .pricing-plans {
    display: flex;
    gap: 2rem !important;
    justify-content: center !important;
    flex-wrap: wrap !important;
    padding: 0 !important;
    max-width: 1200px !important;
    margin: 0 auto !important;
}

.pricing-card {
    background: white !important;
    border-radius: 20px !important;
    padding: 2rem !important;
    width: 350px !important;
    position: relative !important;
    box-shadow: 0 10px 30px rgba(0,0,0,0.1) !important;
    transition: transform 0.3s ease !important;
    border: 1px solid rgba(230, 2, 101, 0.1) !important;
}

.pricing-card:hover {
    transform: translateY(-10px) !important;
    box-shadow: 0 20px 40px rgba(1, 87, 118, 0.15) !important;
}

.card-header {
    text-align: center !important;
    margin-bottom: 2rem !important;
}

.plan-tag {
    color: white !important;
    padding: 0.5rem 1rem !important;
    border-radius: 20px !important;
    font-size: 0.875rem !important;
    position: absolute !important;
    top: -12px !important;
    left: 50% !important;
    transform: translateX(-50%) !important;
}

.card-header h3 {
    color: #333 !important;
    font-size: 1.5rem !important;
    margin: 1.5rem 0 0.5rem !important;
    font-weight: 700 !important;
}

.subtitle {
    color: #666 !important;
    font-size: 0.9rem !important;
}

.price {
    text-align: center !important;
    margin: 1.5rem 0 !important;
    padding: 1rem !important;
    border-radius: 10px !important;
}

.from {
    display: block !important;
    color: #666 !important;
    font-size: 0.875rem !important;
}

.amount {
    font-size: 2.5rem !important;
    font-weight: 700 !important;
}

.detail {
    display: block !important;
    color: #666 !important;
    font-size: 0.875rem !important;
    margin-top: 0.5rem !important;
}

.features {
    margin: 2rem 0 !important;
}

.features ul {
    list-style: none !important;
    padding: 0 !important;
    margin: 0 !important;
}

.features li {
    padding: 0.75rem 0 !important;
    color: #444 !important;
    position: relative !important;
    padding-left: 1.5rem !important;
}

.features li::before {
    content: '✓' !important;
    position: absolute !important;
    left: 0 !important;
}

.cta-button {
    display: block !important;
    text-align: center !important;
    padding: 1rem 2rem !important;
    color: white !important;
    text-decoration: none !important;
    border-radius: 25px !important;
    font-weight: 600 !important;
    transition: all 0.3s ease !important;
}

.cta-button:hover {
    transform: translateY(-2px) !important;
}

/* Colores específicos para cada card */
.card-pink .plan-tag,
.card-pink .cta-button {
  background: linear-gradient(135deg, #7ec8e3, #6a9ae2) !important;

}

.card-pink .features li::before {
    color: #7ec8e3 !important;
}

.card-pink .amount {
  background: linear-gradient(135deg, #7ec8e3, #6a9ae2) !important;
    -webkit-text-fill-color: #FFFFFF !important;
}

.card-purple .plan-tag,
.card-purple .cta-button {
    background: linear-gradient(135deg, #9F80DA, #E496E7) !important;
}

.card-purple .features li::before {
    color: #9F80DA !important;
}

.card-purple .amount {
    background: linear-gradient(135deg, #9F80DA, #E496E7) !important;
    
    -webkit-text-fill-color: #FFFFFF !important;
}

.card-teal .plan-tag,
.card-teal .cta-button {
    background: linear-gradient(135deg, #01CDBA, #7AB20F) !important;
}

.card-teal .features li::before {
    color: #01CDBA !important;
}

.card-teal .amount {
    background: linear-gradient(135deg, #01CDBA, #7AB20F) !important;
    -webkit-text-fill-color: #FFFFFF !important;
}

.card-pink .price {
  background: linear-gradient(135deg, rgba(126, 200, 227, 0.1), rgba(106, 154, 226, 0.1)) !important;
}

.card-purple .price {
    background: linear-gradient(135deg, rgba(159, 128, 218, 0.1), rgba(228, 150, 231, 0.1)) !important;
}

.card-teal .price {
    background: linear-gradient(135deg, rgba(1, 205, 186, 0.1), rgba(122, 178, 15, 0.1)) !important;
}

@media (max-width: 768px) {
    .pricing-card {
        width: 100% !important;
        max-width: 350px !important;
    }
}
