/* Cyber-green theme overrides */
:root{
  --cyber-bg: #04121a;
  --cyber-panel: rgba(4,18,26,0.6);
  --cyber-accent: #00d47a;
  --cyber-muted: #9fbfcf;
}
body { background: linear-gradient(180deg,var(--cyber-bg) 0%, #071226 100%); color: #e6f7ef; font-family: Inter, system-ui, -apple-system, "Segoe UI", Roboto, 'Helvetica Neue', Arial; }
.card-cyber { background: var(--cyber-panel); border: 1px solid rgba(0,212,122,0.08); box-shadow: 0 6px 18px rgba(0,0,0,0.5); color: #e6f7ef; }
.hero-title { font-size: 2.2rem; font-weight:700; color: #fff; }
.lead { color: var(--cyber-muted); }
.accent { color: var(--cyber-accent); }
.navbar-dark .navbar-nav .nav-link { color: #cfeee4; }
.search-hero .form-control { background: rgba(255,255,255,0.02); border: 1px solid rgba(255,255,255,0.03); color: #e6f7ef; }
.whois-block { background: rgba(0,0,0,0.25); color: #dfffe7; padding: 12px; border-radius:6px; }
.report-list li { margin-bottom: 12px; padding-bottom: 8px; border-bottom: 1px dashed rgba(255,255,255,0.03); }
@media (max-width:767px){
  .hero-title{font-size:1.6rem}
}

/* Animations */
@keyframes accent-glow {
  0% { box-shadow: 0 0 0px rgba(0,212,122,0.0); }
  50% { box-shadow: 0 0 18px rgba(0,212,122,0.12); }
  100% { box-shadow: 0 0 0px rgba(0,212,122,0.0); }
}
.accent { animation: accent-glow 3.5s ease-in-out infinite; }

.search-hero { background: linear-gradient(135deg, rgba(3,20,28,0.7), rgba(6,18,28,0.55)); border: 1px solid rgba(0,212,122,0.06); }
.card-cyber { transition: transform .28s cubic-bezier(.2,.9,.3,1), box-shadow .28s; }
.card-cyber:hover { transform: translateY(-8px) scale(1.01); box-shadow: 0 18px 40px rgba(0,0,0,0.6); border-color: rgba(0,212,122,0.14); }

/* subtle floating for logo or hero elements */
@keyframes floaty { 0%{transform:translateY(0)}50%{transform:translateY(-6px)}100%{transform:translateY(0)} }
.brand-logo { animation: floaty 6s ease-in-out infinite; }

/* small badge styles */
.badge.spf { background: rgba(0,212,122,0.12); color: var(--cyber-accent); margin-left:6px; padding:2px 6px; border-radius:4px; font-size:.8rem; }

/* small pre for raw whois */
.small-pre { background: rgba(0,0,0,0.18); padding:8px; border-radius:6px; overflow:auto; }

/* responsive tweaks for results grid */
.results-grid { display:block; }
.details-full .row { gap: 1rem; }
