:root{--ink:#183b41;--muted:#56706f;--paper:#faf6ec;--gold:#a87835;--line:#d9d7c8;--pale:#e8eee7}*{box-sizing:border-box}body{margin:0;background:var(--paper);color:var(--ink);font:16px/1.6 system-ui,-apple-system,Segoe UI,sans-serif}button,input,select{font:inherit}button,a,summary{touch-action:manipulation}button{cursor:pointer;border:1px solid var(--line);border-radius:8px;padding:9px 14px;color:var(--ink);background:#fffdf7;min-height:44px}button:hover:not(:disabled){background:var(--pale)}button:disabled{opacity:.5;cursor:default}a{color:inherit}button:focus-visible,a:focus-visible,summary:focus-visible,select:focus-visible,input:focus-visible,.scene:focus-visible{outline:3px solid #c88625;outline-offset:4px}.topbar{max-width:1380px;margin:auto;padding:22px 32px;display:flex;align-items:center;justify-content:space-between;gap:20px;border-bottom:1px solid var(--line)}.brand{text-decoration:none;display:flex;gap:14px;align-items:center;font:bold 30px Georgia,serif}.brand span{font:bold 14px system-ui;letter-spacing:3px}.back{font-size:14px;text-decoration:none}main{max-width:1280px;margin:auto;padding:48px 28px}.eyebrow{font-size:11px;letter-spacing:2px;font-weight:750;color:var(--gold);margin:0 0 14px}h1,h2,h3{font-family:Georgia,serif;font-weight:400;line-height:1.16;margin:0 0 15px}h1{font-size:clamp(38px,6vw,68px);letter-spacing:-2px}h2{font-size:clamp(28px,4vw,40px)}h3{font-size:25px}p{margin:0 0 16px}.intro>p:not(.eyebrow){font-size:19px;max-width:700px;color:var(--muted)}.intro-foot{display:flex;align-items:center;gap:24px;margin:24px 0 28px;font-size:14px}.pill{padding:6px 13px;border:1px solid var(--line);border-radius:40px}.instructions{padding:17px 22px;border:1px solid var(--line);border-radius:12px;margin-bottom:26px;background:#fffaf1}.instructions summary,.brief summary{cursor:pointer;font-weight:650}.instructions p{max-width:960px;margin:14px 0}.case-tabs{display:flex;gap:9px;overflow:auto;padding:5px 3px 20px}.case-tabs button{white-space:nowrap;flex:0 0 auto;font-size:13px}.case-tabs button[aria-current=true]{background:var(--ink);color:#fff;border-color:var(--ink)}.case-heading{display:flex;justify-content:space-between;align-items:center;gap:15px;margin:24px 0 0}.case-heading p:not(.eyebrow){color:var(--muted)}.case-count{font-size:14px;white-space:nowrap}.brief{margin:8px 0 24px;font-size:14px}.brief p{max-width:960px;margin-top:12px}.play-layout{display:grid;grid-template-columns:minmax(0,1fr) 310px;align-items:start;gap:25px}.scene-tools{display:flex;justify-content:space-between;gap:12px;margin-bottom:12px}.scene-tools button{padding:5px 12px;font-size:14px}.zoom-controls{display:flex;gap:6px;align-items:center}.zoom-controls output{font-size:13px;min-width:45px;text-align:center}.scene-scroll{max-height:84vh;overflow:auto;border:1px solid #bdc6be;border-radius:12px;background:#eee5d2;overscroll-behavior:contain}.scene{position:relative;line-height:0;width:100%;cursor:crosshair}.scene img{display:block;width:100%;height:auto;user-select:none}.marker{position:absolute;width:30px;height:30px;border:2px solid white;border-radius:50%;background:#234e43e8;color:white;display:grid;place-items:center;font:bold 17px system-ui;transform:translate(-50%,-50%);box-shadow:0 0 0 2px #1c493d;pointer-events:none}.search-cursor,.hint-ring{position:absolute;transform:translate(-50%,-50%);pointer-events:none}.search-cursor{width:34px;height:34px;border:2px solid white;border-radius:50%;box-shadow:0 0 0 2px #153f45}.search-cursor:after{content:'+';color:white;font:bold 25px system-ui;position:absolute;inset:0;display:grid;place-items:center;text-shadow:0 1px 3px black}.hint-ring{width:12%;aspect-ratio:1;border:4px dashed #fff3a0;border-radius:50%;box-shadow:0 0 0 2px #784c13;background:#ffdf8020}.feedback{min-height:32px;padding:12px 2px;font-size:14px;font-weight:600}.finder-panel{padding:22px;border-radius:14px;background:#fffdf7;border:1px solid var(--line);position:sticky;top:18px}.panel-heading{display:flex;justify-content:space-between;gap:10px;align-items:center}.panel-heading h3{font-size:23px;margin-bottom:5px}.small{font-size:13px;color:var(--muted)}.targets{list-style:none;padding:0;margin:15px 0}.targets li{display:flex;gap:12px;align-items:center;padding:10px 0;border-bottom:1px solid #e7e5d9}.target-thumb{width:48px;height:48px;flex:none;position:relative;overflow:hidden;border:1px solid var(--line);border-radius:8px;background:#ede2cc}.target-thumb img{position:absolute;width:480px;max-width:none;height:auto}.target-name{font-size:14px;line-height:1.35}.target-name span{display:block;color:var(--muted);font-size:12px;margin-top:3px}.targets .found .target-name{color:#316751}.targets .found .target-name:before{content:'✓ ';font-weight:bold}.hint-box{margin-top:20px}.hint-box label{display:block;font-size:14px;font-weight:650}.hint-box select{width:100%;padding:9px;margin:9px 0;border:1px solid var(--line);border-radius:8px;background:var(--paper);color:var(--ink)}.hint-actions{display:flex;gap:7px}.hint-actions button{font-size:12px;padding:8px 9px;flex:1}.hint-box p{font-size:13px;margin:12px 0 0}.deduction{padding:28px;margin:18px 0 35px;border-radius:14px;background:var(--pale)}.deduction>p:not(.eyebrow){max-width:800px}.choices{display:flex;flex-wrap:wrap;gap:12px;margin:20px 0}.choices button.correct{background:var(--ink);color:white}.primary{display:inline-flex;justify-content:center;align-items:center;padding:12px 20px;border:1px solid var(--ink);background:var(--ink);color:#fffdf5;border-radius:8px;text-decoration:none;font-size:14px}.primary:hover:not(:disabled){background:#2c5358}.final{border-top:1px solid var(--line);padding:45px 0}.letters{display:flex;gap:10px;margin:26px 0;flex-wrap:wrap}.letter{width:52px;height:62px;border:1px solid #b9a27d;border-radius:6px;display:grid;place-items:center;font:27px Georgia;background:#fffdf7}.letter small{font:10px system-ui;color:var(--muted)}#final-puzzle label{display:block;margin-bottom:10px}#destination-form{display:flex;gap:10px;max-width:600px}input{min-width:0;flex:1;padding:12px;border:1px solid #b5b9ac;border-radius:8px;background:#fff}#ending{max-width:780px;background:var(--pale);border-radius:15px;padding:30px;margin-top:30px}#ending strong{display:block;margin:22px 0}#certificate{display:block}.more{display:flex;justify-content:space-between;align-items:center;gap:24px;padding:30px 0;border-top:1px solid var(--line)}.more h2{font-size:30px}.reset{display:flex;gap:20px;align-items:center;padding-top:15px;font-size:12px;color:var(--muted)}.reset button{font-size:12px;background:none}footer{display:flex;justify-content:space-between;gap:20px;padding:24px 32px;border-top:1px solid var(--line);font-size:12px;color:var(--muted)}dialog{border:1px solid var(--line);border-radius:16px;background:var(--paper);color:var(--ink);padding:30px;max-width:460px}dialog::backdrop{background:#142b31aa}dialog div{display:flex;gap:10px}.text-mode{padding:25px;border:1px solid var(--line);border-radius:12px;background:#fffdf7}.text-mode article{padding:15px 0;border-bottom:1px solid var(--line)}.text-mode p{font-size:14px}.text-mode h4{margin:0 0 8px}.print-certificate{display:none}[hidden]{display:none!important}@media(max-width:850px){main{padding:28px 18px}.topbar{padding:18px}.brand span{font-size:11px;letter-spacing:1.5px}.back{font-size:12px}.play-layout{grid-template-columns:1fr}.finder-panel{position:static}.targets{display:grid;grid-template-columns:1fr 1fr;gap:0 18px}.scene-scroll{max-height:78vh}.case-count{display:none}.intro-foot{flex-wrap:wrap;gap:10px}.more,.reset,footer{align-items:start;flex-direction:column}.letter{width:38px;height:50px}.letters{gap:6px}.scene-tools{flex-wrap:wrap}.choices{flex-direction:column}.deduction{padding:22px}#destination-form{flex-direction:column}.target-thumb{width:44px;height:44px}.target-thumb img{width:440px}}@media print{body>*{display:none!important}.print-certificate{display:block!important;padding:80px 40px;text-align:center;color:#183b41}.print-certificate h1{font:58px Georgia;margin:50px 0}.print-certificate>p{font-size:20px}.name-line{margin:70px 0;font-size:20px}@page{size:letter;margin:1in}}
