
body{
margin:0;
font-family:Arial;
background:linear-gradient(135deg,#eef2ff,#f8fbff,#eefbf1);
color:#1d2a44;
}

.container{
width:min(980px,94%);
margin:auto;
padding:35px 0;
}

.topbar{
display:flex;
justify-content:space-between;
gap:20px;
background:white;
padding:26px;
border-radius:24px;
margin-bottom:24px;
box-shadow:0 18px 45px rgba(31,64,130,.10);
}

.progress{
background:#2451d1;
color:white;
padding:18px;
border-radius:18px;
font-weight:bold;
font-size:22px;
text-align:center;
}

.equation-box{
background:#2451d1;
color:white;
font-size:34px;
font-weight:bold;
text-align:center;
padding:28px;
border-radius:24px;
margin-bottom:24px;
}

.step-box,.finish-card{
background:white;
border-radius:22px;
padding:24px 28px;
margin-bottom:20px;
box-shadow:0 14px 35px rgba(31,64,130,.10);
}

.locked{
opacity:.45;
}

.answer-row{
display:flex;
gap:12px;
}

input{
flex:1;
padding:14px;
font-size:20px;
border-radius:14px;
border:2px solid #b8c8ea;
}

button{
padding:14px 20px;
font-size:18px;
border:none;
border-radius:14px;
background:#2451d1;
color:white;
font-weight:bold;
cursor:pointer;
}

button:disabled{
background:#9caad0;
}

.secondary{
background:#eef3fb;
color:#2451d1;
}

.good{
color:#17803b;
font-weight:bold;
}

.bad{
color:#d13232;
font-weight:bold;
}

.mini-vzor{
background:#111827;
color:white;
padding:12px;
border-radius:10px;
margin-bottom:10px;
font-family:monospace;
text-align:center;
}

.step-hint{
background:#f3f4f6;
border-left:4px solid #3b82f6;
padding:10px 14px;
border-radius:10px;
margin-bottom:12px;
}

.footer-buttons{
display:flex;
justify-content:center;
gap:14px;
margin-top:26px;
}

.finish-card{
text-align:center;
}
