@import url('https://fonts.googleapis.com/css2?family=Noto+Serif+SC:wght@400;500;600&family=DM+Sans:wght@400;500;600&display=swap');
:root{font-family:'DM Sans','Microsoft YaHei',sans-serif;color:#263c39;--pink:#b45b6c}*{box-sizing:border-box}body{margin:0;overflow:hidden;background:#d5e8e7}#world{position:fixed;inset:0;width:100%;height:100%;touch-action:none}button,a{-webkit-tap-highlight-color:transparent}button{font:inherit;cursor:pointer;border:0;color:inherit}button:focus-visible,a:focus-visible{outline:3px solid #b45b6c;outline-offset:5px}header{position:absolute;left:4%;right:4%;top:32px;display:flex;align-items:center;justify-content:space-between;pointer-events:none}header>*{pointer-events:auto}.brand{display:flex;align-items:center;gap:14px;text-decoration:none;color:inherit;font-family:'Noto Serif SC',serif;font-size:25px;letter-spacing:3px}.seal{background:#b45b6c;color:#fff7ef;border-radius:3px;padding:4px 9px;font-size:26px;transform:rotate(-3deg)}.sub{display:block;font:9px 'DM Sans',sans-serif;letter-spacing:3px;margin-top:3px}.chapter{font-size:11px;letter-spacing:2px;display:flex;align-items:center;gap:10px}.chapter i{width:6px;height:6px;border-radius:50%;background:#688579}.chapter span{color:#87948e;margin-left:20px}.round{width:36px;height:36px;border:1px solid #536b6350;background:#f6f5ee85;border-radius:50%;font-size:20px}#welcome{position:absolute;left:7%;top:25%;width:360px;transition:opacity .6s,transform .6s}body:before{content:'';position:absolute;inset:0;pointer-events:none;background:linear-gradient(90deg,#f3f2eadd 0%,#f3f2ea99 23%,transparent 54%),linear-gradient(0deg,#ecefead9,transparent 17%);transition:opacity 1s}.eyebrow{font-size:10px;letter-spacing:3px;color:#75817a}h1{font:500 clamp(40px,4.4vw,70px)/1.45 'Noto Serif SC',serif;letter-spacing:4px;margin:24px 0 20px}h1 span{color:var(--pink)}#welcome p{font-size:13px;line-height:2.1;letter-spacing:2px;color:#65736b}.primary{margin-top:23px;background:#2d4943;color:#faf8ee;padding:17px 24px;border-radius:3px;min-width:200px;text-align:left;font-size:13px;letter-spacing:2px;box-shadow:0 8px 30px #2c4a4320}.primary span{float:right;font-size:18px}.primary:hover{background:#41675e}.textbutton{display:block;background:transparent;padding:17px 0;font-size:11px;color:#67786e}.textbutton span{margin-left:13px}.load{font-size:10px;color:#83938b;letter-spacing:1px;margin-top:4px}.location{position:absolute;right:4%;bottom:22%;display:flex;align-items:center;gap:15px;font-size:12px;letter-spacing:2px}.vertical{writing-mode:vertical-rl;font-family:'Noto Serif SC',serif;font-size:21px;letter-spacing:7px}.location-line{height:54px;width:1px;background:#60756960}.location small{font-size:8px;letter-spacing:1px;line-height:2.5}footer{position:absolute;bottom:27px;left:4%;right:4%;display:flex;align-items:center;justify-content:space-between;gap:20px}.weather{display:flex;gap:13px;font-size:12px;align-items:center}.weather>span{font-size:26px}.weather small{display:block;font-size:9px;margin-top:6px;letter-spacing:1px;color:#6c7d74}nav{display:flex;align-items:center;gap:5px;background:#f9faf4c9;border:1px solid #ffffff90;padding:5px;border-radius:30px;backdrop-filter:blur(12px)}nav button{background:transparent;padding:10px 17px;border-radius:20px;font-size:11px;white-space:nowrap}nav button.active{background:#304c44;color:#f8f6eb}nav span{height:16px;width:1px;background:#68776e30;margin:0 5px}.edition{font-size:8px;letter-spacing:2px}.edition b{display:block;text-align:right;margin-top:7px;letter-spacing:3px;font-weight:400}.playing #welcome{opacity:0;transform:translateX(-20px);pointer-events:none}.playing:before{opacity:0}.playing .location{display:none}.playing header,.playing footer{filter:drop-shadow(0 1px 5px #ffffff90)}#hint{position:absolute;bottom:110px;left:50%;transform:translateX(-50%);background:#203d36aa;color:#fff;padding:10px 20px;border-radius:20px;font-size:11px;white-space:nowrap;pointer-events:none}#crosshair{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);color:#fff9;font-size:18px;pointer-events:none}dialog{max-width:520px;width:90%;border:1px solid #ddd8cb;border-radius:10px;padding:36px;background:#f9f7ef;color:#344d43;box-shadow:0 20px 80px #0003}dialog::backdrop{background:#19392c55;backdrop-filter:blur(5px)}dialog p,dialog li{font-size:13px;line-height:1.9}dialog a{color:#a25869;font-size:12px}dialog h2{font-family:'Noto Serif SC',serif;font-weight:500}#close{float:right}#error{position:absolute;inset:20%;background:#fff;padding:30px;z-index:10}#mobile{display:none;position:absolute;bottom:125px;left:25px;text-align:center}#mobile button{width:43px;height:43px;margin:2px;background:#faf8eadb;border-radius:10px;touch-action:none}@media(max-width:700px){header{top:20px}.chapter,.edition,.location{display:none}#welcome{left:8%;top:23%;width:80%}h1{font-size:49px}body:before{background:linear-gradient(90deg,#f3f2eadb,transparent)}footer{bottom:20px;flex-wrap:wrap;gap:15px}.weather{display:none}nav{margin:auto}nav button{padding:10px 13px}#hint{font-size:9px;bottom:88px;max-width:95%;white-space:normal;text-align:center}.playing #mobile{display:block}}

body:before{z-index:1}header,#welcome,footer,.location,#hint,#crosshair,#mobile{z-index:2}#error{z-index:10}

.playing #welcome{visibility:hidden}body:not(.playing) #mobile{display:none}

@media(max-width:700px){nav{flex-wrap:wrap;justify-content:center;max-width:95vw}nav button{padding:8px 10px}}
