@font-face{font-family:QQ Display;src:url(/fonts/display-900.woff2)format("woff2");font-weight:900;font-display:swap}:root{--night:#05070f;--ink:#eef1f8;--mist:#a7b0c6;--faint:#6f7891;--gold:#f2c14e;--display:"QQ Display", "Noto Serif SC", "Source Han Serif SC", "Songti SC", serif;--sans:"PingFang SC", "Hiragino Sans GB", "Microsoft YaHei", "Noto Sans CJK SC", "Source Han Sans SC", system-ui, sans-serif;--shade:0 0 14px #05070ff2, 0 0 3px #05070fe6;--edge:max(20px, env(safe-area-inset-left));--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}*{box-sizing:border-box}html,body{background:var(--night);height:100%;color:var(--ink);font-family:var(--sans);-webkit-font-smoothing:antialiased;-webkit-tap-highlight-color:transparent;margin:0;font-size:16px;line-height:1.75;overflow:hidden}#stage{touch-action:none;width:100%;height:100%;display:block;position:fixed;inset:0}body[data-view=home] #stage{cursor:grab}body.is-dragging #stage{cursor:grabbing}#hud{pointer-events:none;opacity:0;transition:opacity .8s .3s;position:fixed;inset:0}body.is-ready #hud{opacity:1}a{color:inherit}:focus-visible{outline:1.5px solid var(--ink);outline-offset:4px}.bar{top:max(18px, env(safe-area-inset-top));left:var(--edge);right:var(--edge);align-items:baseline;gap:22px;display:flex;position:absolute}.mark{pointer-events:auto;font-family:var(--display);letter-spacing:.02em;text-shadow:var(--shade);font-size:19px;font-weight:900;text-decoration:none;position:relative}.mark:after{content:"";background:var(--ink);transform-origin:0;height:1px;transition:transform .45s cubic-bezier(.2,.7,.1,1);position:absolute;bottom:2px;left:0;right:0;transform:scaleX(0)}.mark:hover:after{transform:scaleX(1)}.trail ol{color:var(--mist);text-shadow:var(--shade);gap:.6em;margin:0;padding:0;font-size:14px;list-style:none;display:flex}.trail li+li:before{content:"/";color:var(--faint);margin-right:.6em}.trail a{pointer-events:auto;text-decoration:none;transition:color .2s}.trail a:hover,.trail [aria-current]{color:var(--ink)}.anchors{position:absolute;inset:0}.nation,.star{opacity:0;visibility:hidden;will-change:transform;border-radius:50%;text-decoration:none;transition:opacity .45s,visibility 0s linear .45s;position:absolute;top:0;left:0}.nation.is-on,.star.is-on{pointer-events:auto;opacity:1;visibility:visible;transition:opacity .6s .35s,visibility}.nation{width:calc(var(--r,40px) * 2);height:calc(var(--r,40px) * 2);margin:calc(var(--r,40px) * -1) 0 0 calc(var(--r,40px) * -1)}.nation-name{font-family:var(--display);letter-spacing:.12em;white-space:nowrap;text-shadow:var(--shade);opacity:var(--lit,1);font-size:22px;font-weight:900;line-height:1.2;transition:letter-spacing .5s cubic-bezier(.2,.7,.1,1);position:absolute;top:calc(100% + 4px);left:50%;transform:translate(-50%)}.nation-count{color:var(--mist);white-space:nowrap;text-shadow:var(--shade);opacity:0;font-size:12px;line-height:1.4;transition:opacity .3s;position:absolute;top:calc(100% + 36px);left:50%;transform:translate(-50%)}.nation:hover .nation-name,.nation:focus-visible .nation-name{letter-spacing:.32em}.nation:hover .nation-count,.nation:focus-visible .nation-count{opacity:var(--lit,1)}.nation:focus-visible{outline:none;box-shadow:0 0 0 1.5px #eef1f8b3}.star{width:48px;height:48px;margin:-24px 0 0 -24px}.star-name{color:var(--mist);white-space:nowrap;text-shadow:var(--shade);font-size:13px;line-height:1.4;transition:color .2s,transform .35s cubic-bezier(.2,.7,.1,1);position:absolute;top:calc(100% - 6px);left:50%;transform:translate(-50%)}.star:hover .star-name,.star:focus-visible .star-name{color:var(--ink);transform:translate(-50%)translateY(20px)}.star:focus-visible{outline:none;box-shadow:0 0 0 1.5px #eef1f8b3}.dossier{pointer-events:auto;width:min(30rem,38vw);position:absolute;top:50%;left:max(24px,6vw);transform:translateY(-50%)}.dossier[hidden]{display:none}.dossier[data-element=pyro]{--aura:#ff7a45}.dossier[data-element=hydro]{--aura:#4da6ff}.dossier[data-element=anemo]{--aura:#5ee3c4}.dossier[data-element=electro]{--aura:#b98aff}.dossier[data-element=dendro]{--aura:#8fd94a}.dossier[data-element=cryo]{--aura:#a3e8ff}.dossier[data-element=geo]{--aura:#f0b93a}.dossier[data-element=none]{--aura:var(--ink)}.dossier-name{font-family:var(--display);letter-spacing:.04em;white-space:nowrap;text-shadow:var(--shade);margin:0;font-size:116px;font-weight:900;line-height:1.15}.dossier-name:focus{outline:none}.dossier-title{font-family:var(--display);letter-spacing:.08em;color:var(--aura);text-shadow:var(--shade);margin:.2em 0 0;font-size:22px;font-weight:900;line-height:1.4}.dossier-latin{letter-spacing:.04em;color:var(--mist);margin:.3em 0 0;font-size:14px}.dossier-rarity{letter-spacing:.25em;color:var(--gold);margin:.6em 0 0;font-size:14px}.dossier-facts{grid-template-columns:repeat(auto-fill,minmax(7.5em,1fr));gap:14px 24px;margin:1.6em 0 1.4em;display:grid}.dossier-facts dt{color:var(--faint);font-size:12px;line-height:1.4}.dossier-facts dd{margin:2px 0 0;font-size:16px;line-height:1.5}.dossier-facts .is-element dd{color:var(--aura)}.dossier-text{text-wrap:pretty;max-width:26em;color:var(--mist);text-shadow:var(--shade);margin:0;font-size:15px;line-height:1.85}.hint{left:50%;bottom:max(26px, env(safe-area-inset-bottom));letter-spacing:.1em;color:var(--mist);white-space:nowrap;text-shadow:var(--shade);margin:0;font-size:13px;position:absolute;transform:translate(-50%)}body[data-view=character] .hint{display:none}@media (max-aspect-ratio:1){.dossier{width:auto;max-height:46%;padding:0 var(--edge) max(24px, env(safe-area-inset-bottom));scrollbar-width:none;inset:auto 0 0;overflow-y:auto;transform:none}.dossier-facts{grid-template-columns:repeat(3,1fr);gap:10px 16px;margin:1.1em 0 1em}.nation-name{font-size:18px}.star-name{font-size:12px}}body[data-view=fallback]{overflow:auto}body[data-view=fallback] #stage{display:none}body[data-view=fallback] #hud{pointer-events:auto;padding:80px var(--edge) 40px;position:static}body[data-view=fallback] .anchors{max-width:40rem;position:static}.fallback-note,.noscript{color:var(--mist)}.noscript{padding:24px var(--edge)}@media (prefers-reduced-motion:reduce){*,:before,:after{transition-duration:.01ms!important}}
