body{
margin:0;
font-family:"Segoe UI", Arial, sans-serif;

min-height:100vh;

display:flex;
justify-content:center;

color:white;

background:
linear-gradient(120deg,#0f172a,#1e3a8a,#4f46e5);

background-size:400% 400%;
animation:fondo 15s ease infinite;

overflow-y:auto;
padding:40px 0;
}

.header-box{
text-align:center;
margin-bottom:25px;
padding:18px;

border-radius:14px;

/* 🔥 fondo con color real */
background:linear-gradient(135deg,
rgba(34,197,94,0.25),
rgba(56,189,248,0.25),
rgba(167,139,250,0.25)
);

border:1px solid rgba(255,255,255,0.08);

/* glow suave */
box-shadow:
0 10px 30px rgba(0,0,0,0.4),
0 0 25px rgba(99,102,241,0.3);

backdrop-filter:blur(10px);
}

.header-box img{
max-width:420px;
filter:
drop-shadow(0 0 10px rgba(56,189,248,0.6))
drop-shadow(0 0 20px rgba(34,197,94,0.4));
}

/* animación fondo */

@keyframes fondo{
0%{background-position:0% 50%}
50%{background-position:100% 50%}
100%{background-position:0% 50%}
}

/* red neuronal decorativa */

body::before{
content:"";
position:fixed;
top:0;
left:0;
width:100%;
height:100%;

background-image:url("/imgs/fondo-mosaico.png");

background-repeat:repeat;
background-size:420px;

opacity:0.10;

z-index:-1;
}

/* contenedor */

.container{
width:620px;

background:rgba(15,23,42,0.75);
backdrop-filter:blur(12px);

padding:45px;

border-radius:16px;

box-shadow:
0 20px 50px rgba(0,0,0,0.6),
0 0 40px rgba(79,70,229,0.4);
}

/* título */

h1{
text-align:center;
margin-bottom:6px;
font-size:52px;
letter-spacing:3px;

background:linear-gradient(90deg,#22c55e,#38bdf8,#a78bfa);
background-clip:text;
-webkit-background-clip:text;
color:transparent;

text-shadow:0 0 20px rgba(56,189,248,0.6);
}

.subtitle{
text-align:center;
color:#cbd5f5;
margin-bottom:35px;
font-size:18px;
}

/* labels */

label{
display:block;
margin-top:18px;
font-weight:600;
letter-spacing:0.5px;
}

/* inputs */

input[type="text"], select{
width:100%;
padding:12px;
margin-top:6px;
border-radius:8px;
border:none;
font-size:15px;
background:#0f172a;
color:white;
outline:none;
}

/* radios */

/* .radio-group label{
font-weight:normal;
margin-right:18px;
} */

.radio-group{
margin-top:14px;
}

.radio-option{
display:flex;
align-items:center;
justify-content:flex-start;
gap:12px;
margin-bottom:14px;
cursor:pointer;
font-size:20px;
max-width:220px;   /* limita el ancho del bloque */
}

.radio-option input[type="radio"]{
width:auto;
margin:0;
transform:scale(1.6);
cursor:pointer;
}

.radio-option span{
flex:none;
}

/* botones */

button{
width:100%;
padding:15px;
margin-top:30px;

font-size:18px;

background:linear-gradient(90deg,#22c55e,#16a34a);

border:none;
border-radius:10px;

cursor:pointer;
color:white;

font-weight:bold;
letter-spacing:1px;

transition:transform 0.2s, box-shadow 0.2s;
}

button:hover{
transform:translateY(-2px);
box-shadow:0 8px 20px rgba(34,197,94,0.5);
}

.secondary{

margin-top:14px;

background:linear-gradient(90deg,#6366f1,#8b5cf6);

}

.secondary:hover{

box-shadow:0 8px 20px rgba(139,92,246,0.5);

}

/* footer */

.footer{

max-width:560px;
margin:90px auto 40px;

padding:18px 22px;

border-radius:14px;

background:rgba(30,41,59,0.6);
backdrop-filter:blur(10px);

border:1px solid rgba(255,255,255,0.08);

box-shadow:
0 10px 30px rgba(0,0,0,0.4);

text-align:center;

font-size:14px;
line-height:1.5;

color:#cbd5f5;

opacity:0.95;
}

.footer .destacado{
display:block;

font-size:15px;
font-weight:600;

color:#93c5fd;;

margin-bottom:8px;
letter-spacing:.5px;
}

.footer .creditoJuego{
display:block;

font-size:16px;
color:#94a3b8;

margin-top:6px;
}

.footer .creditoIdea{
display:block;

font-size:13px;
color:#94a3b8;

margin-top:6px;
}