.rogue-loader{position:fixed;inset:0;z-index:1000;display:grid;place-items:center;overflow:hidden;background:#030603;color:#f0f3eb;isolation:isolate;min-height:100dvh}
.rogue-loader[hidden]{display:none}
.page-loading{overflow:hidden}
.rogue-loader::before{content:"";position:absolute;inset:0;background:radial-gradient(ellipse at 50% 44%,#7baa141b,transparent 52%);pointer-events:none}
.loader-stage{position:relative;width:min(420px,calc(100vw - 48px));text-align:center;padding:30px 26px}
.loader-portrait{position:relative;width:220px;height:220px;margin:0 auto 18px}
.loader-portrait img{display:block;width:100%;height:100%;object-fit:contain;image-rendering:pixelated;mix-blend-mode:lighten}
.loader-portrait::before,.loader-portrait::after{content:"";position:absolute;width:23px;height:23px;border-color:#a6ff00;border-style:solid;pointer-events:none}
.loader-portrait::before{left:0;top:10px;border-width:2px 0 0 2px}
.loader-portrait::after{right:0;bottom:10px;border-width:0 2px 2px 0}
.loader-crosshair{position:absolute;inset:10px 0;pointer-events:none}
.loader-crosshair::before,.loader-crosshair::after{content:"";position:absolute;width:23px;height:23px;border-style:solid;border-color:#4d712c}
.loader-crosshair::before{right:0;top:0;border-width:2px 2px 0 0}
.loader-crosshair::after{left:0;bottom:0;border-width:0 0 2px 2px}
.loader-scan{position:absolute;left:10px;right:10px;top:15%;height:2px;background:#c7ff71;box-shadow:0 0 16px #a6ff0070;animation:loader-scan 1.9s cubic-bezier(.45,0,.55,1) infinite}
.loader-scan::after{content:"";position:absolute;left:0;right:0;top:2px;height:25px;background:linear-gradient(#a6ff0018,transparent)}
.loader-wordmark{font:52px/1.15 var(--display);letter-spacing:1px;color:#a6ff00;margin:0}
.loader-tagline{font:11px/1.7 var(--mono);color:#9da98e;letter-spacing:1px;margin:12px 0 0}
.loader-pixels{display:flex;align-items:center;justify-content:center;gap:6px;height:24px;margin:27px auto 13px}
.loader-pixels i{display:block;width:26px;height:4px;background:#a6ff00;opacity:.15;animation:loader-pixel 1.6s ease-in-out infinite}
.loader-pixels i:nth-child(2){animation-delay:.15s}.loader-pixels i:nth-child(3){animation-delay:.3s}.loader-pixels i:nth-child(4){animation-delay:.45s}.loader-pixels i:nth-child(5){animation-delay:.6s}
.loader-status{font:13px/1.7 var(--font);min-height:23px;color:#bcc9ae;margin:0}
.loader-skip{position:absolute;bottom:max(28px,env(safe-area-inset-bottom));left:50%;transform:translateX(-50%);color:#a3ad9a;border:1px solid #30392a;background:transparent;border-radius:4px;padding:10px 16px;min-height:42px;font:12px/1.5 var(--font);cursor:pointer}
.loader-skip:hover{color:#f0f3eb;border-color:#698d47;background:#10180b}
.loader-skip:focus-visible{outline:2px solid #a6ff00;outline-offset:4px}
.loader-edge{position:absolute;height:1px;width:min(220px,22vw);background:linear-gradient(90deg,transparent,#4b7027,transparent);top:50%;pointer-events:none}
.loader-edge-left{left:5%}.loader-edge-right{right:5%}
.loader-edge::after{content:"";position:absolute;width:5px;height:5px;background:#a6ff00;top:-2px;left:0;animation:loader-trace 2.2s linear infinite}
.loader-edge-right::after{animation-delay:-1.1s}
.rogue-loader[data-phase=cover]{animation:loader-cover 120ms cubic-bezier(.32,.72,0,1) both}
.rogue-loader[data-phase=exit]{animation:loader-exit 140ms cubic-bezier(.32,.72,0,1) both;pointer-events:none}
@keyframes loader-scan{0%,100%{transform:translateY(0);opacity:.45}50%{transform:translateY(150px);opacity:1}}
@keyframes loader-pixel{0%,100%{opacity:.15;transform:scaleX(.75)}45%{opacity:1;transform:scaleX(1)}}
@keyframes loader-trace{0%{transform:translateX(0);opacity:0}15%,85%{opacity:.8}100%{transform:translateX(180px);opacity:0}}
@keyframes loader-cover{from{clip-path:inset(0 0 100% 0)}to{clip-path:inset(0)}}
@keyframes loader-exit{from{clip-path:inset(0)}to{clip-path:inset(100% 0 0 0)}}
@media(max-width:700px){.loader-edge{display:none}.loader-portrait{width:190px;height:190px}.loader-wordmark{font-size:44px}.loader-tagline{font-size:10px}.loader-stage{padding:22px 16px}}
@media(max-height:620px){.loader-portrait{width:140px;height:140px;margin-bottom:10px}.loader-wordmark{font-size:36px}.loader-pixels{margin-top:15px}.loader-tagline{margin-top:8px}.loader-stage{padding:8px 16px}.loader-skip{bottom:12px}.loader-scan{animation-name:loader-scan-short}}
@keyframes loader-scan-short{0%,100%{transform:translateY(0);opacity:.45}50%{transform:translateY(85px);opacity:1}}
@media(max-height:450px){.loader-portrait{width:100px;height:100px;margin-bottom:4px}.loader-wordmark{font-size:30px}.loader-tagline{display:none}.loader-pixels{margin:10px auto 5px;height:12px}.loader-stage{padding:0 10px;transform:translateY(-15px)}}
html[data-motion="reduced"] :is(.rogue-loader,.rogue-loader *){animation:none!important}html[data-motion="reduced"] :is(.loader-scan,.loader-edge){display:none}html[data-motion="reduced"] .loader-pixels i{opacity:.65}
