.story-gates .gate{--gate-color:#a0e1ff;opacity:1;filter:none;animation:.65s backwards emblem-enter;transform:none}.story-gates .gate-1{--gate-color:#f3e47a;animation-delay:90ms}.story-gates .gate-2{--gate-color:#ff7888;animation-delay:.18s}.gate-emblem{width:116px;height:116px;color:var(--gate-color);isolation:isolate;place-items:center;margin:4px 0 10px;transition:transform .35s;display:grid;position:relative}.gate-glyph{z-index:1;width:112px;height:112px;display:block;position:relative}.gate-glyph:before,.gate-halo:before{content:"";background:var(--gate-color);position:absolute;inset:0;-webkit-mask:url(/phigros-mark-clean.png) 50%/contain no-repeat;mask:url(/phigros-mark-clean.png) 50%/contain no-repeat}.gate-glyph:before{z-index:1}.gate-halo{z-index:0;filter:blur(7px);opacity:.22;transition:opacity .35s;position:absolute;inset:0}.gate-diamond{opacity:.26;border:1px solid;width:66px;height:66px;transition:opacity .35s;animation:12s linear infinite paused diamond-orbit;position:absolute;transform:rotate(45deg)}:is(.gate:hover .gate-emblem,.gate:focus-visible .gate-emblem,.gate.active .gate-emblem){transform:scale(1.14)}:is(.gate:hover .gate-halo,.gate:focus-visible .gate-halo,.gate.active .gate-halo){opacity:.8}:is(.gate:hover .gate-diamond,.gate:focus-visible .gate-diamond,.gate.active .gate-diamond){opacity:.65;animation-play-state:running}.story-gates .gate.active strong{color:var(--gate-color)}@keyframes diamond-orbit{0%{transform:rotate(45deg)}to{transform:rotate(405deg)}}@keyframes emblem-enter{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}@media (max-width:520px){.gate-emblem,.gate-glyph{width:94px;height:94px}.gate-diamond{width:56px;height:56px}}@media (prefers-reduced-motion:reduce){.story-gates .gate,.gate-diamond{animation:none}.gate-emblem,.gate-halo,.gate-diamond{transition:none}:is(.gate:hover .gate-emblem,.gate:focus-visible .gate-emblem,.gate.active .gate-emblem){transform:none}}.story-gates{grid-template-columns:repeat(3,minmax(0,150px));justify-content:center;gap:72px;display:grid}.story-gates .gate{min-width:0}@media (max-width:850px){.story-gates{gap:24px}}@media (max-width:520px){.story-gates{gap:4px}.story-gates .gate{min-width:0}.story-gates .gate strong{letter-spacing:0;font-size:11px}.story-gates .gate small{letter-spacing:.2px;font-size:5px}.gate-emblem,.gate-glyph{width:78px;height:78px}.gate-diamond{width:48px;height:48px}}.world-nav{grid-template-columns:1fr 1fr}.world-nav a{text-align:left;border-right:1px solid #8cbed722;padding:23px 28px;text-decoration:none;transition:background .2s;position:relative}.world-nav a:hover{background:#1b3042}.world-nav a:focus-visible{outline-offset:-4px;outline:2px solid #9acfe6}.story-gates{grid-template-columns:repeat(4,minmax(0,150px))}.story-gates .gate-timeline{--gate-color:#fff;animation-delay:45ms;position:relative}.gate-timeline.active:after{content:"";background:#fff;border-radius:50%;width:7px;height:7px;animation:.24s ease-out both timeline-spark;position:absolute;bottom:-27px;box-shadow:0 0 18px #fff}@keyframes timeline-spark{0%{opacity:0;transform:scale(.3)}to{opacity:1;transform:scale(1)}}@media (max-width:850px){.world-nav a{padding:20px}}@media (max-width:520px){.world-nav a{padding:17px 12px}.gate-timeline.active:after{bottom:-27px}}@media (prefers-reduced-motion:reduce){.gate-timeline.active:after{animation:none}}.gate-timeline.active:after{display:none}:root[data-character-open=true] .gate-diamond{animation-play-state:paused}.chapter-stage-pending{min-height:180px}.chapter-stage-pending[data-stage=nodes]{min-height:430px}.chapter-stage-pending[data-stage=story]{min-height:358px}.chapter-stage-pending[data-stage=archives]{min-height:350px}.chapter-stage-message{color:#91a9bc;padding:34px 22px;font-size:14px;line-height:1.8}.chapter-stage-message button{color:#a0d8ef;margin-top:12px;display:block}.chapter-stage-message.is-error{color:#e2b2b8}@keyframes chapter-appear{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}@media (prefers-reduced-motion:reduce){.section-reveal,.chapter-reveal{animation:none}}.section-reveal,.chapter-reveal{animation:.34s ease-out both chapter-fade}@keyframes chapter-fade{0%{opacity:0}to{opacity:1}}.atlas-hub.has-chapter,.atlas-hub.has-chapter *{overflow-anchor:none}.chapter-diagram{color:#c8dce9;background:#0b141e}.diagram-toolbar{background:#101d28;border-bottom:1px solid #8fbcd51a;align-items:center;gap:16px;padding:13px 22px;display:flex}.diagram-toolbar label{color:#63869e;flex:1;align-items:center;gap:9px;max-width:360px;display:flex}.diagram-toolbar input{color:#c4dbe9;background:0 0;outline:none;width:100%;min-width:0;font-size:12px}.diagram-toolbar input::placeholder{color:#617c90}.diagram-toolbar button{white-space:nowrap;color:#90b4ca;align-items:center;gap:6px;padding:6px 0;font-size:11px;display:flex}.diagram-count{color:#627f92;white-space:nowrap;margin-left:auto;font-size:10px}.diagram-viewport{overscroll-behavior:contain;scrollbar-width:thin;scrollbar-color:#344e60 transparent;height:610px;overflow:auto}.diagram-stage{isolation:isolate;background-image:radial-gradient(at 50% 0,#2655711d,#0000 50%),radial-gradient(#87b9d00b .7px,#0000 .7px);background-size:auto,24px 24px;position:relative}.diagram-lines{pointer-events:none;position:absolute;inset:0}.diagram-lines path{fill:none;stroke:#658fa746;stroke-width:1.2px;vector-effect:non-scaling-stroke;transition:stroke .18s}.diagram-lines path.branch-1{stroke:#9d86b541}.diagram-lines path.is-emphasized{stroke:#a0c9df;stroke-width:1.6px}.diagram-node{z-index:2;background:linear-gradient(120deg,#132432,#101c27);border:1px solid #78a9c32b;border-radius:9px;transition:border-color .18s,background .18s,opacity .18s;position:absolute;box-shadow:0 7px 20px #00000020}.diagram-node.is-origin{background:linear-gradient(120deg,#24475d,#183044);border-color:#99cce466;box-shadow:0 8px 36px #06121a80,0 0 32px #71b3d012}.diagram-node.is-branch{background:linear-gradient(120deg,#183444,#142937);border-color:#8abed34c}.diagram-node.branch-1.is-branch{background:linear-gradient(120deg,#262b40,#192637);border-color:#a994c04d}.diagram-node.is-active,.diagram-node.is-match{background:#1b3547;border-color:#b0d9ee9c;box-shadow:0 0 0 1px #8db8d024,0 8px 25px #0004}.diagram-node.is-muted{opacity:.44}.diagram-node-main{text-align:left;align-items:center;gap:14px;width:100%;min-width:0;height:100%;padding:14px 18px;display:flex}.diagram-node-main>span:last-child{flex:1;min-width:0}.diagram-node-main small{letter-spacing:1px;color:#63869e;margin-bottom:6px;font-size:9px;display:block}.diagram-node-main strong{-webkit-line-clamp:2;overflow-wrap:anywhere;color:#c5dae8;-webkit-box-orient:vertical;font-size:13px;font-weight:400;line-height:1.6;display:-webkit-box;overflow:hidden}.diagram-node.is-origin strong{letter-spacing:1.2px;color:#e1f0f8;font-size:18px;font-weight:500}.diagram-node.is-origin small{color:#8eb3ca;letter-spacing:2px}.diagram-node.is-branch strong{color:#deedf6;font-size:14px}.diagram-node-dot{background:#79afd033;border:1px solid #95c8df;border-radius:50%;flex:none;width:6px;height:6px;box-shadow:0 0 8px #84bfd026}.diagram-node.branch-1 .diagram-node-dot{background:#b8a8d133;border-color:#b8a8d1}.diagram-origin-symbol{color:#a6d6eb;text-shadow:0 0 18px #80bdda40;flex:none;font-size:38px;line-height:1}.diagram-collapse{color:#799db6;background:#152b3b;border:1px solid #8fbcd51a;border-radius:5px;place-items:center;width:24px;height:24px;display:grid;position:absolute;top:6px;right:7px}.diagram-node-main:has(+.diagram-collapse){padding-right:37px}.diagram-collapse:hover{color:#d2e8f5;background:#244356}.diagram-footer{color:#617f94;background:#0e1a25;border-top:1px solid #8fbcd518;justify-content:space-between;gap:12px;padding:12px 22px;font-size:10px;display:flex}.map-block.is-expanded .diagram-viewport{height:calc(100dvh - 220px)}@media (max-width:700px){.diagram-toolbar{flex-wrap:wrap;gap:11px;padding:11px 14px}.diagram-toolbar label{flex-basis:calc(100% - 80px);max-width:none}.diagram-toolbar>button{font-size:10px}.diagram-viewport{height:560px}.diagram-footer{padding:12px 14px;font-size:9px}.diagram-node-main{gap:10px;padding:12px 14px}.diagram-node-main strong{font-size:12px}.diagram-node.is-origin strong{font-size:16px}.map-title-line .map-hint-inline{display:none}}@media (prefers-reduced-motion:reduce){.diagram-node,.diagram-lines path{transition:none}}
