*{box-sizing:border-box}html,body{margin:0;width:100%;height:100%;overflow:hidden;background:#17113b;color:#fff;font-family:Arial,Helvetica,sans-serif}button,a{-webkit-tap-highlight-color:transparent}button{font:inherit;cursor:pointer}#game,#world{position:absolute;inset:0;width:100%;height:100%;touch-action:none}#world:focus{outline:none}header{position:absolute;top:0;left:0;width:100%;height:84px;display:flex;align-items:center;gap:28px;padding:0 28px;background:linear-gradient(#18103bef,#251354ad,transparent);pointer-events:none}.brand{color:#8bdcff;text-decoration:none;font-weight:900;font-size:25px;display:flex;align-items:center;gap:12px;pointer-events:auto}.brand span{font-size:9px;letter-spacing:2px;border-left:1px solid #86dfff66;padding-left:12px}.title img{width:205px;height:68px;display:block}.edition{margin-left:auto;font-size:9px;letter-spacing:2px;color:#d8d2ff}.location{position:absolute;top:95px;left:22px;pointer-events:none;background:linear-gradient(125deg,#201447f2,#102e60e6);border:1px solid #ffd45999;border-radius:12px;padding:14px 19px;box-shadow:0 6px 25px #130e4a40;backdrop-filter:blur(5px)}.eyebrow{font-size:9px;letter-spacing:2.5px;font-weight:bold;color:#ffcf4e}h1{font-family:Georgia,serif;font-weight:normal;font-size:27px;margin:8px 0;color:#fff}p{font-size:12px;line-height:1.6}.location p{color:#b8e8ff;margin:0}.tools{position:absolute;right:27px;top:104px;display:flex;gap:6px}.tools button,#closeMap{height:39px;min-width:39px;border:1px solid #ffcf5c99;border-radius:8px;background:#25144ce8;color:#fff;padding:0 12px;box-shadow:0 3px 12px #11092d30}.tools button:hover,#closeMap:hover{background:#c4348e;color:#fff;border-color:#ffdf68}kbd{font:9px Arial;margin-left:7px;color:#85dcff}.compass{display:none}.bottom{position:absolute;bottom:18px;left:175px;right:28px;display:flex;align-items:end;justify-content:space-between;pointer-events:none;background:#211442e8;padding:12px 16px;border:1px solid #8a78c977;border-radius:9px;border-bottom:3px solid #fbba3e}.walkhint{display:flex;flex-direction:column;gap:7px}.walkhint b{letter-spacing:2px;font-size:10px;color:#ffd44e}.walkhint span,.version{font-size:10px;color:#d9e8ff}.version{letter-spacing:1px;margin-left:20px}#mini{position:absolute;width:186px;height:130px;right:28px;bottom:84px;border:3px solid #ffcf49;border-radius:8px;box-shadow:0 5px 25px #130b4a88;padding:0;overflow:hidden;background:#25134b;transform:rotate(1.5deg)}#mini img{width:100%;height:100%;object-fit:fill}#mini small{position:absolute;bottom:0;left:0;background:#2a1754;color:#ffde66;font-size:8px;letter-spacing:1px;padding:5px 9px}#miniDot,#bigDot{position:absolute;width:11px;height:11px;border-radius:50%;background:#fc3d9b;border:2px solid white;box-shadow:0 0 0 5px #ff3f9855;transform:translate(-50%,-50%)}#toast{position:absolute;bottom:110px;left:50%;transform:translateX(-50%);background:#2b1554ed;border:1px solid #ffd34e;border-radius:25px;padding:12px 23px;font-size:12px;opacity:0;transition:opacity .3s;pointer-events:none}#toast.show{opacity:1}#mapPanel{position:absolute;inset:6% 8%;z-index:6;padding:25px;background:linear-gradient(135deg,#211345fa,#102e60fa);border:2px solid #ffd34e;border-radius:16px;box-shadow:0 30px 90px #09032799;display:flex;flex-direction:column}#mapPanel.hidden{display:none}.mapHead{display:flex;justify-content:space-between;align-items:center}.mapHead h2{font-family:Georgia,serif;font-weight:normal;font-size:27px;margin:8px 0 15px}#mapImage{position:relative;align-self:center;max-height:calc(100% - 125px);aspect-ratio:3/2;max-width:100%}#mapImage img{display:block;height:100%;width:100%;object-fit:contain}#mapPanel p{font-size:11px;color:#c7dfff}#welcome{position:absolute;inset:0;background:#130a3e9c;backdrop-filter:blur(4px);z-index:7;display:flex;justify-content:center;align-items:center}.ticket{background:radial-gradient(ellipse at 90% 0%,#323e8b 0,transparent 60%),linear-gradient(155deg,#23134f,#131e49 80%);color:#fff;width:470px;max-width:calc(100% - 32px);border:2px solid #ffce4a;border-radius:16px;padding:26px 36px 29px;box-shadow:0 25px 100px #0c032c99,0 0 40px #bb42e024;position:relative;overflow:hidden}.ticket:before{content:'★  ·  ✦  ·  ★  ·  ✦';position:absolute;right:-42px;top:75px;transform:rotate(57deg);font-size:15px;letter-spacing:12px;color:#8edfff35;pointer-events:none}.ticket:after{content:'';position:absolute;height:5px;bottom:0;left:0;right:0;background:linear-gradient(90deg,#ff8539,#ee419c,#a56be8,#56cafa,#5bd49b)}.ticket .eyebrow{color:#86dfff;font-size:8px;letter-spacing:2px}.welcomeMark{display:block;width:100%;height:auto;margin:6px 0 0}.ticket h2{font-family:Georgia,serif;font-size:34px;line-height:1.13;letter-spacing:-.7px;font-weight:normal;margin:6px 0 12px;color:#fff}.ticket p{font-size:13px;color:#c8d8ff;margin:0}.ticketRule{border-top:1px dashed #e5c2667a;margin:20px 0}.instructions{display:flex;gap:35px;margin-bottom:20px;color:#9adfff}.instructions span{font-size:11px;line-height:1.8}.instructions b{display:block;font-size:9px;letter-spacing:1px;color:#ffdb68}.ticket button{border:1px solid #ffdb70;border-radius:7px;width:100%;padding:16px 19px;background:linear-gradient(100deg,#d3328c,#a333a8);color:#fff;font-size:11px;letter-spacing:2px;font-weight:bold;text-align:left;box-shadow:0 4px 20px #dc379a30}.ticket button:hover{background:linear-gradient(100deg,#ef4298,#bd42c0)}.ticket button span{float:right;font-size:20px;line-height:12px}.ticket small{display:block;margin-top:17px;font-size:8px;line-height:1.7;letter-spacing:.6px;color:#9db4e3}#loading{position:absolute;inset:0;z-index:9;background:#201447;display:grid;place-items:center;font-family:Georgia,serif;font-size:28px;color:#ffdb68}#joystick{position:absolute;left:30px;bottom:75px;width:118px;height:118px;border:2px solid #ffd053b0;border-radius:50%;background:#201248a3;touch-action:none;display:block;box-shadow:0 4px 20px #11092c44,inset 0 0 20px #7352b140}#stick{position:absolute;left:35px;top:35px;width:44px;height:44px;border-radius:50%;background:radial-gradient(circle at 35% 30%,#8be0ff,#467cde);border:2px solid #fff;box-shadow:0 4px 14px #080a3155;pointer-events:none}.touchHint{display:block;position:absolute;left:77px;bottom:52px;font-size:8px;letter-spacing:2px;color:#ffdb68;text-shadow:0 1px 5px #10002e}@media(pointer:coarse){.walkhint span{display:none}}@media(max-width:700px){header{height:74px;padding:0 15px;gap:15px}.brand span,.edition,.version{display:none}.brand{font-size:23px}.title img{width:174px;height:59px}.location{left:12px;top:80px;padding:10px 13px}.location h1{font-size:21px}.location p{font-size:10px;max-width:210px}.tools{top:auto;bottom:18px;right:16px;gap:4px}.tools button{height:36px;padding:0 9px;min-width:33px;font-size:12px}.tools kbd,.bottom{display:none}#mini{width:125px;height:88px;right:18px;bottom:75px}#mapPanel{inset:3%;padding:16px}.ticket{padding:23px 26px;max-height:94dvh;overflow:auto}.ticket h2{font-size:31px}.welcomeMark{max-height:130px}.mapHead h2{font-size:22px}#toast{bottom:225px;font-size:10px;width:max-content;max-width:85%;text-align:center}}@media(max-height:700px){.welcomeMark{max-height:105px}.ticket{padding:18px 28px}.ticket h2{font-size:28px}.ticketRule{margin:13px 0}.ticket small{margin-top:10px}}

.title img{object-fit:contain;width:220px;height:75px}.welcomeMark{object-fit:contain;margin:21px 0 8px;filter:drop-shadow(0 4px 8px #09002055)}.walkabout-label{font-size:9px;color:#95ddff;letter-spacing:7px;text-align:center;margin:10px 0 22px}@media(max-width:700px){.title img{width:174px;height:65px}.welcomeMark{margin-top:16px}}

.title img,.welcomeMark{filter:drop-shadow(.6px 0 0 #fff9) drop-shadow(-.6px 0 0 #fff9) drop-shadow(0 .6px 0 #fff9) drop-shadow(0 -.6px 0 #fff9) drop-shadow(0 3px 7px #0b082e80)}.welcomeMark{margin-top:24px}.tools #musicBtn{color:#ffdd73;min-width:83px}#musicBtn[aria-pressed="false"]{color:#bcb4da}@media(max-width:700px){.tools{gap:3px;right:10px}.tools button{padding:0 7px;min-width:30px}.tools #musicBtn{min-width:67px}}
.title img,.welcomeMark{filter:drop-shadow(0 0 1px #ffffffd9) drop-shadow(0 3px 7px #0b082e80)}
