*{box-sizing:border-box}body{margin:0;font-family:Arial,sans-serif;color:#173d64;background:#e8f6ff;font-size:16px;line-height:1.5}header{background:#0756a3;color:white;display:flex;gap:20px;justify-content:space-between;padding:16px 5%;font-weight:700}header a{color:white}main{max-width:1150px;margin:auto;padding:24px}.heading{margin-bottom:20px}.tag{color:#096239;font-weight:800}h1{font-size:clamp(28px,4vw,42px);margin:4px 0;color:#0756a3}.heading p{margin:0}.layout{display:grid;grid-template-columns:minmax(0,1fr) 310px;gap:24px}.game,aside{border:2px solid #c4e3f8;border-radius:24px;background:white;padding:24px;box-shadow:0 7px 0 #c7e3f3}.stats{display:flex;justify-content:space-between;flex-wrap:wrap;gap:8px;font-weight:bold}progress{width:100%;height:14px;accent-color:#26a269;margin-top:12px}#picture{text-align:center;margin:16px 0}#image{display:block;width:min(100%,300px);height:280px;object-fit:contain;margin:auto;border-radius:18px}#hint{color:#665316;background:#fff3bd;border-radius:20px;display:inline-block;padding:5px 18px;font-weight:bold}.fields{display:grid;grid-template-columns:1.5fr 1fr;gap:14px}label{display:block;font-weight:bold}input{display:block;width:100%;min-width:0;border:2px solid #9dc8e8;border-radius:12px;padding:12px;font:inherit;color:#173d64;margin-top:6px}input:focus{outline:3px solid #ffca43;outline-offset:2px}button{font:inherit;font-weight:bold;cursor:pointer;border:0;border-radius:12px;padding:13px 20px;min-height:48px}button:disabled{opacity:.55;cursor:wait}.primary{background:#ffc52f;color:#263e50;box-shadow:0 4px 0 #d89500}.quiet{background:#eaf4fc;color:#0756a3}.answer-row{display:flex;align-items:center;gap:12px}.answer-row input{font-size:24px;letter-spacing:2px}.note{color:#536979;font-size:14px}#feedback{font-size:20px;font-weight:bold;margin:16px 0;min-height:30px}#feedback.good{color:#097443}#feedback.bad{color:#b02a32}#next{width:100%}.rank-heading{display:flex;justify-content:space-between;align-items:center}h2{margin:6px 0;color:#0756a3}#ranks{padding-left:25px}#ranks li{padding:12px 0;border-bottom:1px solid #dcebf5}#ranks small{display:block;color:#536979;font-size:14px}.medal{font-size:64px}#result{text-align:center}#review{text-align:left}details{margin:16px 0}footer{margin-top:28px;text-align:center;color:#536979;font-size:14px}[hidden]{display:none!important}@media(max-width:760px){main{padding:16px}.layout{grid-template-columns:1fr}.game,aside{padding:18px}header{font-size:14px;padding:14px 16px}#image{height:230px}.answer-row{flex-wrap:wrap}.answer-row button{width:100%}.fields{grid-template-columns:1fr}h1{line-height:1.2}}@media(prefers-reduced-motion:no-preference){.good{animation:pop .25s ease}@keyframes pop{50%{transform:scale(1.03)}}}
