:root{--cream:#ffefc8;--dark:#203f34;--orange:#f5b866}*{box-sizing:border-box}body{margin:0;background:#213b31;color:var(--cream);font-family:"PingFang SC","Microsoft YaHei",sans-serif}a{color:inherit;text-decoration:none}button{font:inherit;cursor:pointer}button,a{-webkit-tap-highlight-color:transparent}button:focus-visible,a:focus-visible{outline:3px solid #fff1b4;outline-offset:5px}button{color:inherit}button:disabled{cursor:default}.world{height:max(850px,100svh);max-height:1200px;position:relative;isolation:isolate;overflow:hidden;background:#78917b;transition:background 1s}.sky{position:absolute;inset:0;background:linear-gradient(120deg,#395b4b 0%,#66816a 40%,#b8bc91 100%);z-index:-4;transition:filter 1s}.sky:after{content:"";position:absolute;inset:0;opacity:.11;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 180 180' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.65' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Cpath fill='%23fff' filter='url(%23n)' opacity='.6' d='M0 0h180v180H0z'/%3E%3C/svg%3E")}.sun{position:absolute;width:400px;height:400px;border-radius:50%;background:#f6df9b;right:12%;top:1%;box-shadow:0 0 100px #f6df9b55;opacity:.8}.cloud{position:absolute;width:300px;height:28px;border-radius:50%;background:#e3e3bd;filter:blur(18px);opacity:.35}.cloud-one{right:4%;top:17%;animation:drift 25s ease-in-out infinite alternate}.cloud-two{right:35%;top:8%;width:200px;animation:drift 30s ease-in-out infinite alternate-reverse}header{position:absolute;left:4%;right:4%;top:28px;z-index:10;display:flex;justify-content:space-between;align-items:center}.wordmark{font:bold 22px "Songti SC",serif;letter-spacing:3px;text-shadow:0 2px 4px #203f3440}.wordmark span{display:block;font:9px sans-serif;letter-spacing:3px;margin-top:7px;opacity:.7}.top-controls{display:flex;gap:10px}.top-controls button{border:1px solid #fff0c640;background:#234536b3;backdrop-filter:blur(12px);padding:11px 18px;border-radius:25px;font-size:11px;letter-spacing:1px}.top-controls button:hover{background:#183e2d}.top-controls #count{color:#ffd98a}.intro{position:absolute;left:7%;top:17%;z-index:4}.issue{display:flex;gap:12px;align-items:center;font-size:10px;letter-spacing:2px}.issue span{border:1px solid #ffedbf80;padding:5px 8px}.issue i{font-style:normal;opacity:.65}h1{font-family:"Songti SC","STSong","SimSun",serif;font-weight:900;font-size:clamp(80px,7.6vw,118px);line-height:1.03;letter-spacing:-6px;margin:27px 0 15px;transform:rotate(-5deg);text-shadow:3px 4px 0 #375743,6px 7px 0 #ead6a02b}h1>span{display:block}h1>span:first-child{margin-left:5px}h1 b{display:inline-block;vertical-align:middle;font:14px/1.4 serif;border:1px solid #fff0c7;padding:5px 3px;letter-spacing:1px;transform:rotate(10deg);margin:0 0 12px 15px}.slogan{font-family:serif;font-size:27px;letter-spacing:5px;margin:25px 0 18px}.invitation{font-size:12px;line-height:2;letter-spacing:2px;opacity:.77}.enter{display:block;position:relative;width:255px;padding:18px 20px 17px;text-align:center;background:#a43925;border:5px solid #eec992;outline:1px solid #5a3825;border-radius:3px;box-shadow:5px 7px 0 #233f3680,inset 0 0 0 1px #edc79260;transform:rotate(-3deg);margin-top:30px;transition:transform .25s,background .25s}.enter:before,.enter:after{content:"";position:absolute;height:24px;width:2px;background:#d5ba88;top:-26px}.enter:before{left:35px}.enter:after{right:35px}.enter small{font-size:9px;letter-spacing:2px}.enter strong{display:block;font:900 33px "Songti SC",serif;letter-spacing:7px;margin-top:5px}.enter:hover{transform:rotate(0);background:#bd4930}.open-tag{position:absolute;right:-37px;top:33px;background:#ecd39d;color:#713d27;padding:8px 7px;font:12px serif;writing-mode:vertical-rl;letter-spacing:4px;transform:rotate(12deg);border:1px solid #a68b5f}.nail{position:absolute;top:8px;width:5px;height:5px;background:#f0d499;border-radius:50%}.nail-left{left:8px}.nail-right{right:8px}.hint{font-size:10px;letter-spacing:1px;opacity:.55;margin-top:22px}.stage{position:absolute;inset:0 0 0 29%;z-index:1;transition:filter 1s}.ground{position:absolute;left:10%;top:27%;width:90%;height:80%;background:#a2a183;transform:rotate(-30deg) skew(15deg);border-radius:30%;opacity:.55}.scene-image{position:absolute;width:min(100%,1100px);height:112%;object-fit:contain;object-position:center;right:-4%;top:-6%;filter:drop-shadow(16px 25px 15px #193e3545);transition:opacity .22s,transform .6s;user-select:none}.stage:after{content:"";position:absolute;inset:0;pointer-events:none;background:linear-gradient(90deg,#4d6c5710,transparent 20%),linear-gradient(0deg,#284d43 0%,transparent 32%);z-index:1}.scene-wash{position:absolute;inset:0;pointer-events:none;background:#ed9a3940;mix-blend-mode:color;opacity:0;z-index:2;transition:opacity 1s}.hotspot{position:absolute;z-index:3;border:0;display:flex;align-items:center;gap:9px;background:#fff4d8;color:#3b4b39;font-size:11px;border-radius:4px;box-shadow:0 4px 0 #1f392b55;transform:rotate(-3deg);padding:12px 15px;transition:transform .2s}.hotspot:hover{transform:rotate(0) translateY(-4px)}.hotspot-story{left:42%;top:46%}.pulse{width:7px;height:7px;background:#bd5532;border-radius:50%;box-shadow:0 0 0 4px #bd553220;animation:pulse 2s infinite}.hotspot-find{right:17%;top:66%;background:transparent;box-shadow:none;padding:0;display:flex;flex-direction:column;gap:0}.hotspot-find img{width:70px;filter:drop-shadow(0 4px 2px #233c3055)}.hotspot-find span{padding:6px 10px;background:#fff2ce;border-radius:3px;font-size:10px}.street-sign{position:absolute;right:5%;top:20%;background:#2b645c;border:3px solid #e8e6c0;padding:13px 25px;box-shadow:4px 5px 0 #29423655;transform:rotate(7deg);z-index:3;text-align:center}.street-sign:after{content:"";position:absolute;left:50%;height:75px;width:5px;background:#adb4a2;top:100%;z-index:-1}.street-sign>span{display:block;font:bold 28px serif;letter-spacing:8px}.street-sign small{font:8px sans-serif;letter-spacing:2px;display:block;margin-top:7px}.scene-caption{position:absolute;bottom:170px;left:47%;z-index:4;display:flex;align-items:center;gap:17px;text-shadow:0 2px 4px #143e30}.scene-caption>span{font:italic 52px Georgia,serif;opacity:.55}.scene-caption strong{font:20px serif;letter-spacing:2px}.scene-caption p{font-size:10px;letter-spacing:1px;opacity:.7;margin:9px 0}.route{position:absolute;left:6%;right:6%;bottom:30px;background:#efe7cc;color:#294c40;z-index:5;display:flex;min-height:112px;box-shadow:0 12px 30px #14332755;transform:rotate(-.6deg);border-radius:3px}.route:before,.route:after{content:"";position:absolute;width:20px;height:20px;background:#2a4e42;border-radius:50%;right:100px}.route:before{top:-10px}.route:after{bottom:-10px}.route-label{width:160px;padding:28px 20px 20px 30px;flex-shrink:0}.route-label span{font-size:10px;letter-spacing:3px}.route-label strong{display:block;font:23px serif;margin-top:7px;letter-spacing:2px}.stations{display:flex;flex:1;position:relative;padding:20px 5px 10px}.stations:before{content:"";position:absolute;height:2px;background:#b9bca2;left:12%;right:12%;top:31px}.station{width:25%;background:none;border:0;position:relative;color:#768273;padding:0 5px}.station i{display:block;position:relative;width:11px;height:11px;background:#efe7cc;border:2px solid #899a83;border-radius:50%;margin:0 auto 10px}.station span{display:block;font-weight:600;font-size:14px;letter-spacing:3px}.station small{display:block;font-size:9px;margin-top:5px;letter-spacing:1px}.station.selected{color:#a23e29}.station.selected i{background:#a23e29;border-color:#a23e29;box-shadow:0 0 0 5px #a23e291c}.station:hover{color:#a23e29}.ticket-end{width:110px;border-left:1px dashed #acaf96;flex-shrink:0;text-align:center;display:flex;flex-direction:column;justify-content:center;font-size:10px;letter-spacing:2px}.ticket-end big{font:32px Georgia;line-height:1.2}.ticket-end small{font-size:8px;letter-spacing:1px}.world.evening .sky{filter:sepia(.55) hue-rotate(335deg) saturate(1.5) brightness(.8)}.world.evening .stage{filter:sepia(.2) brightness(.8)}.world.evening .scene-wash{opacity:1}.world.evening .sun{background:#ffb160}.world.evening .hotspot{box-shadow:0 0 22px #ffd98670}.world.evening{background:#85624b}footer{padding:30px 20px;text-align:center;background:#20392f;color:#c9d0b7}.footer-title{font:15px serif;letter-spacing:4px;margin-bottom:18px}.legal{display:flex;gap:25px;justify-content:center;font-size:10px;opacity:.7}.legal a{text-decoration:underline;text-underline-offset:4px}footer p{font-size:9px;line-height:2.2;opacity:.4;margin:15px 0 0}dialog{color:#374b3e;background:#f2e9d0;border:1px solid #b3a582;border-radius:5px;max-width:calc(100vw - 32px);padding:40px;box-shadow:0 25px 100px #0f2b34aa}dialog::backdrop{background:#102c28b8;backdrop-filter:blur(7px)}.close{position:absolute;right:18px;top:16px;border:0;background:none;color:#6d7564;font-size:11px;z-index:2;padding:8px}.close:hover{color:#aa3c25}.story-dialog[open]{display:flex;align-items:center;gap:30px;width:660px;min-height:350px;overflow:hidden}.portrait-wrap{width:200px;flex-shrink:0;align-self:end;margin-bottom:-45px}.portrait-wrap img{width:100%;display:block}.dialog-kicker{font-size:10px;letter-spacing:2px;color:#967448}dialog h2{font:900 28px "Songti SC",serif;line-height:1.5;margin:17px 0}dialog p{font-size:13px;line-height:2.1;color:#737764}.dialog-copy a,.album-play{display:inline-block;font-size:12px;border-bottom:1px solid #a44832;padding:8px 0;color:#a44832}.album-dialog{width:720px;text-align:center;padding-top:50px}.album-intro{font-size:12px}.collectibles{display:flex;gap:15px;margin:25px 0}.collectibles>div{flex:1;padding:18px 10px;border:1px dashed #b3ac8d;position:relative}.collectibles img{width:90px;height:90px;object-fit:contain;filter:grayscale(1);opacity:.25;margin-bottom:13px}.collectibles strong{display:block;font:16px serif}.collectibles span{display:block;font-size:9px;margin-top:10px;color:#8a8a75}.collectibles .found img{filter:none;opacity:1}.collectibles .found:after{content:"已收藏";position:absolute;top:8px;right:5px;color:#ad4932;border:1px solid #ad4932;font-size:10px;padding:3px;transform:rotate(12deg)}#album-message{font-size:12px}.toast{position:fixed;bottom:35px;left:50%;transform:translate(-50%,20px);padding:14px 24px;background:#fff0ca;color:#41513d;border:1px solid #c3aa77;z-index:30;font-size:12px;opacity:0;transition:.25s;pointer-events:none;box-shadow:0 5px 25px #0b2e3455;max-width:90vw;text-align:center}.toast.show{opacity:1;transform:translate(-50%,0)}@keyframes pulse{50%{box-shadow:0 0 0 8px #bd553205}}@keyframes drift{to{transform:translateX(80px)}}@media(min-width:1600px){.intro{left:10%;top:19%}.stage{right:5%}.scene-image{width:1100px}}@media(max-width:1050px){.intro{left:5%;top:17%}h1{font-size:85px}.stage{left:24%;right:-12%}.scene-image{width:110%;height:100%;top:0}.scene-caption{left:42%;bottom:170px}.scene-caption strong{font-size:16px}.scene-caption p{max-width:260px;line-height:1.8}.route{left:4%;right:4%}.route-label{width:130px;padding-left:20px}.street-sign{right:16%;top:15%}.hotspot-story{left:45%}.hotspot-find{right:26%}.ticket-end{width:80px}.route:before,.route:after{right:70px}}@media(max-width:650px){.world{height:1080px;max-height:none}header{top:20px;left:6%;right:6%;align-items:start}.wordmark{font-size:17px;letter-spacing:2px}.wordmark span{font-size:8px;letter-spacing:1px}.top-controls{gap:7px;flex-direction:column;align-items:end}.top-controls button{padding:8px 11px;font-size:9px}.intro{left:8%;top:115px}.issue{font-size:8px;gap:8px;letter-spacing:1px}h1{font-size:79px;margin-top:21px;letter-spacing:-5px}h1 b{font-size:11px;margin-left:13px}.slogan{font-size:22px;letter-spacing:3px;margin-top:20px}.invitation{font-size:11px;line-height:1.8;letter-spacing:1px}.enter{width:210px;margin-top:28px;padding:12px 10px;border-width:4px}.enter strong{font-size:28px}.enter small{font-size:8px}.open-tag{right:-30px;font-size:10px;padding:6px 5px}.hint{font-size:9px;margin-top:18px;max-width:210px;line-height:1.8}.stage{inset:285px -25% 110px 0;z-index:1;pointer-events:none}.stage .hotspot{pointer-events:auto}.scene-image{width:100%;height:100%;top:0;right:-7%;object-position:center bottom;opacity:.95}.stage:after{background:linear-gradient(0deg,#284d43,transparent 24%)}.ground{top:30%;left:0;height:60%}.intro{pointer-events:none}.intro a{pointer-events:auto}.sun{width:290px;height:290px;right:-80px;top:20%}.street-sign{right:26%;top:40%;padding:9px 13px;transform:rotate(9deg)}.street-sign>span{font-size:21px;letter-spacing:5px}.street-sign small{font-size:6px;letter-spacing:1px}.street-sign:after{height:45px}.hotspot-story{left:28%;top:67%;font-size:10px;padding:10px}.hotspot-find{right:30%;top:75%}.hotspot-find img{width:60px}.hotspot-find span{font-size:9px}.scene-caption{left:8%;right:6%;bottom:167px;gap:10px}.scene-caption>span{font-size:35px}.scene-caption strong{font-size:14px;letter-spacing:1px}.scene-caption p{font-size:9px;max-width:none;margin:6px 0;letter-spacing:0}.route{left:5%;right:5%;bottom:30px;min-height:110px;transform:rotate(-1deg)}.route-label{width:43px;padding:17px 10px;border-right:1px dashed #b3b59b}.route-label span{writing-mode:vertical-rl;font-size:11px;letter-spacing:3px}.route-label strong{display:none}.ticket-end{display:none}.route:before,.route:after{right:auto;left:33px;width:16px;height:16px}.route:before{top:-8px}.route:after{bottom:-8px}.stations{padding:22px 1px 12px}.stations:before{top:33px}.station{padding:0 2px}.station span{font-size:12px;letter-spacing:1px}.station small{font-size:7px;letter-spacing:0;white-space:nowrap}.legal{gap:12px;font-size:9px;flex-wrap:wrap}footer{padding:25px 15px}.footer-title{font-size:12px;letter-spacing:2px}footer p{font-size:8px}.story-dialog[open]{gap:15px;padding:40px 22px 28px;min-height:300px}.portrait-wrap{width:100px;margin-left:-15px;margin-bottom:-28px}.dialog-kicker{font-size:8px;letter-spacing:1px}dialog h2{font-size:23px}dialog p{font-size:12px}.dialog-copy a{font-size:11px}.album-dialog{padding:45px 18px 25px}.collectibles{gap:7px}.collectibles>div{padding:17px 5px}.collectibles img{width:65px;height:65px}.collectibles strong{font-size:12px}.collectibles span{font-size:8px;line-height:1.6}.album-intro{font-size:11px}.toast{bottom:20px;width:max-content;max-width:90vw}.world.evening .stage{filter:sepia(.2) brightness(.8)}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation:none!important;transition:none!important}}
[hidden]{display:none!important}.portrait-wrap{background:url('image/00c9d5dd-dcaf-4ef7-8899-b65640abe3f4.png') center bottom/cover no-repeat}
@media(max-width:650px){.hotspot-story{left:12%;top:66%}.hotspot-find{right:25%;top:59%}}
