.routeveil{position:fixed;inset:0;z-index:1000;background:var(--bg);display:none;flex-direction:column;align-items:center;justify-content:center;gap:20px}html[data-veil="1"] .routeveil{display:flex}.routeveil.in{animation:veilIn .2s var(--ease) both}.routeveil.out{animation:veilOut .35s var(--ease) both}@keyframes veilIn{0%{opacity:0}}@keyframes veilOut{to{opacity:0}}.routeveil .vmark{width:96px;height:96px}.routeveil .vp{animation:veilPulse 2.1s var(--ease) infinite}@keyframes veilPulse{0%,to{opacity:.3}10%{opacity:1}}.routeveil .vwait{font-family:var(--mono);font-size:11px;letter-spacing:0;color:var(--muted)}.routeveil .vd{display:inline-block;animation:vdot 1.2s infinite}.routeveil .vd:nth-child(2){animation-delay:.15s}.routeveil .vd:nth-child(3){animation-delay:.3s}@keyframes vdot{0%,60%,to{opacity:.25}30%{opacity:1}}.pagebody.fadein{animation:pagein .35s var(--ease) both}@keyframes pagein{0%{opacity:0;transform:translateY(10px)}}@media (prefers-reduced-motion:reduce){.routeveil{display:none!important}.pagebody.fadein{animation:none}}