*{
margin:0;
padding:0;
box-sizing:border-box;
font-family:Arial,sans-serif;
}

body{
background:#E8F5E9;
}

.screen{
min-height:100vh;
padding:30px 20px;
display:flex;
flex-direction:column;
align-items:center;
justify-content:center;
}

.hidden{
display:none;
}

.logo{
font-size:90px;
margin-bottom:20px;
}

h1{
color:#2E8B57;
margin-bottom:10px;
text-align:center;
}

.subtitle{
color:#666;
margin-bottom:30px;
text-align:center;
}

button{
width:100%;
max-width:320px;
padding:15px;
margin:10px 0;
border:none;
border-radius:15px;
background:#2E8B57;
color:white;
font-size:17px;
font-weight:bold;
cursor:pointer;
transition:.3s;
}

button:hover{
background:#256f47;
}

button:disabled{
background:#BDBDBD;
cursor:not-allowed;
}

input,
select{
width:100%;
max-width:320px;
padding:14px;
margin:10px 0;
border:2px solid #A5D6A7;
border-radius:12px;
font-size:16px;
outline:none;
}

input:focus,
select:focus{
border-color:#2E8B57;
}

.card{
width:100%;
max-width:340px;
background:white;
padding:18px;
margin:12px 0;
border-radius:16px;
box-shadow:0 4px 12px rgba(0,0,0,.12);
}

.card h3{
color:#2E8B57;
margin-bottom:10px;
}

.card p{
margin:6px 0;
color:#444;
}

hr{
margin:12px 0;
border:none;
border-top:1px solid #ddd;
}