/* Core custom styles extracted from inline <style> in index.html & retos.html */
body {
  font-family: 'Inter', sans-serif;
  background-color: #080A1A;
  background-attachment: fixed;
}
#hero-canvas { position:absolute; top:0; left:0; width:100%; height:100%; z-index:0; }
.hero-bg { position:relative; }
.card-hover { transition: all 0.3s cubic-bezier(0.4,0,0.2,1); }
.card-hover:hover { transform: translateY(-8px); box-shadow:0 25px 50px -12px rgba(0,0,0,0.25); }
.btn-nasa { background-color:#DFFF00; color:#0B3D91; transition:all .3s ease; }
.btn-nasa:hover { transform:translateY(-2px); box-shadow:0 10px 25px rgba(223,255,0,0.4); filter:brightness(1.1); }
.btn-secondary { background:transparent; border:2px solid #DFFF00; color:#DFFF00; transition:all .3s ease; }
.btn-secondary:hover { background:#DFFF00; color:#0B3D91; transform:translateY(-2px); box-shadow:0 10px 25px rgba(223,255,0,0.4); }
.section-bg { background:#f8f9fa; }
.timeline-dot { background:#DFFF00; box-shadow:0 0 20px rgba(223,255,0,0.5); }
.filter-btn.active { background:#0B3D91; color:#fff; }
.team-badge { background:#0052CC; }
.nav-glass { background:rgba(11,61,145,0.9); backdrop-filter:blur(10px); border-bottom:1px solid rgba(255,255,255,0.1); }
.hero-title { background:linear-gradient(45deg,#ffffff,#f8f9ff,#e3f2fd); -webkit-background-clip:text; -webkit-text-fill-color:transparent; background-clip:text; }
.glow-text { text-shadow:0 0 30px rgba(255,255,255,0.5); }
/* retos.html specific */
.challenge-card { border:1px solid rgba(255,255,255,0.1); transition:all .3s cubic-bezier(.4,0,.2,1); background:rgba(11,61,145,0.2); }
.challenge-card:hover { transform:translateY(-8px); box-shadow:0 25px 50px -12px rgba(223,255,0,0.1); border-color:rgba(223,255,0,0.5); }
.difficulty-tag { background-color:rgba(255,255,255,0.1); color:#a7b3c2; }
.difficulty-tag.active { background:#DFFF00; color:#0B3D91; font-weight:bold; }
.topic-tag { background:#0052CC; color:#e0e0e0; }
