.shrine-map{height:calc(100dvh - 3.5rem);min-height:520px;color:var(--mist);--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--ink:#06111e;--mist:#dcecf2;--muted:#8ea5b2;--glass:#07121fad;--line:#cde8ef24;background:#050d18;font-family:system-ui,-apple-system,PingFang SC,Microsoft YaHei,Noto Sans SC,Noto Sans CJK SC,WenQuanYi Micro Hei,Source Han Sans SC,sans-serif;position:relative;overflow:hidden}.shrine-map *{box-sizing:border-box}#map-bg-mask{mask-type:alpha}.shrine-map button{font:inherit}#stage{isolation:isolate;-webkit-user-select:none;user-select:none;touch-action:none;-webkit-touch-callout:none;background:#050d18;width:100%;height:100%;position:relative;overflow:hidden}#stage:after{content:"";z-index:20;pointer-events:none;background:radial-gradient(#0000 61%,#00050c47 100%);position:absolute;inset:0}@property --opening-gap{syntax:"<percentage>";inherits:false;initial-value:-18%}#opening-clouds{z-index:100;pointer-events:none;background:0 0;position:absolute;inset:0;overflow:hidden}.opening-cloud-veil{-webkit-mask-image:radial-gradient(ellipse 90% 98% at center, transparent var(--opening-gap), #000 calc(var(--opening-gap) + 18%));mask-image:radial-gradient(ellipse 90% 98% at center, transparent var(--opening-gap), #000 calc(var(--opening-gap) + 18%));will-change:mask-image;z-index:1;background:#0d1925;position:absolute;inset:0}.opening-cloud-veil:before{content:"";background-image:var(--shrine-cloud-reveal,url(/shrine/assets/UiMapCloud_Reveal.png));opacity:.14;background-repeat:repeat;background-size:16vmin;position:absolute;inset:0}.opening-cloud-glow{opacity:0;z-index:3;background:radial-gradient(#bcdede1f,#42626f06 42%,#0000 72%);border-radius:50%;width:20vmin;height:44vmin;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)scale(.25)}.map-ready #opening-clouds{animation:3.45s ease-out forwards opening-clouds-dismiss}.map-ready .opening-cloud-veil{animation:3.05s cubic-bezier(.28,.02,.17,1) forwards opening-veil-clear}.map-ready .opening-cloud-glow{animation:1.6s ease-out forwards opening-cloud-glow}.map-ready #world{animation:2.75s ease-out both opening-map-reveal}.intro-abort #opening-clouds{display:none}@keyframes opening-veil-clear{0%,11%{--opening-gap:-18%}46%{--opening-gap:19%}to{--opening-gap:135%}}@keyframes opening-cloud-glow{0%,8%{opacity:0;transform:translate(-50%,-50%)scale(.22)}34%{opacity:.55}to{opacity:0;transform:translate(-50%,-50%)scale(2.5)}}@keyframes opening-clouds-dismiss{0%,88%{opacity:1;visibility:visible}to{opacity:0;visibility:hidden}}@keyframes opening-map-reveal{0%{opacity:.08;filter:blur(3px)brightness(.72)}42%{opacity:.38;filter:blur(1.2px)brightness(.86)}to{opacity:1;filter:none}}#background-canvas{z-index:0;opacity:0;pointer-events:none;image-rendering:auto;width:100%;height:100%;transition:opacity 1.2s;position:absolute;top:0;left:0}#background-canvas.ready{opacity:1}.shrine-map h1{letter-spacing:.14em;text-shadow:0 0 32px #c4ecf142;margin:0;font-family:Noto Serif SC,Songti SC,serif;font-size:clamp(28px,3.2vw,48px);font-weight:400}.subtitle{color:var(--muted);letter-spacing:.12em;margin:9px 0 0;font-size:12px}#world{z-index:5;transform-origin:50%;will-change:transform;cursor:grab;position:absolute;top:50%;left:50%}#world.dragging{cursor:grabbing}#map-canvas,#fog-canvas{image-rendering:auto;width:100%;height:100%;position:absolute;top:0;left:0}#map-canvas{z-index:1}#fog-canvas{z-index:3;opacity:0;pointer-events:none;transition:opacity .28s}#world.intro-fog-clearing #fog-canvas{transition:opacity 2.3s cubic-bezier(.7,0,.3,1)}.cloud-fade-piece{z-index:2;pointer-events:none;opacity:1;image-rendering:auto;will-change:opacity;position:absolute}#path-layer,#marker-layer,#hit-layer{width:100%;height:100%;position:absolute;inset:0}#map-canvas{opacity:0;transition:opacity 1.2s}#map-canvas.ready,#world.show-fog #fog-canvas.ready{opacity:1}#world.hide-background #background-canvas,#world.hide-map #map-canvas,#world.hide-map .cloud-fade-piece,#world.hide-paths #path-layer,#world.hide-stars .world-spirit,#world.hide-player #player-marker{visibility:hidden;opacity:0!important}#path-layer{z-index:4;pointer-events:none;opacity:.66;overflow:visible}#world.route-pending .map-path-node,#world.route-pending .world-spirit{opacity:0}#world.route-pending .map-path-node.route-revealed,#world.route-pending .world-spirit.route-revealed{opacity:1}.map-path-node{fill:#e2f2f5d1;filter:url(#pathGlow);transition:opacity .22s ease-out}#marker-layer{z-index:5;pointer-events:none;overflow:visible}.map-status-marker{width:var(--marker-size,2%);aspect-ratio:1;opacity:0;image-rendering:auto;transition:opacity .24s,transform .38s cubic-bezier(.2,.8,.2,1);position:absolute;transform:translate(-50%,-50%)scale(.72)}.map-status-marker.visible{opacity:1;transform:translate(-50%,-50%)scale(1)}.map-status-marker img{object-fit:contain;width:100%;height:100%;position:absolute;inset:0}.world-spirit.visible{opacity:1;animation:spirit-float var(--marker-duration,3.8s) ease-in-out infinite alternate;animation-delay:var(--marker-delay,0s)}.spirit-marker .marker-star{opacity:1;filter:sepia()saturate(3.1)hue-rotate(350deg)brightness(1.18)drop-shadow(0 0 4px #ffe893);width:184%;height:184%;animation:2.25s ease-in-out infinite alternate marker-breathe;animation-delay:var(--marker-delay,0s);inset:-42%}.player-marker .marker-player-shadow{opacity:.44;filter:blur(.25px)drop-shadow(0 0 4px #dcf7ffe6)}.player-marker .marker-player{filter:drop-shadow(0 0 3px #dcf7fff2)}@keyframes marker-breathe{0%{transform:scale(.86)}to{transform:scale(1.08)}}@keyframes spirit-float{0%{transform:translate(-50%,-50%)translate(-.45px,.9px)scale(.96)}45%{transform:translate(-50%,-50%)translate(.3px,-.45px)scale(1.015)}to{transform:translate(-50%,-50%)translate(.65px,-1.15px)scale(.985)}}@media (prefers-reduced-motion:reduce){.world-spirit.visible,.spirit-marker .marker-star{animation:none}#opening-clouds{display:none}.map-ready #world{animation:none}}#hit-layer{z-index:6;pointer-events:none}.landmark-hit{width:max(24px, var(--hit-size));aspect-ratio:1;pointer-events:auto;cursor:pointer;background:0 0;border:0;border-radius:50%;padding:0;position:absolute;transform:translate(-50%,-50%)}.landmark-hit:focus-visible{outline-offset:5px;outline:1px solid #fff}.layer-options{border-top:1px solid var(--line);gap:7px;padding:1px 11px 11px;display:grid}.layer-options label{cursor:pointer;align-items:center;gap:8px;min-height:22px;display:flex}.layer-options input{accent-color:#a8d8df;width:14px;height:14px;margin:0}#zoom-label{color:#78939e;text-align:center;letter-spacing:.08em;min-width:48px;font-size:9px}#error{z-index:80;color:#f3c5c8;background:#1b1117;border:1px solid #ff828259;max-width:440px;padding:18px;font-size:13px;position:absolute;inset:50% auto auto 50%;transform:translate(-50%,-50%)}#error .error-message{margin:0}#error .error-details{margin-top:10px;font-size:12px}#error .error-details summary{cursor:pointer;color:#f3c5c8b8}#error .error-details pre{white-space:pre-wrap;word-break:break-all;background:#00000059;border-radius:6px;margin:8px 0 0;padding:8px;font-size:12px;overflow-x:auto}@media (prefers-reduced-motion:reduce){*,:before,:after{transition-duration:.001ms!important;animation-duration:.001ms!important}}.shrine-map .map-credit{z-index:30;max-width:min(96ch,100% - 32px);color:color-mix(in srgb, var(--mist) 72%, transparent);letter-spacing:.02em;text-shadow:0 1px 2px #000000a6,0 0 12px #7ebad059;pointer-events:none;margin:0;font-size:12px;line-height:1.6;position:absolute;bottom:16px;left:16px}.shrine-preview-banner{z-index:200;height:var(--shrine-preview-banner-height,33px);color:#ffe08a;font-size:12px;line-height:var(--shrine-preview-banner-height,33px);letter-spacing:.12em;text-align:center;white-space:nowrap;text-overflow:ellipsis;text-shadow:0 1px 2px #000000a6;pointer-events:none;background:#040c16db;border-bottom:1px solid #ffe08a47;margin:0;padding:0 12px;position:fixed;top:0;left:0;right:0;overflow:hidden}.admin-preview-shell .shrine-map{height:100dvh}.admin-preview-shell .shrine-preview-banner{z-index:10}
