*{box-sizing:border-box}body{margin:0;background:#faf8f0;color:#354c40;font:17px/1.5 "Segoe UI",system-ui,sans-serif}main{max-width:1060px;margin:auto;padding:22px 24px 40px}header{display:flex;align-items:center;justify-content:space-between;gap:20px}h1{font-size:34px;margin:0}.eyebrow{font-size:12px;letter-spacing:.12em;margin:0;color:#557452}a{color:inherit}button,select{font:inherit;min-height:44px;border:1px solid #bcc9b1;border-radius:12px;background:#fffdf7;color:inherit;padding:8px 16px;cursor:pointer}button[aria-pressed=true]{background:#dbe7c9;border-color:#728d62}button:focus-visible,select:focus-visible,a:focus-visible{outline:3px solid #ad752c;outline-offset:3px}.toolbar{display:flex;gap:18px;align-items:end;flex-wrap:wrap;margin:18px 0}fieldset{border:0;padding:0;margin:0}legend,label{font-size:14px}legend{margin-bottom:5px}label{display:grid;gap:5px}.references{display:grid;grid-template-columns:repeat(5,1fr);gap:10px;position:sticky;top:0;z-index:2;background:#faf8f0;padding:10px 0}.reference{border:1px solid #d9dfcc;border-radius:16px;background:#fffdf7;text-align:center;position:relative;padding:4px}.reference svg{display:block;width:100%;height:106px}.reference.found{background:#e0edcf;border:2px solid #6d8b5d}.reference .check{position:absolute;right:8px;top:3px;font-size:22px;font-weight:bold}.status{display:flex;gap:20px;align-items:center;flex-wrap:wrap;margin:12px 0}.status span{font-size:15px}.scene-scroll{border:1px solid #cad5bd;border-radius:22px;overflow:hidden}#scene{display:block;width:100%;height:auto;touch-action:pinch-zoom;user-select:none;-webkit-user-select:none}#stroke{fill:none;stroke:#d52f35;stroke-width:5;stroke-linecap:round;stroke-linejoin:round;pointer-events:none}#marks path{fill:none;stroke:#d52f35;stroke-width:5;pointer-events:none;filter:drop-shadow(0 0 1px #fff);stroke-linecap:round;stroke-linejoin:round}.scene-object{cursor:crosshair;outline:none;-webkit-tap-highlight-color:transparent}.scene-object:focus{outline:none}.scene-object:focus-visible rect{stroke:#d52f35;stroke-width:3;stroke-dasharray:7 5}.help,details{font-size:14px;color:#63725c}.help{margin-top:12px}@media(max-width:600px){main{padding:16px 12px}h1{font-size:27px}header a{font-size:14px}.toolbar{gap:10px}.references{gap:5px}.reference{font-size:12px;border-radius:10px}.reference svg{height:65px}.reference .check{font-size:16px;right:3px}.status{gap:6px}.status span{width:100%}.scene-scroll{overflow:auto}#scene{min-width:0}.help{line-height:1.6}}
.home-link{display:inline-flex;align-items:center;min-height:44px;padding:8px 14px;border:1px solid #bcc9b1;border-radius:12px;text-decoration:none;white-space:nowrap;background:#fffdf7}.home-link:focus-visible{outline:3px solid #ad752c;outline-offset:3px}
.practice-position{text-align:center;color:#557452;font-weight:600}#hunt-result{text-align:center;padding:45px 12px}#hunt-result[hidden],#hunt-play[hidden]{display:none}#hunt-result h2{font-size:36px;margin:12px 0}.celebration-star{font-size:64px;color:#d7a943;animation:star-pop .6s ease-out}.group-segments{display:flex;justify-content:center;flex-wrap:wrap;gap:8px;margin:24px 0}.group-segments span{display:grid;place-items:center;width:36px;height:36px;border-radius:10px;background:#ececdf}.group-segments .done{background:#dbe7c9;color:#355a3f}.hunt-result-actions{display:flex;justify-content:center;gap:14px;margin:24px 0}#next-group{background:#557b60;color:white}#hunt-countdown{font-size:28px;font-weight:700}@keyframes star-pop{from{transform:scale(.7)}to{transform:scale(1)}}@media(prefers-reduced-motion:reduce){.celebration-star{animation:none}}
#all-games[hidden]{display:none}
#hunt-result-title:focus{outline:none}

#hunt-instructions:focus{outline:none}
