.modal-diagnostico{
position:fixed;
inset:0;
background:rgba(2,10,24,.85);
backdrop-filter:blur(8px);
display:flex;
align-items:center;
justify-content:center;
z-index:9999;
padding:20px
}

.modal-diagnostico.oculto{
display:none
}

.modal-diagnostico-contenido{
width:100%;
max-width:760px;
background:linear-gradient(180deg,#071226,#040c1c);
border:1px solid rgba(0,195,255,.35);
border-radius:18px;
overflow:hidden;
box-shadow:0 0 35px rgba(0,140,255,.2),0 0 80px rgba(0,220,255,.1)
}

.modal-diagnostico-header{
display:flex;
align-items:center;
justify-content:space-between;
padding:18px 22px;
border-bottom:1px solid rgba(0,195,255,.2)
}

.modal-diagnostico-header h2{
margin:0;
font-size:1.7rem;
color:#f4f8ff
}

.cerrar-modal{
background:none;
border:none;
color:#00d9ff;
font-size:2rem;
cursor:pointer
}

.modal-diagnostico-body{
padding:22px
}

.texto-diagnostico{
margin-bottom:18px;
color:#d8eaff;
font-size:15px
}

.fila-diagnostico{
display:flex;
gap:12px;
margin-bottom:18px
}

.input-diagnostico{
flex:1;
padding:12px 14px;
border-radius:8px;
border:1px solid rgba(0,195,255,.3);
background:#081428;
color:#fff;
font-size:15px
}

.input-diagnostico:focus{
outline:none;
border-color:#00d9ff
}

.btn-analizar{
padding:12px 20px;
border-radius:8px;
border:none;
background:linear-gradient(90deg,#00e5ff,#127dff);
color:#001018;
font-weight:600;
cursor:pointer
}

.resultado-diagnostico{
margin-top:10px;
padding:16px;
border-radius:10px;
background:#061327;
border:1px solid rgba(0,195,255,.2);
font-size:14px;
line-height:1.5;
color:#d8eaff
}

.resultado-ok{
color:#00ffa6
}

.resultado-error{
color:#ff6464
}
.resultado-diagnostico a{
  color:#00d9ff;
  text-decoration:none;
  word-break:break-word;
}

.resultado-diagnostico a:hover{
  text-decoration:underline;
}