label{
display:flex;
font-weight:600;
margin-bottom:8px;
color:#3d3d3d;
}

input[type="text"],
input[type="email"],
input[type="tel"]{
display: flex;
width:100%;
padding:16px 18px;
margin-bottom: 8px;
border-radius:12px;
border:1px solid #d1d5db;
font-size:16px;
outline:none;
transition:all .2s ease;
background:#fff;
}

input::placeholder{
color:#9ca3af;
}

input:focus{
border-color:#4f46e5;
box-shadow:0 0 0 3px rgba(79,70,229,0.15);
}

input[readonly]{
background:#f3f4f6;
color:#4b5563;
cursor:not-allowed;
}

/* radios buttons */
.radio-option{
display:flex;
align-items:center;
padding:14px 16px;
border:1px solid #d1d5db;
border-radius:12px;
margin-bottom:12px;
cursor:pointer;
transition:all .2s ease;
background:#fff;
}

.radio-option:hover{
border-color:#6366f1;
}

.radio-option input{
margin-right:10px;
transform:scale(1.2);
cursor:pointer;
}

/* botões */
.btn-next{
width:100%;
padding:16px;
border:none;
border-radius:12px;
font-size:16px;
font-weight:600;
color:white;
cursor:pointer;
margin-top:10px;

background:linear-gradient(90deg,#2f6fed,#7c3aed);

display:flex;
align-items:center;
justify-content:center;
gap:8px;

transition:all .2s ease;
}

.btn-next:hover{
transform:translateY(-1px);
box-shadow:0 6px 14px rgba(0,0,0,0.15);
}

.btn-prev{
width:100%;
padding:16px;
border:none;
border-radius:12px;
font-size:16px;
font-weight:600;
color:white;
cursor:pointer;
margin-top:10px;

background:linear-gradient(90deg,#2f6fed,#7c3aed);

display:flex;
align-items:center;
justify-content:center;
gap:8px;

transition:all .2s ease;
}

.btn-prev:hover{
transform:translateY(-1px);
box-shadow:0 6px 14px rgba(0,0,0,0.15);
}


.btn-enviar{
width:100%;
padding:16px;
border:none;
border-radius:12px;
font-size:16px;
font-weight:600;
color:white;
cursor:pointer;
margin-top:10px;

background:linear-gradient(90deg,#047948,#057a53);

display:flex;
align-items:center;
justify-content:center;
gap:8px;

transition:all .2s ease;
}

.btn-enviar:hover {
    transform:translateY(-1px);
box-shadow:0 6px 14px rgba(0,0,0,0.15);
}

.erro {
    border: 2px solid #e11d48;
}

.mensagem-erro {
    color: #e11d48;
    font-size: 13px;
    margin-top: 4px;
}