/* ==========================================================================
   FESTCIN & Embratur Design System CSS
   ========================================================================== */

:root {
  /* Cores Embratur */
  --embratur-green: #007236;
  --embratur-blue: #005CA9;
  --embratur-yellow: #FFC700;
  --embratur-red: #E30613;
  --embratur-teal: #00D0C5;

  /* Cores Oficiais FESTCIN */
  --fest-magenta: #D81B60;
  --fest-orange: #FF6F00;
  --fest-yellow: #FFB300;
  --fest-purple: #7E22CE;
  --fest-purple-light: #A855F7;
  --fest-black: #121212;
  --fest-gradient: linear-gradient(135deg, #D81B60 0%, #FF6F00 50%, #FFB300 100%);
  --streaming-gradient: linear-gradient(135deg, #6B21A8 0%, #A855F7 50%, #3B82F6 100%);

  /* Neutros */
  --dark-bg: #0B0F0C;
  --dark-card: #141C16;
  --light-bg: #F8FAF8;
  --light-card: #FFFFFF;
  --text-dark: #1A1A1A;
  --text-muted: #64748B;
  --border-color: #E2E8F0;
}

/* Base Body Styles */
body.festcin-theme {
  font-family: 'Plus Jakarta Sans', sans-serif;
  background-color: var(--dark-bg);
  color: var(--text-dark);
}

/* Badges */
.festcin-badge {
  display: inline-flex;
  align-items: center;
  padding: 4px 10px;
  border-radius: 100px;
  font-size: 11px;
  font-weight: 700;
  letter-spacing: 0.5px;
  text-transform: uppercase;
  font-family: 'Plus Jakarta Sans', sans-serif;
}

.festcin-badge-fest { background: var(--fest-gradient); color: #FFFFFF; }
.festcin-badge-green { background: rgba(0, 114, 54, 0.12); color: var(--embratur-green); }
.festcin-badge-blue { background: rgba(0, 92, 169, 0.12); color: var(--embratur-blue); }
.festcin-badge-magenta { background: rgba(216, 27, 96, 0.12); color: var(--fest-magenta); }
.festcin-badge-purple { background: rgba(168, 85, 247, 0.15); color: var(--fest-purple-light); }

/* Cards Executivos */
.festcin-card {
  background: var(--light-card);
  border: 1px solid var(--border-color);
  border-radius: 12px;
  padding: 18px 20px;
  box-shadow: 0 4px 6px -1px rgba(0, 0, 0, 0.03);
  transition: all 0.3s ease;
  font-family: 'Plus Jakarta Sans', sans-serif;
}

.festcin-card.dark-theme {
  background: var(--dark-card);
  border-color: rgba(255, 255, 255, 0.08);
  color: #FFFFFF;
}

.festcin-card-accent-top { border-top: 4px solid var(--fest-magenta) !important; }
.festcin-card-accent-green { border-top: 4px solid var(--embratur-green) !important; }
.festcin-card-accent-blue { border-top: 4px solid var(--embratur-blue) !important; }
.festcin-card-accent-orange { border-top: 4px solid var(--fest-orange) !important; }
.festcin-card-accent-purple { border-top: 4px solid var(--fest-purple-light) !important; }

.festcin-card-title {
  font-size: 14px;
  font-weight: 700;
  margin-bottom: 8px;
  display: flex;
  align-items: center;
  gap: 8px;
  color: var(--text-dark);
}

.festcin-card.dark-theme .festcin-card-title {
  color: #FFFFFF;
}

.festcin-card-text {
  font-size: 12px;
  color: var(--text-muted);
  line-height: 1.5;
}

.festcin-card.dark-theme .festcin-card-text {
  color: #CBD5E1;
}

/* Feature Checklist */
.festcin-feature-list {
  list-style: none;
  padding: 0;
  margin: 0;
  display: flex;
  flex-direction: column;
  gap: 8px;
}

.festcin-feature-list li {
  font-size: 11.5px;
  display: flex;
  align-items: flex-start;
  gap: 8px;
  line-height: 1.4;
}

.festcin-feature-list li::before {
  content: "✓";
  color: var(--embratur-green);
  font-weight: 800;
  background: rgba(0, 114, 54, 0.1);
  width: 16px;
  height: 16px;
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 9px;
  flex-shrink: 0;
  margin-top: 1px;
}

.festcin-card.dark-theme .festcin-feature-list li::before {
  color: var(--embratur-yellow);
  background: rgba(255, 199, 0, 0.15);
}

/* Gradiente de Texto */
.festcin-gradient-text {
  background: var(--fest-gradient);
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  display: inline-block;
}
