*{box-sizing:border-box}body{margin:0;overflow:hidden;color:#264338;font:14px 'Microsoft YaHei',sans-serif}#world,canvas{position:fixed;inset:0;width:100vw;height:100vh;height:100dvh;display:block}header{position:absolute;top:32px;left:38px;pointer-events:none}header small{letter-spacing:3px;font-size:11px;color:#667a62}h1{font:600 29px SimSun,serif;margin:10px 0;letter-spacing:3px}h1 span{font-weight:400;color:#9ba17a}header p{font-size:12px;letter-spacing:3px;color:#6c7e68}button,select{font:inherit;color:inherit;cursor:pointer}button{border:1px solid #d5d9c7;background:#fffffff0;border-radius:9px;padding:11px 15px}button:hover{background:#e6eedc}button:focus-visible,select:focus-visible{outline:3px solid #b08629;outline-offset:3px}.settings{position:absolute;top:32px;right:34px;display:flex;gap:8px;align-items:center}.settings label{background:#ffffffed;padding:8px 10px;border-radius:9px;display:flex;gap:10px;align-items:center;font-size:12px}select{border:0;background:transparent;padding:4px}#labels{padding:9px}svg{width:22px;height:22px;fill:none;stroke:currentColor;stroke-width:1.7}#pins{position:absolute;inset:0;pointer-events:none}.pin{position:absolute;transform:translate(-50%,-100%);pointer-events:auto;padding:6px 10px;border-radius:5px;font-size:11px;white-space:nowrap;box-shadow:0 3px 12px #193d2912;border-bottom:2px solid #8a9b4b}.pin:after{content:'';position:absolute;bottom:-7px;left:50%;height:5px;width:1px;background:#607a56}.pin.selected{background:#345b46;color:white}#info{position:absolute;right:34px;top:100px;width:280px;padding:25px;background:#fffffff2;border:1px solid #dee2d0;border-radius:14px;box-shadow:0 10px 50px #142a3222}#info small{font-size:10px;color:#8c9b70;letter-spacing:3px}#info h2{font:600 24px SimSun,serif}#info p{line-height:1.9;color:#637263;font-size:13px}#close{position:absolute;right:10px;top:9px;padding:2px 8px;border:0;font-size:22px}#visit{background:#365c47;color:white;width:100%;margin-top:10px}.compass{position:absolute;left:38px;bottom:135px;width:104px;height:104px;border:1px solid #e7f0f6cf;border-radius:50%;background:#f7fcffe0;box-shadow:0 4px 18px #173a4f20;text-align:center;color:#365c6e;font-size:12px;font-weight:600;pointer-events:none;backdrop-filter:blur(6px)}.compass>span{position:absolute;display:block;line-height:1}.compass-north{top:7px;left:50%;transform:translateX(-50%)}.compass-east{right:9px;top:50%;transform:translateY(-50%)}.compass-south{bottom:7px;left:50%;transform:translateX(-50%)}.compass-west{left:9px;top:50%;transform:translateY(-50%)}.compass-needle{position:absolute;left:50%;top:50%;width:32px;height:42px;margin:-24px 0 0 -16px;transform-origin:50% 57%;filter:drop-shadow(0 1px 2px #173a4f73)}footer{position:absolute;bottom:20px;left:34px;right:34px;pointer-events:none;text-align:center}nav{display:inline-flex;background:#ffffffe0;padding:6px;border-radius:14px;gap:5px;pointer-events:auto;box-shadow:0 7px 24px #21362014}nav button{border:0;background:transparent}nav button.active{background:#365c47;color:white}#hint{font-size:11px;color:#667b61;margin-bottom:0}.legend{position:absolute;left:0;bottom:12px;font-size:10px;text-align:left}.legend i{display:inline-block;width:6px;height:6px;background:#93aa51;border-radius:50%;margin:0 5px 0 8px}.legend i:nth-of-type(2){background:#2cabc2}.legend i:nth-of-type(3){background:#be5838}.legend span{display:block;color:#8c927d;font-size:9px;margin-top:9px}#walk-panel{position:absolute;left:30px;top:155px;background:#ffffffe8;border-radius:12px;padding:15px;font-size:12px;line-height:1.8}#pad{display:flex;gap:5px;margin-top:10px}#pad button{touch-action:none}#loading{position:fixed;inset:0;background:#f4f2e7;display:grid;place-content:center;text-align:center;z-index:50}progress{width:220px;accent-color:#668347}body.night{color:#d5e4d3}body.night header small,body.night header p,body.night #hint,body.night .compass{color:#b7c3b2}body.night button,body.night label,body.night nav,body.night #info,body.night #walk-panel{background:#1e3445ed;color:#e7eadb;border-color:#46616c}body.night #info p{color:#b9ccce}body.night select option{background:#1e3445}body.night .compass{color:#d8edff;background:#16354bd9;border-color:#b8ddf066}@media(max-width:900px){.legend{display:none}header{left:22px;top:20px}h1{font-size:23px}.settings{right:20px;top:20px}#info{right:20px;top:86px}.compass{left:22px}}@media(max-width:600px){header p,header small{display:none}h1{font-size:19px}.settings{top:65px;left:20px;right:auto}button{padding:9px 11px}#info{top:120px;width:250px}footer{left:10px;right:10px}#hint{font-size:9px}.compass{bottom:125px;left:15px;width:82px;height:82px;font-size:10px}.compass-needle{width:26px;height:34px;margin:-19px 0 0 -13px}.compass-north{top:5px}.compass-east{right:6px}.compass-south{bottom:5px}.compass-west{left:6px}#walk-panel{top:120px}}[hidden]{display:none!important}
[hidden]{display:none!important}
.panel,.settings,nav,#info{background:#f7fcffdf;border:1px solid #ffffffb8;box-shadow:0 8px 35px #554a3d0d;backdrop-filter:blur(14px);border-radius:17px}.settings{padding:6px;gap:8px}.segment{display:flex;gap:2px}.segment button{border:0;border-radius:11px;padding:11px 15px;background:none}.segment button.active,nav button.active{background:#916238;color:#fff}.settings i{width:1px;height:23px;background:#8eb1c044;margin:0 3px}.view-tools{position:absolute;right:30px;top:44%;padding:7px;display:flex;align-items:center;flex-direction:column}.view-tools button{width:40px;height:43px;padding:7px;border:0;border-radius:9px;background:none;font-size:24px}.view-tools span{width:19px;height:1px;margin:4px;background:#8eb1c044}#info{left:30px;right:auto;top:140px;width:310px}.pin{border-radius:8px;border:1px solid #ffffffcd;background:#f8fcffd9;backdrop-filter:blur(8px)}.pin.selected{background:#916238}#visit{background:#916238}header h1{font-weight:500;font-size:32px;letter-spacing:5px}header p{letter-spacing:2px}body.night .view-tools{background:#172f46e8}body.night .segment button.active{background:#a67c45}.legend{color:#586858}nav button{border-radius:11px;padding:14px 18px}#walk-panel{top:auto;bottom:125px;z-index:3}@media(max-width:1000px){header h1{font-size:25px;letter-spacing:2px}.settings{gap:2px}.segment button{padding:10px 11px}.legend{display:none}}@media(max-width:600px){header{top:18px;left:18px}header h1{font-size:24px}.settings{top:83px;left:50%;right:auto;transform:translateX(-50%);white-space:nowrap;gap:2px}.segment button{padding:9px 12px;font-size:12px}.view-tools{right:10px;padding:4px}.view-tools button{width:30px;height:34px;font-size:21px;padding:4px}#info{left:14px;top:142px;width:calc(100% - 70px);max-width:300px}nav button{padding:12px 13px}.pin{font-size:10px;padding:5px 7px}}
