@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Manrope:wght@400;500;600;700;800&display=swap');
:root{font-family:'DM Sans',sans-serif;color:#303d36;background:#ece9df;font-synthesis:none}*{box-sizing:border-box}body{margin:0;overflow:hidden}#world{position:fixed;inset:0}canvas{display:block;touch-action:none}button,a{-webkit-tap-highlight-color:transparent}button{font:inherit;cursor:pointer;color:inherit}button:focus-visible,a:focus-visible{outline:3px solid #b86545;outline-offset:5px}header{position:fixed;top:0;left:0;right:0;display:flex;align-items:center;justify-content:space-between;margin:28px 38px;z-index:2}.home{color:inherit;text-decoration:none;font-size:22px;display:flex;align-items:center;gap:12px}.home span,.edition{font-size:11px;letter-spacing:2px;font-weight:600}.edition b{font-weight:400;margin-left:12px;color:#85897e}header button{border:1px solid #a7ada066;background:#f7f5eeaa;border-radius:30px;padding:10px 15px;font-size:12px}header button span{border:1px solid #909b8f;border-radius:50%;padding:0 4px;margin-left:12px}.intro{position:fixed;top:16%;left:4.8%;pointer-events:none}.eyebrow{font-size:10px;font-weight:700;letter-spacing:2px}.intro h1{font-family:Manrope,sans-serif;font-size:clamp(38px,5vw,76px);line-height:1.06;letter-spacing:-4px;font-weight:500;margin:22px 0}.intro>p:not(.eyebrow){font-size:14px;line-height:1.8;color:#6f776d}.live{display:flex;gap:8px;align-items:center;font-size:10px;letter-spacing:.3px;margin-top:25px}.live i{width:6px;height:6px;background:#748b69;border-radius:50%}.field-notes{position:fixed;right:3.5%;top:19%;width:210px;background:#f6f4ecbf;backdrop-filter:blur(12px);border:1px solid #fff8;padding:22px;border-radius:3px}.field-notes .eyebrow{font-size:9px}.field-notes ol{list-style:none;padding:0;margin:20px 0}.field-notes li{display:flex;gap:12px;font-size:12px;padding:13px 0;border-bottom:1px solid #576c4c22;align-items:center}.field-notes li>span{font-size:9px;color:#89917f}.field-notes b{margin-left:auto;color:#9ca391}.field-notes .found b{color:#ac5739}.field-notes p{font-size:10px;color:#6f776d;line-height:1.7;margin-bottom:0}footer{position:fixed;bottom:28px;left:38px;right:38px;display:flex;justify-content:space-between;align-items:center;font-size:9px;letter-spacing:1.5px;pointer-events:none}.keycap{border:1px solid #8d978680;border-radius:5px;padding:7px 10px;margin-right:10px;background:#f7f5ee90}.divider{margin:0 14px;color:#92988c}footer b{font-size:20px;margin-left:14px;font-weight:400}#guide{position:fixed;top:83px;right:38px;background:#fcfaf3f5;z-index:5;box-shadow:0 15px 60px #24332620;padding:24px;border-radius:12px;font-size:13px;line-height:1.8;max-width:320px}#guide h2{font-size:18px;font-weight:500}kbd{display:inline-block;border:1px solid #c4c9bd;border-radius:4px;padding:0 5px;margin-right:3px}#reset,#retry{border:0;border-radius:5px;background:#3c5140;color:white;padding:12px 18px}#loading{position:fixed;inset:0;z-index:10;background:#eeece4;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:18px;transition:opacity .5s}#loading.done{opacity:0;pointer-events:none;visibility:hidden}.loading-mark{font:500 100px Manrope,sans-serif;letter-spacing:-10px;color:#617759}#loading p{font-size:13px}progress{width:160px;height:3px;accent-color:#617759}#joystick{display:none;position:fixed;bottom:78px;left:26px;width:110px;height:110px;border:1px solid #fff9;border-radius:50%;background:#eff1e84d;touch-action:none}#stick{position:absolute;left:34px;top:34px;width:42px;height:42px;border-radius:50%;background:#fff9;border:1px solid #7c8f7180;pointer-events:none}
@media(pointer:coarse){#joystick{display:block}footer>span:first-child{display:none}}
@media(max-width:700px){#joystick{display:block}header{margin:20px}.edition{display:none}.intro{top:100px;left:24px}.intro h1{font-size:39px;letter-spacing:-2px;margin:14px 0}.intro>p:not(.eyebrow){display:none}.intro .eyebrow{font-size:8px}.live{margin-top:15px}.field-notes{top:auto;bottom:70px;right:18px;width:165px;padding:14px}.field-notes ol{margin:10px 0}.field-notes li{font-size:10px;padding:9px 0}.field-notes .eyebrow{font-size:8px;letter-spacing:1px}.field-notes p{font-size:9px}footer{left:20px;right:20px;bottom:22px;font-size:8px}footer>span:first-child{display:none}#guide{right:20px;top:70px}.intro{pointer-events:none}}
@media(prefers-reduced-motion:reduce){#loading{transition:none}}

#boost{position:fixed;left:38px;bottom:70px;border:1px solid #8d978680;border-radius:24px;background:#f7f5eed9;padding:12px 20px;font-size:12px;min-height:44px;touch-action:manipulation}#boost[aria-pressed="true"]{background:#3c5140;color:#fff;border-color:#3c5140}
@media(pointer:coarse){#boost{left:26px;bottom:205px}}
@media(max-width:700px){#boost{left:26px;bottom:205px}}
/* A quiet sage dot keeps the pointer visible without distracting from the scene. */
#world canvas{cursor:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' viewBox='0 0 24 24'%3E%3Ccircle cx='12' cy='12' r='3.5' fill='%23536454' fill-opacity='.45' stroke='%23f7f5ee' stroke-opacity='.7' stroke-width='1'/%3E%3C/svg%3E") 12 12,crosshair}

#sound{position:fixed;left:155px;bottom:70px;border:1px solid #8d978680;border-radius:24px;background:#f7f5eed9;padding:12px 18px;font-size:12px;min-height:44px}#sound[aria-pressed="true"]{background:#3c5140;color:white}
@media(pointer:coarse),(max-width:700px){#sound{left:26px;bottom:260px}}
@media(max-height:600px){.field-notes{top:80px;bottom:65px;overflow:auto}.intro{top:85px}.intro h1{font-size:34px}.intro>p:not(.eyebrow){display:none}}

#jump{position:fixed;left:275px;bottom:70px;border:1px solid #8d978680;border-radius:24px;background:#f7f5eed9;padding:12px 20px;font-size:12px;min-height:44px;touch-action:manipulation}#jump:disabled{opacity:.45;cursor:default}
@media(pointer:coarse),(max-width:700px){#jump{left:26px;bottom:315px}}

.levels{position:fixed;top:82px;left:4.8%;display:flex;gap:5px;z-index:3;padding:4px;border:1px solid #8d978650;border-radius:24px;background:#f7f5eed9}.levels a{padding:8px 13px;border-radius:20px;color:inherit;text-decoration:none;font-size:11px}.levels a[aria-current]{background:#3c5140;color:#fff}
body.night{color:#e2e9ff;background:#080d23}.night .intro>p:not(.eyebrow),.night .field-notes p,.night .field-notes li>span,.night .edition b{color:#aabbdc}.night .field-notes,.night #guide,.night header button,.night .levels,.night #sound,.night #jump,.night #boost{background:#101a32e8;border-color:#57709766}.night .levels a[aria-current],.night #boost[aria-pressed=true],.night #sound[aria-pressed=true]{background:#86e6f0;color:#101a32}.night .field-notes li{border-color:#57709755}.night .field-notes .found b,.night .live i{color:#70f1e0}.night .live i{background:#70f1e0}.night .keycap{background:#101a32}.night #loading{background:#080d23}.night .loading-mark{color:#86e6f0}.night .intro h1{text-shadow:0 2px 25px #080d23}.night button:focus-visible,.night a:focus-visible{outline-color:#86e6f0}
@media(max-width:700px){.levels{left:20px;top:70px}.intro{top:120px}.intro h1{font-size:34px}.night .field-notes{width:170px}.night .intro .live{max-width:170px}}
@media(max-height:600px){.levels{top:70px}.intro{top:108px}.intro h1{font-size:30px}}
