/* ==============================================================================
   EIXOADS CYBER DEFENSE - FOLHA DE ESTILOS OFICIAL (cyber.css)
   Base: Identidade Oficial EixoAds & ON Network (Clean High-End & Cyber Elite)
   ============================================================================== */

:root {
  --font-heading: 'Outfit', -apple-system, BlinkMacSystemFont, sans-serif;
  --font-body: 'Plus Jakarta Sans', -apple-system, BlinkMacSystemFont, sans-serif;
  --font-mono: 'JetBrains Mono', monospace;

  --color-dark: #0b1120;
  --color-slate: #0f172a;
  --color-brand-blue: #0284c7;
  --color-brand-green: #10b981;
  --color-whatsapp: #16a34a;
  --color-danger: #ef4444;
  --color-warning: #f59e0b;

  --bg-page: #ffffff;
  --bg-subtle: #f8fafc;
  --border-light: #e2e8f0;
}

* {
  box-sizing: border-box;
  margin: 0;
  padding: 0;
}

html, body {
  overflow-x: hidden !important;
  max-width: 100vw !important;
  width: 100%;
}

body {
  font-family: var(--font-body);
  background-color: var(--bg-page);
  color: #334155;
  line-height: 1.6;
  -webkit-font-smoothing: antialiased;
}

h1, h2, h3, h4, h5, h6 {
  font-family: var(--font-heading);
  letter-spacing: -0.025em;
}

.text-white,
h1.text-white, h2.text-white, h3.text-white, h4.text-white,
.text-white h1, .text-white h2, .text-white h3, .text-white h4,
.bg-slate-900 h1, .bg-slate-900 h2, .bg-slate-900 h3, .bg-slate-900 h4,
.bg-slate-950 h1, .bg-slate-950 h2, .bg-slate-950 h3, .bg-slate-950 h4,
.bg-\[\#0b1120\] h1, .bg-\[\#0b1120\] h2, .bg-\[\#0b1120\] h3, .bg-\[\#0b1120\] h4 {
  color: #ffffff !important;
}

/* Botão Oficial WhatsApp / Ação Principal */
.btn-whatsapp {
  background-color: #16a34a;
  color: #ffffff;
  font-weight: 700;
  padding: 0.85rem 1.75rem;
  border-radius: 9999px;
  display: inline-flex;
  align-items: center;
  gap: 0.5rem;
  transition: all 0.2s cubic-bezier(0.4, 0, 0.2, 1);
  box-shadow: 0 4px 14px rgba(22, 163, 74, 0.35);
  border: none;
  cursor: pointer;
  text-decoration: none;
}
.btn-whatsapp:hover {
  background-color: #15803d;
  transform: translateY(-2px);
  box-shadow: 0 6px 20px rgba(22, 163, 74, 0.45);
  color: #ffffff;
}

/* Botão Secundário Clean */
.btn-secondary-clean {
  background-color: #ffffff;
  color: #0f172a;
  font-weight: 700;
  padding: 0.85rem 1.75rem;
  border-radius: 9999px;
  display: inline-flex;
  align-items: center;
  gap: 0.5rem;
  border: 1px solid #cbd5e1;
  transition: all 0.2s ease;
  cursor: pointer;
  text-decoration: none;
}
.btn-secondary-clean:hover {
  background-color: #f1f5f9;
  border-color: #94a3b8;
  transform: translateY(-2px);
  color: #0f172a;
}

