:root{font-family:"Microsoft YaHei","PingFang SC",sans-serif;color:#345349;font-synthesis:none;--ink:#345349;--line:#8eb1c044;--glass:#f7fcffdf}*{box-sizing:border-box}html,body{margin:0;width:100%;height:100%;overflow:hidden}button{font:inherit;color:inherit;cursor:pointer;border:0;background:none;touch-action:manipulation}button:focus-visible{outline:3px solid #d49748;outline-offset:3px}button:hover{background:#dcecf1}button.active{color:#fff;background:#4b6651;box-shadow:0 3px 10px #16455620}#world,#world canvas{position:absolute;inset:0;width:100%;height:100%;display:block;touch-action:none}.panel{background:var(--glass);border:1px solid #ffffffb8;box-shadow:0 8px 35px #3453490d;backdrop-filter:blur(14px);border-radius:17px}.brand{position:absolute;top:30px;left:34px;display:flex;gap:15px;align-items:center;pointer-events:none}.snow-logo{font-size:37px;width:58px;height:62px;display:grid;place-items:center;border-top:1px solid #668aa3;border-bottom:1px solid #668aa3}h1{margin:0;font-family:"STSong","SimSun",serif;font-size:35px;font-weight:500;letter-spacing:7px}.brand p{font-size:12px;letter-spacing:2px;margin:8px 0 0}.brand p span{padding:0 4px}.environment{position:absolute;right:30px;top:30px;padding:6px;display:flex;gap:8px;align-items:center}.segment{display:flex;gap:2px}.segment button{padding:11px 15px;border-radius:11px;font-size:14px}.environment i,.dock i{height:23px;width:1px;background:var(--line);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;border-radius:9px;font-size:24px}.view-tools span{width:19px;height:1px;margin:4px;background:var(--line)}.compass{position:absolute;bottom:98px;left:36px;width:70px;text-align:center;color:#49758b;font-size:12px;pointer-events:none}.compass span{display:block}.compass b{font-size:25px;display:block;transform-origin:50% 60%}.compass small{display:flex;justify-content:space-between;font-size:12px}.compass span:last-child{padding-top:6px}footer{position:absolute;bottom:27px;left:34px;right:34px;display:flex;justify-content:space-between;align-items:center;pointer-events:none}.scene-note{font-size:12px;display:grid;gap:7px}.scene-note b{font-weight:500}.scene-note span{opacity:.66}.dock{position:absolute;left:50%;transform:translateX(-50%);display:flex;padding:6px;align-items:center;gap:4px;white-space:nowrap;pointer-events:auto}.dock button{border-radius:11px;padding:14px 18px;font-size:14px}.dock #motion{padding:14px 12px}#motion-icon{padding-right:5px}#hint{font-size:12px;opacity:.8}.map-label{position:absolute;padding:7px 11px;border:1px solid #ffffffcd;background:#f8fcffd9;border-radius:8px;box-shadow:0 3px 12px #18374d14;white-space:nowrap;font-size:12px;transform:translate(-50%,-100%);backdrop-filter:blur(8px);transition:background .15s}.map-label:after{content:"";position:absolute;height:8px;width:1px;background:#5b8798a0;bottom:-9px;left:50%}.map-label:hover,.map-label.selected{background:#4b6651;color:#fff}.map-label.hidden{visibility:hidden}#info{position:absolute;left:30px;top:133px;width:310px;padding:26px;z-index:4}#close-info{position:absolute;right:10px;top:8px;font-size:26px;border-radius:50%;width:32px;height:32px}#info-type{font-size:12px;color:#7194a2}#info h2{font-family:"STSong","SimSun",serif;font-size:26px;letter-spacing:2px;margin:13px 0}#info p{font-size:14px;line-height:1.9;margin:0 0 22px}.info-foot{border-top:1px solid var(--line);padding-top:17px;display:flex;align-items:center;justify-content:space-between;font-size:12px}.info-foot button{background:#4b6651;color:white;padding:10px;border-radius:8px}#walk-help{position:absolute;left:28px;bottom:115px;padding:20px;width:245px}#walk-help strong{font-size:17px}#walk-help p{font-size:13px;line-height:1.8}#lock-pointer{padding:8px;background:#deedf4;border-radius:7px;font-size:13px}.walk-pad{display:none;grid-template-columns:repeat(3,42px);gap:5px;margin-top:14px}.walk-pad button{height:40px;border-radius:7px;background:#dcecf4;font-size:23px}.walk-pad button:first-child{grid-column:2}.walk-pad button:nth-child(2){grid-column:1}#loading{position:absolute;inset:0;background:#b7dfea;display:grid;place-content:center;text-align:center;z-index:10;transition:opacity .5s}#loading span{font-size:55px;animation:spin 8s linear infinite}#loading p{font-size:14px;letter-spacing:3px}@keyframes spin{to{transform:rotate(360deg)}}#toast{position:absolute;bottom:108px;left:50%;transform:translateX(-50%);max-width:90vw;text-align:center;padding:12px 20px;color:white;background:#345349ed;border-radius:10px;opacity:0;pointer-events:none;transition:opacity .2s;font-size:14px}#toast.show{opacity:1}[hidden]{display:none!important}body.night{color:#def0ff;--glass:#172f46e8;--ink:#def0ff;--line:#dcefff33}body.night .brand,body.night .compass{color:#d8edff}body.night .map-label{background:#163651df;color:#d8edff;border-color:#a9d8ed44}body.night button:hover{background:#36586e}body.night .map-label.selected{background:#c99551;color:#132a3c}body.night #info-type{color:#a1ccdf}body.night .walk-pad button,body.night #lock-pointer{background:#31506a}
@media(max-width:900px){.brand{top:22px;left:22px}.environment{top:22px;right:22px}.brand h1{font-size:29px}.brand p{font-size:11px}.snow-logo{font-size:30px;width:43px;height:52px}.scene-note,#hint{display:none}footer{bottom:24px}.view-tools{right:16px}.compass{left:20px}.walk-pad{display:grid}#info{left:20px;top:108px}}@media(max-width:600px){.brand{top:18px;left:18px;gap:9px}.brand h1{font-size:25px;letter-spacing:4px}.brand p{letter-spacing:0;font-size:11px}.snow-logo{width:33px;font-size:27px;height:45px}.environment{top:90px;left:50%;right:auto;transform:translateX(-50%);padding:4px;gap:4px;border-radius:13px}.segment button{padding:9px 12px;font-size:12px;white-space:nowrap}.environment i{height:18px}.view-tools{top:45%;right:10px;padding:4px;border-radius:12px}.view-tools button{height:34px;width:30px;font-size:21px}.dock{gap:1px;padding:5px}.dock button{padding:12px 13px;font-size:13px}.dock #motion{padding:12px 9px}.compass{bottom:101px;left:15px;width:46px;font-size:10px}.compass small{font-size:10px}#info{top:149px;left:14px;width:min(300px,calc(100% - 66px));padding:20px}#info p{font-size:13px;line-height:1.7}#info h2{font-size:23px}.map-label{font-size:10px;padding:5px 7px}#walk-help{bottom:99px;left:14px;width:205px;padding:14px}.walk-pad{grid-template-columns:repeat(3,39px)}#toast{bottom:91px;font-size:12px}}
