@keyframes av-drift-1{to{transform:translate(9vw,7vh) scale(1.16)}}@keyframes av-drift-2{to{transform:translate(-8vw,-6vh) scale(1.1)}}@keyframes av-grid-drift{to{background-position:var(--av-grid-pitch) var(--av-grid-pitch)}}@keyframes av-plat{0%{opacity:0;transform:translate(0,0)}22%{opacity:.46}68%{opacity:.32}to{opacity:0;transform:translate(var(--av-dx),var(--av-dy))}}@keyframes av-enter{to{opacity:1}}@keyframes av-scan{0%,to{left:-16%}50%{left:100%}}@keyframes av-perim{to{stroke-dashoffset:-1010}}@keyframes av-indet{0%{left:-36%}to{left:100%}}@keyframes av-perim-breathe{0%,to{opacity:.35}50%{opacity:.8}}.av-screen{position:fixed;inset:0;height:100dvh;overflow:hidden;z-index:900;background:linear-gradient(135deg,var(--auth-bg-gradient-start, #5a6ea9) 0%,var(--auth-bg-gradient-mid, #6a5085) 50%,var(--auth-bg-gradient-end, #7a5a95) 100%)}.av-screen[hidden]{display:none}.av-blob{position:absolute;width:clamp(280px,42vw,760px);aspect-ratio:1;border-radius:50%;filter:blur(clamp(60px,8vw,140px));opacity:.3;pointer-events:none}.av-blob--1{background:#8ea2ff;top:-14vw;left:-6vw;animation:av-drift-1 19s ease-in-out infinite alternate}.av-blob--2{background:#ffb0e6;bottom:-16vw;right:-8vw;animation:av-drift-2 24s ease-in-out infinite alternate}.av-grid{--av-grid-pitch:clamp(36px, 3.6vw, 64px);position:absolute;inset:-8vw;background-image:linear-gradient(rgba(255,255,255,.06) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.06) 1px,transparent 1px);background-size:var(--av-grid-pitch) var(--av-grid-pitch);-webkit-mask-image:radial-gradient(ellipse at 50% 48%,#000 20%,transparent 74%);mask-image:radial-gradient(ellipse at 50% 48%,#000 20%,transparent 74%);animation:av-grid-drift 26s linear infinite}.av-vignette{position:absolute;inset:0;background:radial-gradient(ellipse at 50% 45%,transparent 40%,rgba(18,12,38,.42) 100%)}.av-plat{position:absolute;font-family:ui-monospace,"Cascadia Mono",Consolas,monospace;font-size:clamp(10px,.74vw,13px);letter-spacing:.18em;color:var(--auth-text-primary, #f8f9fa);opacity:0;--av-dx:0;--av-dy:0;animation:av-plat 5.6s cubic-bezier(.32,0,.5,1) infinite}.av-plat--1{top:29%;left:19%;--av-dx:12vw;--av-dy:8vh;animation-delay:0s}.av-plat--2{top:29%;right:19%;--av-dx:-12vw;--av-dy:8vh;animation-delay:-1.4s}.av-plat--3{bottom:31%;left:19%;--av-dx:12vw;--av-dy:-8vh;animation-delay:-2.8s}.av-plat--4{bottom:31%;right:19%;--av-dx:-12vw;--av-dy:-8vh;animation-delay:-4.2s}.av-stack{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:clamp(20px,3.4vh,40px);padding-bottom:6vh}.av-stack--enter{opacity:0;animation:av-enter .45s ease-out .2s forwards}.av-card{--av-card-w:clamp(210px, 23vw, 370px);--av-pad:clamp(6px, .55vw, 10px);--av-mark-w:calc(var(--av-card-w) - 2 * (var(--av-pad) + 1px));position:relative;width:var(--av-card-w);padding:var(--av-pad);border-radius:calc(var(--av-mark-w)*.042 + var(--av-pad) + 1px);background:rgba(255,255,255,.12);border:1px solid rgba(255,255,255,.3);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);box-shadow:0 18px 46px rgba(16,10,36,.36)}.av-mark{position:relative;width:var(--av-mark-w);aspect-ratio:387/130;border-radius:calc(var(--av-mark-w)*.042);overflow:hidden}.av-logo{position:absolute;inset:0;background:url(../img/ezpos.jpg)center/cover no-repeat}.av-scan{position:absolute;top:0;bottom:0;width:14%;background:linear-gradient(to right,rgba(255,255,255,0)0,rgba(255,255,255,.3) 62%,rgba(255,255,255,0) 100%);border-right:1.5px solid var(--auth-accent, #ffd068);animation:av-scan 2.4s cubic-bezier(.45,0,.55,1) infinite}.av-perim{position:absolute;top:var(--av-pad);left:var(--av-pad);width:var(--av-mark-w);aspect-ratio:387/130;overflow:visible;pointer-events:none}.av-perim-track{fill:none;stroke:rgba(255,255,255,.16);stroke-width:2}.av-perim-run{fill:none;color:var(--auth-accent, #ffd068);stroke:currentColor;stroke-width:2.6;stroke-linecap:round;stroke-dasharray:110 900;filter:drop-shadow(0 0 5px currentColor);animation:av-perim 2.6s linear infinite}.av-status{position:relative;display:flex;flex-direction:column;align-items:center;gap:clamp(10px,1.4vh,16px)}.av-status-text{font-size:clamp(13px,1.05vw,18px);font-weight:500;letter-spacing:.3em;text-indent:.3em;color:var(--auth-text-primary, #f8f9fa)}.av-bar{position:relative;width:clamp(150px,15vw,220px);height:2px;border-radius:2px;background:rgba(255,255,255,.18);overflow:hidden}.av-bar-fill{position:absolute;top:0;bottom:0;border-radius:2px;background:var(--auth-accent, #ffd068)}.av-bar-fill--indet{width:36%;background:linear-gradient(90deg,transparent,var(--auth-accent, #ffd068),transparent);animation:av-indet 1.7s ease-in-out infinite}.av-bar-fill--boot{left:0;width:var(--blazor-load-percentage, 0%);transition:width .15s ease-out}.av-boot-pct,.av-ver{position:absolute;font-family:ui-monospace,"Cascadia Mono",Consolas,monospace}.av-boot-pct{top:100%;left:50%;transform:translateX(-50%);margin-top:clamp(10px,1.4vh,16px);white-space:nowrap;font-size:clamp(11px,.8vw,13px);letter-spacing:.12em;color:rgba(248,249,250,.62)}.av-boot-pct::after{content:var(--blazor-load-percentage-text, "")}.av-ver{right:clamp(14px,2vw,34px);bottom:clamp(12px,1.8vh,28px);font-size:clamp(10px,.75vw,13px);letter-spacing:.14em;color:var(--auth-text-primary, #f8f9fa);opacity:.5}.av-exit{position:absolute;top:16px;left:16px;z-index:2;padding:6px 14px;border-radius:8px;background:rgba(12,8,28,.55);border:1px solid rgba(255,255,255,.35);color:#f8f9fa;font-size:13px;letter-spacing:.06em;text-decoration:none;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px)}.av-exit:focus-visible,.av-exit:hover{background:rgba(12,8,28,.75);border-color:rgba(255,255,255,.6);color:#fff}.av-exit[hidden]{display:none}@media (max-width:560px){.av-plat{display:none}.av-card{--av-card-w:min(78vw, 300px)}}@media (prefers-reduced-motion:reduce){.av-bar-fill--indet,.av-blob,.av-grid,.av-plat,.av-stack--enter{animation:none!important}.av-stack--enter{opacity:1}.av-scan{display:none}.av-plat{opacity:.36}.av-perim-run{stroke-dasharray:none;animation:av-perim-breathe 3.2s ease-in-out infinite}.av-bar-fill--indet{left:32%;background:var(--auth-accent, #ffd068)}}