body:has(>#ops-boot){margin:0}body:has(>#ops-boot)>#app{visibility:hidden}#ops-boot{position:fixed;top:0;right:0;bottom:0;left:0;z-index:20000}.ops-loading{--loading-color: var(--accent, #7c5cff);box-sizing:border-box;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:14px;min-width:0;max-width:100%;padding:24px 12px;color:var(--muted, #a89bb8);text-align:center}.ops-loading--screen,.ops-loading--page{width:100%;height:100%;min-height:180px;padding:32px 20px;background:var(--bg, #1a1520)}.ops-loading--screen{min-height:100dvh}.ops-loading__brand{margin-bottom:12px;color:var(--ink, #f4efe6);font:10px/1.8 var(--pixel, "Press Start 2P", monospace);letter-spacing:.03em}.ops-loading__brand>span{color:color-mix(in srgb,var(--loading-color) 65%,white)}.ops-loading__track{box-sizing:border-box;position:relative;display:block;flex:0 0 auto;width:248px;max-width:100%;height:20px;padding:3px;border:1px solid var(--loading-color);background:var(--bg, #1a1520);box-shadow:2px 2px 0 var(--line, #3d3152)}.ops-loading__fill{display:block;height:100%;background:repeating-linear-gradient(to right,transparent 0 8px,var(--bg, #1a1520) 8px 10px),repeating-linear-gradient(to bottom,transparent 0 2px,var(--bg, #1a1520) 2px 3px),linear-gradient(to bottom,color-mix(in srgb,var(--loading-color) 55%,white),var(--loading-color));animation:ops-loading-fill 2.4s steps(24,end) infinite}.ops-loading__label{max-width:100%;overflow-wrap:anywhere;font:8px/1.6 var(--pixel, "Press Start 2P", monospace)}.ops-loading--inline{display:inline-flex;flex-direction:row;justify-content:flex-start;flex-wrap:wrap;gap:10px;padding:4px 0;vertical-align:middle;text-align:left}.ops-loading--inline .ops-loading__track{width:88px;height:16px}.ops-loading--inline .ops-loading__fill{animation-timing-function:steps(8,end)}.ops-loading--inline .ops-loading__label{font:12px/1.5 var(--ui, "IBM Plex Sans", system-ui, sans-serif)}@keyframes ops-loading-fill{0%{clip-path:inset(0 100% 0 0)}85%,to{clip-path:inset(0 0 0 0)}}@media(prefers-reduced-motion:reduce){.ops-loading__fill{animation:none;clip-path:inset(0 50% 0 0)}}@media(forced-colors:active){.ops-loading__track{border-color:CanvasText;box-shadow:none}.ops-loading__fill{background:Highlight;forced-color-adjust:none}}