/* Botão Cyber Danger / Takedown */
.btn-cyber-red {
  background: linear-gradient(135deg, #ef4444 0%, #b91c1c 100%);
  color: #ffffff;
  font-weight: 700;
  padding: 0.85rem 1.75rem;
  border-radius: 9999px;
  display: inline-flex;
  align-items: center;
  gap: 0.5rem;
  box-shadow: 0 4px 15px rgba(239, 68, 68, 0.35);
  transition: all 0.2s ease;
  border: none;
  cursor: pointer;
}
.btn-cyber-red:hover {
  background: linear-gradient(135deg, #dc2626 0%, #991b1b 100%);
  transform: translateY(-2px);
  box-shadow: 0 6px 22px rgba(239, 68, 68, 0.5);
  color: #ffffff;
}

/* Smartphone Mockup Realista (Baseado na Identidade EixoAds) */
.phone-frame {
  width: 100%;
  max-width: 380px;
  margin: 0 auto;
  background: #0f172a;
  border-radius: 44px;
  padding: 12px;
  box-shadow: 0 25px 50px -12px rgba(15, 23, 42, 0.35), 0 0 0 1px rgba(255, 255, 255, 0.1);
  position: relative;
}

.phone-screen {
  background: #0b1120;
  border-radius: 34px;
  overflow: hidden;
  border: 1px solid rgba(255, 255, 255, 0.08);
  font-size: 13px;
  color: #e2e8f0;
}

.phone-header {
  background: #111827;
  padding: 14px 16px;
  border-bottom: 1px solid #1f2937;
  display: flex;
  align-items: center;
  justify-content: space-between;
}

.chat-bubble-victim {
  background: #1e293b;
  color: #f1f5f9;
  border-radius: 16px 16px 16px 4px;
  padding: 12px 14px;
  max-width: 88%;
  font-size: 12.5px;
  line-height: 1.45;
  box-shadow: 0 2px 5px rgba(0, 0, 0, 0.2);
}

.chat-bubble-soc {
  background: #064e3b;
  color: #ecfdf5;
  border-radius: 16px 16px 4px 16px;
  padding: 12px 14px;
  max-width: 90%;
  margin-left: auto;
  font-size: 12.5px;
  line-height: 1.45;
  border-left: 3px solid #10b981;
  box-shadow: 0 2px 5px rgba(0, 0, 0, 0.2);
}

/* Radar Animado */
@keyframes radarSweep {
  0% { transform: rotate(0deg); }
  100% { transform: rotate(360deg); }
}
.radar-sweep {
  animation: radarSweep 4s linear infinite;
  transform-origin: center center;
}

/* Glassmorphism e Cards */
.cyber-card {
  background: #ffffff;
  border: 1px solid #e2e8f0;
  border-radius: 20px;
  transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
}
.cyber-card:hover {
  transform: translateY(-4px);
  box-shadow: 0 14px 30px rgba(15, 23, 42, 0.08);
  border-color: #0284c7;
}

.cyber-card-dark {
  background: #0b1120;
  border: 1px solid #1e293b;
  border-radius: 20px;
  color: #f8fafc;
}

/* Form Controls */
.cyber-input {
  width: 100%;
  padding: 12px 16px;
  border: 1.5px solid #cbd5e1;
  border-radius: 12px;
  background-color: #ffffff;
  color: #0f172a;
  font-size: 14px;
  outline: none;
  transition: all 0.2s ease;
}
.cyber-input:focus {
  border-color: #0284c7;
  box-shadow: 0 0 0 3px rgba(2, 132, 199, 0.15);
}

/* Terminal Console para o Scanner */
.terminal-window {
  background: #050811;
  border: 1px solid #1e293b;
  border-radius: 16px;
  font-family: var(--font-mono);
  font-size: 12.5px;
  color: #38bdf8;
  padding: 20px;
  overflow-x: auto;
  box-shadow: 0 10px 25px rgba(0, 0, 0, 0.4);
}

/* Status Badges */
.badge-received { background: #fef3c7; color: #92400e; border: 1px solid #fde68a; }
.badge-investigating { background: #e0f2fe; color: #0369a1; border: 1px solid #bae6fd; }
.badge-abuse { background: #fae8ff; color: #86198f; border: 1px solid #f5d0fe; }
.badge-takedown { background: #dcfce7; color: #166534; border: 1px solid #bbf7d0; }
.badge-escalated { background: #fee2e2; color: #991b1b; border: 1px solid #fecaca; }

/* Pulse Indicator */
.pulse-green {
  display: inline-block;
  width: 8px;
  height: 8px;
  border-radius: 50%;
  background: #10b981;
  box-shadow: 0 0 0 rgba(16, 185, 129, 0.7);
  animation: pulseGreen 2s infinite;
}
@keyframes pulseGreen {
  0% { transform: scale(0.95); box-shadow: 0 0 0 0 rgba(16, 185, 129, 0.7); }
  70% { transform: scale(1); box-shadow: 0 0 0 8px rgba(16, 185, 129, 0); }
  100% { transform: scale(0.95); box-shadow: 0 0 0 0 rgba(16, 185, 129, 0); }
}

/* RTL Support */
[dir="rtl"] {
  text-align: right;
}
[dir="rtl"] .chat-bubble-soc {
  margin-left: 0;
  margin-right: auto;
  border-left: none;
  border-right: 3px solid #10b981;
}
