@import url('https://fonts.googleapis.com/css2?family=Outfit:wght@700;800;900&family=Inter:wght@400;500;600&display=swap');

@keyframes rotate-gradient{0%{transform:rotate(0deg)}100%{transform:rotate(360deg)}}
@keyframes pulse-ring{0%{transform:scale(1);opacity:.7}70%{transform:scale(1.7);opacity:0}100%{transform:scale(1.7);opacity:0}}
@keyframes pulse-ring2{0%{transform:scale(1);opacity:.5}70%{transform:scale(2.1);opacity:0}100%{transform:scale(2.1);opacity:0}}
@keyframes orbit{0%{transform:rotate(0deg) translateX(22px) rotate(0deg)}100%{transform:rotate(360deg) translateX(22px) rotate(-360deg)}}
@keyframes badge-glow{0%,100%{box-shadow:0 0 18px rgba(201,162,39,.55),0 0 40px rgba(201,162,39,.22)}50%{box-shadow:0 0 35px rgba(240,200,66,.85),0 0 70px rgba(240,200,66,.45),0 0 110px rgba(201,162,39,.22)}}
@keyframes glow-breathe{0%,100%{box-shadow:0 0 12px rgba(201,162,39,.25),0 0 35px rgba(201,162,39,.08),inset 0 0 18px rgba(201,162,39,.04)}50%{box-shadow:0 0 28px rgba(201,162,39,.55),0 0 70px rgba(201,162,39,.18),inset 0 0 32px rgba(201,162,39,.09)}}
@keyframes float2{0%,100%{transform:translateY(0) scale(1)}50%{transform:translateY(-9px) scale(1.02)}}
@keyframes connector-flow{0%{background-position:0% 0%}100%{background-position:0% 100%}}
@keyframes spark-a{0%{opacity:0;transform:scale(0) rotate(0deg)}20%{opacity:1;transform:scale(1) rotate(45deg)}80%{opacity:.8}100%{opacity:0;transform:scale(.3) rotate(90deg) translate(6px,-6px)}}
@keyframes spark-b{0%{opacity:0;transform:scale(0) translate(0,0)}30%{opacity:1;transform:scale(1) translate(-3px,-5px)}100%{opacity:0;transform:scale(0) translate(-8px,-12px)}}
@keyframes spark-c{0%{opacity:0;transform:scale(0)}50%{opacity:1;transform:scale(1.3)}100%{opacity:0;transform:scale(0) translate(5px,8px)}}
@keyframes level-pulse{0%,100%{box-shadow:0 0 10px rgba(201,162,39,.35),0 0 25px rgba(201,162,39,.15)}50%{box-shadow:0 0 22px rgba(240,200,66,.8),0 0 45px rgba(201,162,39,.35)}}
@keyframes pulse-dot{0%,100%{opacity:1;box-shadow:0 0 6px 2px #c9a227}50%{opacity:.6;box-shadow:0 0 16px 6px #f0c842}}
@keyframes shimmer-text{0%{background-position:-300% center}100%{background-position:300% center}}
@keyframes scanline{0%{transform:translateY(-150%);opacity:0}10%{opacity:1}90%{opacity:1}100%{transform:translateY(500%);opacity:0}}
@keyframes slide-up-fade{from{opacity:0;transform:translateY(24px)}to{opacity:1;transform:translateY(0)}}

/* Card base */
.ct-card {
  position: relative;
  border-radius: 16px;
  overflow: hidden;
}
.ct-card .ct-body {
  position: relative;
  border-radius: 16px;
  z-index: 1;
  background: linear-gradient(145deg, rgba(15,40,19,0.96) 0%, rgba(8,20,11,0.98) 100%);
  transition: background 0.4s ease;
}

/* Título gradiente */
.ct-title {
  font-family: 'Outfit', sans-serif;
  font-size: 1.05rem;
  font-weight: 900;
  line-height: 1.3;
  background: linear-gradient(100deg, #ffffff 0%, #f0c842 45%, #c9a227 100%);
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  background-clip: text;
  display: block;
}

/* Linha decorativa */
.ct-line {
  display: flex;
  align-items: center;
  gap: 8px;
  margin-top: 12px;
}
.ct-chip {
  width: 26px; height: 26px;
  border-radius: 50%;
  background: rgba(201,162,39,0.14);
  border: 1px solid rgba(201,162,39,0.4);
  box-shadow: 0 0 8px rgba(201,162,39,0.2);
  display: flex; align-items: center; justify-content: center;
  flex-shrink: 0;
}
.ct-line-bar {
  flex: 1; height: 1px;
  background: linear-gradient(to right, rgba(201,162,39,0.45), rgba(201,162,39,0.08), transparent);
  box-shadow: 0 0 4px rgba(201,162,39,0.2);
}
.ct-dot-end {
  width: 5px; height: 5px; border-radius: 50%; flex-shrink: 0;
  background: #f0c842;
  box-shadow: 0 0 8px 3px rgba(240,200,66,0.6);
  animation: pulse-dot 1.8s ease-in-out infinite;
}

/* Ícone flutuante feature cards */
.ct-float-icon {
  flex-shrink: 0;
  animation: float2 linear infinite;
}
.ct-float-inner {
  width: 60px; height: 60px;
  border-radius: 16px;
  position: relative;
  display: flex; align-items: center; justify-content: center;
  background: linear-gradient(135deg, rgba(201,162,39,0.28), rgba(201,162,39,0.07));
  border: 1.5px solid rgba(201,162,39,0.52);
  box-shadow: 0 0 24px rgba(201,162,39,0.28), inset 0 1px 0 rgba(240,200,66,0.22);
}
.ct-float-border {
  position: absolute; inset: 0; border-radius: 16px; padding: 1px;
  background: conic-gradient(from 0deg, rgba(240,200,66,0.55), transparent 40%, rgba(201,162,39,0.4) 70%, transparent 100%);
  animation: rotate-gradient 3s linear infinite;
  -webkit-mask: linear-gradient(#fff 0 0) content-box, linear-gradient(#fff 0 0);
  -webkit-mask-composite: xor;
  mask-composite: exclude;
}

/* Sub-cards Público/Privado */
.ct-subcard {
  border-radius: 12px;
  padding: 16px;
  background: linear-gradient(135deg, rgba(201,162,39,0.1), rgba(201,162,39,0.03));
  border: 1px solid rgba(201,162,39,0.22);
  transition: all 0.3s ease;
  cursor: default;
}
.ct-subcard:hover {
  border-color: rgba(201,162,39,0.55);
  box-shadow: 0 0 20px rgba(201,162,39,0.15), inset 0 1px 0 rgba(240,200,66,0.12);
  transform: translateY(-2px);
}

/* Badges de nível */
.ct-level {
  display: flex; flex-direction: column; align-items: center;
  border-radius: 12px; padding: 8px 12px;
  min-width: 52px;
  background: linear-gradient(135deg, rgba(201,162,39,0.18), rgba(201,162,39,0.06));
  border: 1px solid rgba(201,162,39,0.3);
  transition: transform 0.2s cubic-bezier(0.34,1.56,0.64,1), box-shadow 0.2s;
  cursor: default;
}
.ct-level:hover {
  transform: scale(1.2) translateY(-5px);
  box-shadow: 0 8px 22px rgba(201,162,39,0.3);
}
.ct-level-hot {
  background: linear-gradient(135deg, #8a6010 0%, #c9a227 40%, #f0c842 65%, #a07818 100%);
  border: 1.5px solid rgba(240,200,66,0.85);
  animation: level-pulse 2s ease-in-out infinite;
}
.ct-level-hot:hover {
  box-shadow: 0 10px 28px rgba(201,162,39,0.55), 0 0 45px rgba(240,200,66,0.3);
}

/* Responsivo mobile */
@media (max-width: 768px) {
  #ct-section {
    grid-template-columns: 1fr !important;
  }
}

/* Integração mínima: preserva o markup original e dá ao #ct-section as duas colunas do prompt. */
.cash-introduction.ct-prompt7-host > #ct-section {
  grid-column: 1 / -1 !important;
  grid-row: auto !important;
  width: min(1024px, 100%) !important;
  max-width: 1024px !important;
  min-width: 0 !important;
  margin: 0 auto !important;
}
@media (max-width: 768px) {
  .cash-introduction.ct-prompt7-host > #ct-section {
    grid-template-columns: 1fr !important;
  }
}
@media (min-width: 769px) and (max-width: 1100px) {
  .cash-introduction.ct-prompt7-host > #ct-section {
    grid-template-columns: minmax(0, 1fr) minmax(0, 1fr) !important;
  }
}

/* Borda estática discreta dos blocos informativos. */
.ct-card > .ct-border-static {
  position: absolute;
  inset: 0;
  border: 1px solid rgba(201,162,39,.46);
  border-radius: 16px;
  box-shadow: inset 0 0 0 1px rgba(240,200,66,.06), 0 0 10px rgba(201,162,39,.06);
  pointer-events: none;
  z-index: 2;
}
