.errorpage-layer{z-index:60;background:var(--background);place-items:center;padding:24px;display:grid;position:fixed;inset:0;overflow:hidden}.errorpage-bg{pointer-events:none;position:absolute;inset:0;overflow:hidden}.errorpage-glow{filter:blur(80px);border-radius:50%;position:absolute}.errorpage-glow-1{background:radial-gradient(circle,#818cf847,#0000 70%);width:420px;height:420px;top:-120px;right:-80px}.errorpage-glow-2{background:radial-gradient(circle,#a78bfa38,#0000 70%);width:360px;height:360px;bottom:-100px;left:-60px}.errorpage-layer[data-variant=server] .errorpage-glow-1{background:radial-gradient(circle,#f8717142,#0000 70%)}.errorpage-layer[data-variant=server] .errorpage-glow-2{background:radial-gradient(circle,#fb923c33,#0000 70%)}.errorpage-layer[data-variant=maintenance] .errorpage-glow-1{background:radial-gradient(circle,#fbbf2442,#0000 70%)}.errorpage-layer[data-variant=maintenance] .errorpage-glow-2{background:radial-gradient(circle,#fde04733,#0000 70%)}.errorpage-brand{z-index:1;border-radius:6px;display:flex;position:absolute;top:24px;left:24px}.errorpage-brand:focus-visible{outline:2px solid var(--accent);outline-offset:4px}.errorpage-brand-lockup{width:auto;height:40px;display:block}.errorpage{z-index:1;text-align:center;flex-direction:column;align-items:center;gap:12px;max-width:560px;display:flex;position:relative}.errorpage-art-wrap{width:132px;height:132px;color:var(--accent);margin-bottom:4px;position:relative}.errorpage-layer[data-variant=server] .errorpage-art-wrap{color:var(--danger)}.errorpage-layer[data-variant=maintenance] .errorpage-art-wrap{color:var(--gw-warn-border)}.errorpage-art{width:132px;height:132px;display:block}.errorpage-art .ep-stroke{fill:none;stroke:currentColor;stroke-width:2.5px;stroke-linecap:round;stroke-linejoin:round}.errorpage-art .ep-fill{fill:currentColor}.errorpage-art .ep-soft{fill:none;stroke:currentColor;stroke-width:2.5px;stroke-linecap:round;stroke-linejoin:round;opacity:.28}.errorpage-art .ep-ring{fill:none;stroke:currentColor;stroke-width:2.5px;opacity:.18}.errorpage-layer[data-variant=maintenance] .ep-a-sweep-arc{stroke-width:3.5px;opacity:.5}.errorpage-title{font-size:var(--text-xl);letter-spacing:-.01em;color:var(--foreground);margin:0;font-weight:700}.errorpage-body{max-width:54ch;font-size:var(--text-md);color:var(--gw-text-secondary);margin:0;line-height:1.5}.errorpage-retry{min-height:20px;font-size:var(--text-sm);color:var(--gw-text-secondary);justify-content:center;align-items:center;gap:8px;display:flex}.errorpage-retry-dot{opacity:.55;background:currentColor;border-radius:50%;flex:none;width:7px;height:7px}.errorpage-actions{flex-wrap:wrap;justify-content:center;align-items:center;gap:8px;margin-top:8px;display:flex}@media (prefers-reduced-motion:no-preference){.errorpage-art-wrap{animation:.45s ease-out backwards gw-fade-up}.errorpage-title{animation:.4s ease-out .1s backwards gw-fade-up}.errorpage-body{animation:.4s ease-out .18s backwards gw-fade-up}.errorpage-retry{animation:.4s ease-out .28s backwards gw-fade-up}.errorpage-actions{animation:.4s ease-out .32s backwards gw-fade-up}.errorpage-glow-1{animation:22s ease-in-out infinite alternate ep-glow-drift-1}.errorpage-glow-2{animation:26s ease-in-out infinite alternate ep-glow-drift-2}.ep-a-hunt{transform-origin:66px 66px;animation:4.5s ease-in-out infinite ep-hunt}.ep-a-pulse{animation:1.8s ease-in-out infinite ep-pulse}.ep-a-shudder{animation:1.8s ease-in-out infinite ep-shudder}.ep-a-blink{animation:2.6s ease-in-out infinite ep-blink}.ep-a-blink-2{animation:2.6s ease-in-out 1.3s infinite ep-blink}.ep-a-sweep-arc{transform-origin:66px 66px;animation:4.5s linear infinite ep-spin}.ep-a-sweep-hand{transform-origin:66px 66px;animation:3s linear infinite ep-spin}.ep-a-sweep{transform-origin:66px 66px;animation:6s linear infinite ep-spin}}@keyframes ep-glow-drift-1{to{transform:translate(-30px,40px)scale(1.12)}}@keyframes ep-glow-drift-2{to{transform:translate(40px,-30px)scale(1.1)}}@keyframes ep-hunt{0%{transform:rotate(-32deg)}35%{transform:rotate(26deg)}50%{transform:rotate(14deg)}70%{transform:rotate(38deg)}to{transform:rotate(-32deg)}}@keyframes ep-pulse{0%,to{opacity:.25}50%{opacity:1}}@keyframes ep-shudder{0%,62%,to{transform:translate(0)}66%{transform:translate(-1.5px)}70%{transform:translate(1.5px)}74%{transform:translate(-1px)}78%{transform:translate(0)}}@keyframes ep-blink{0%,to{opacity:1}50%{opacity:.35}}@keyframes ep-spin{to{transform:rotate(360deg)}}
