/* All styles and dependencies are local; no remote fonts. */
@media(pointer:coarse){body #bottom{bottom:158px;width:60vw}body #mapbox{bottom:240px}body #status{background:#142e3bea;border-radius:8px;padding:7px;color:#fff4d2}}
:root{font-family:Inter,ui-sans-serif,system-ui,sans-serif;color:#f5f7eb;background:#91c7d4;font-synthesis:none}*{box-sizing:border-box}body{margin:0;overflow:hidden}#world{display:block;width:100vw;height:100dvh}button{font:inherit;color:inherit;border:1px solid #ffffff28;background:#172f3dee;border-radius:12px;padding:10px 14px;cursor:pointer;touch-action:none}button:hover{background:#265064}button:focus-visible{outline:3px solid #f8c75b;outline-offset:3px}header{position:absolute;top:22px;left:28px;right:28px;display:flex;justify-content:space-between;align-items:center;gap:10px}.brand{color:#122d3a;text-shadow:0 1px #ffffff50}.brand b{font-size:26px;font-weight:950;letter-spacing:-1px}.brand span{color:#078fa5}.brand small{display:block;font-size:10px;font-weight:800;letter-spacing:2px;margin-top:4px}.tools{display:flex;gap:7px}.tools button{font-size:12px}#route{position:absolute;top:105px;left:28px;width:260px;padding:17px;background:#142e3beF;border:1px solid #ffffff30;border-radius:20px;box-shadow:0 12px 35px #102d3b20}.eyebrow{font-size:11px;font-weight:850;letter-spacing:2px;color:#7dd9e2}.eyebrow span{float:right;color:#f5cb6b}#route button{display:flex;align-items:center;gap:11px;width:100%;margin-top:10px;text-align:left;background:#ffffff08;padding:12px 8px;border-color:#ffffff12}#route button.active{border-color:#58d3df;background:#2d74843f}#route i{font-style:normal;font-size:13px;color:#ffd47b}#route span{flex:1;font-size:13px;font-weight:750}#route small{font-size:10px;font-weight:400;color:#bdd1d5}#objective{font-size:12px;line-height:1.6;color:#f6d78a;margin-bottom:0}#mapbox{position:absolute;right:28px;bottom:32px;background:#142e3bea;border-radius:18px;padding:9px;display:grid;text-align:center}#mapbox small{font-size:9px;letter-spacing:1px;color:#c1d5d8}#map{width:156px;height:156px;border-radius:12px}#bottom{position:absolute;bottom:28px;left:50%;transform:translateX(-50%);text-align:center;width:min(520px,65vw)}#status{font-size:11px;font-weight:850;letter-spacing:2px;color:#142e3b;margin-bottom:8px}#interact{font-weight:800;background:#fbd273;color:#193341;min-width:230px;box-shadow:0 8px 24px #12293730}#help{margin-top:10px;color:#132e3a;font-size:11px;line-height:1.7;text-shadow:0 1px #ffffff90}#toast{position:absolute;top:88px;left:50%;transform:translateX(-50%);padding:12px 20px;max-width:480px;background:#173343ef;border-radius:14px;font-size:13px;opacity:0;transition:opacity .2s;pointer-events:none;text-align:center}#toast.show{opacity:1}#overlay,#dialog{position:absolute;inset:0;display:grid;place-items:center;background:#102b3959;backdrop-filter:blur(3px);z-index:10}#dialog[hidden],#overlay[hidden]{display:none}.card{margin:20px;padding:34px;max-width:460px;border:1px solid #ffffff40;background:#112d3af5;border-radius:26px;box-shadow:0 24px 80px #07233066}.card h1{font-size:52px;line-height:1.04;letter-spacing:-2px;margin:20px 0}.card em{font-style:normal;color:#f5ce79}.card p{font-size:15px;line-height:1.6}.card .sub{color:#b7cdd2;font-size:13px}.card small{display:block;margin-top:18px;font-size:10px;line-height:1.8;color:#a8c6ce}.primary{background:#69d7df;color:#13343d;font-weight:850;border:0;width:100%;padding:15px}.dialogcard{background:#122f3b;padding:26px;border-radius:22px;width:min(450px,90vw);border:1px solid #9dd5d94a}.dialogcard h2{font-size:26px;color:#f6d27a}.dialogcard p{line-height:1.7;color:#d4e3e4}.dialogcard button{margin:6px 6px 0 0;background:#2d6778}#touch{display:none;position:absolute;bottom:22px;left:18px;right:18px;justify-content:space-between;align-items:end;pointer-events:none}#touch button{pointer-events:auto;width:48px;height:45px;background:#163444c9;font-weight:bold;padding:0;user-select:none}.pad{text-align:center}.pad div{display:flex;gap:5px;margin-top:5px}#touch .brake{width:64px;font-size:10px} @media(pointer:coarse){#touch{display:flex}#help{display:none}#bottom{bottom:30px;width:50vw}#interact{min-width:0;font-size:12px}#mapbox{bottom:150px}}@media(max-width:650px){header{top:14px;left:14px;right:14px}.brand b{font-size:20px}.brand small{font-size:7px;letter-spacing:1px}.tools{gap:3px}.tools button{font-size:10px;padding:8px}#route{top:75px;left:14px;width:180px;padding:11px;border-radius:15px}#route button{padding:8px 4px;gap:7px}#route span{font-size:11px}#route small{display:none}#objective{font-size:10px}#mapbox{right:14px;bottom:150px}#map{width:100px;height:100px}#mapbox small{font-size:7px}#toast{top:70px;left:auto;right:14px;transform:none;max-width:170px;font-size:11px}#bottom{bottom:22px;width:60vw}#help{font-size:9px}#status{font-size:9px}.card{padding:25px}.card h1{font-size:42px}}@media(max-height:530px){#route{top:65px}#route button{margin-top:5px;padding:7px}#mapbox{bottom:20px}#help{display:none}.card{padding:18px;max-width:550px}.card h1{font-size:32px;margin:10px 0}.card p{margin:8px 0}.card small{margin-top:8px}#bottom{bottom:16px}}
@media(max-width:900px),(pointer:coarse){#touch{display:flex;bottom:18px;left:16px;right:16px;z-index:4}#touch button{width:54px;height:54px;border:2px solid #83d5dd;font-size:16px;background:#122f43f2;-webkit-user-select:none;touch-action:none}#touch .brake{width:78px;height:78px;background:#c7653b;font-size:13px;border-color:#ffcf9a}#bottom{bottom:145px;width:58vw}#help{display:none}#interact{min-width:0;width:100%;font-size:13px;padding:14px 9px}#status{background:#142e3bea;color:#fff4d2;border-radius:9px;padding:7px;letter-spacing:1px}#mapbox{bottom:145px}#route{width:160px}#toast{pointer-events:none}}
#help{background:#142e3be0;color:#fff5db;text-shadow:none;padding:7px;border-radius:9px}#status{color:#fff4d2;text-shadow:0 1px 3px #152c3b}

