:root{font-family:Georgia,serif;color:#263d3a;background:#eee9dc;font-synthesis:none}*{box-sizing:border-box}body{margin:0}main{max-width:940px;margin:auto;padding:30px 24px}header{border-bottom:1px solid #b5baaa;padding-bottom:20px}.eyebrow{font:700 11px system-ui;letter-spacing:2px;color:#526e62}h1{font-size:clamp(36px,6vw,60px);letter-spacing:-2px;margin:12px 0}header p{font-size:19px;margin:0}.instructions{margin:20px 0;max-width:760px;line-height:1.5}.instructions p{margin:5px 0}.small,footer{font:13px/1.6 system-ui;color:#53645a}.toolbar{display:flex;gap:8px;align-items:center;flex-wrap:wrap;margin:18px 0}button,select{font:600 14px system-ui;min-height:44px;border:1px solid #9bada0;border-radius:8px;padding:10px 14px;background:#fffdf5;color:#244b40;cursor:pointer}button:hover{background:#dce8da}button:focus-visible,select:focus-visible{outline:3px solid #bd6a17;outline-offset:3px}#next{background:#285b49;color:white}.stats{display:flex;background:#244b40;color:#fff8e7;border-radius:12px 12px 0 0;justify-content:space-around;padding:16px 10px;gap:8px}.stats span{display:block;font:10px system-ui;letter-spacing:1px}.stats strong{display:block;margin-top:5px;font:700 20px system-ui}#board{position:relative;aspect-ratio:600/370;border:1px solid #c1ae80;border-top:0;overflow:hidden;border-radius:0 0 12px 12px;background:#eacb86}#board svg{display:block;width:100%;height:100%}.point{position:absolute;transform:translate(-50%,-50%);padding:0;border-radius:50%;min-width:36px;min-height:36px;width:36px;height:36px;background:#fffdf2;border:2px solid #2f696b;color:#234e50;font:700 13px system-ui;box-shadow:0 2px 5px #0003}.point.kept{background:#f8c26b;border-color:#9a5111;color:#492a0d}.point.fixed{background:#234e50;color:white;cursor:default}.point.bad{border-color:#a53428;box-shadow:0 0 0 3px #a5342844}#feedback{min-height:50px;font:600 16px/1.5 system-ui;margin:16px 0;color:#315c4b}details{padding:16px 0;border-top:1px solid #b5baaa;line-height:1.5}summary{cursor:pointer;font-weight:bold}footer{margin-top:24px;border-top:1px solid #b5baaa;padding-top:15px}footer span{display:block}a{color:#285b49}@media(max-width:520px){main{padding:20px 12px}.eyebrow{font-size:9px}.instructions{font-size:15px}.stats strong{font-size:16px}.stats span{font-size:9px}.point{min-width:32px;min-height:32px;width:32px;height:32px;font-size:12px}#board{aspect-ratio:600/490}.toolbar label{width:100%}.toolbar select{width:70%}header p{font-size:17px}}
