.lg{min-height:100svh;display:grid;place-items:center;padding:96px var(--m) 48px}.lg-form{display:grid;justify-items:center;grid-gap:26px;gap:26px;width:100%;max-width:420px}.lg-orb-wrap{position:relative;width:clamp(260px,30vw,380px);max-width:78vw;aspect-ratio:1}.lg-orb{position:absolute;inset:0;border-radius:50%;display:grid;place-content:center;justify-items:center;grid-gap:10px;gap:10px;isolation:isolate;background:radial-gradient(circle at 30% 24%,rgba(255,255,255,.9),rgba(255,255,255,0) 22%),radial-gradient(circle at 70% 85%,var(--accent-soft),transparent 55%),var(--glass);-webkit-backdrop-filter:blur(18px) saturate(170%);backdrop-filter:blur(18px) saturate(170%);box-shadow:inset 0 0 0 1px var(--glass-edge),inset -18px -26px 50px rgba(0,0,0,.1),inset 14px 18px 40px rgba(255,255,255,.35),0 40px 80px -40px rgba(0,0,0,.45);animation:lg-breathe 6s ease-in-out infinite;transition:box-shadow .4s var(--ease-out),transform .5s var(--ease-spring)}@keyframes lg-breathe{0%,to{border-radius:50% 50% 50% 50%/50% 50% 50% 50%}33%{border-radius:52% 48% 47% 53%/49% 53% 47% 51%}66%{border-radius:48% 52% 53% 47%/52% 47% 53% 48%}}.lg-orb:focus-within{box-shadow:inset 0 0 0 1px var(--glass-edge),inset -18px -26px 50px rgba(0,0,0,.1),inset 14px 18px 40px rgba(255,255,255,.35),0 0 0 4px var(--accent-ring),0 40px 80px -40px rgba(0,0,0,.45)}.lg-label{font:700 15px/1 var(--font-display),sans-serif;letter-spacing:-.01em;color:var(--ink-2)}.lg-input{width:190px;height:48px;padding:0 16px;border:0;border-radius:999px;text-align:center;background:var(--well);box-shadow:inset 0 1px 3px rgba(0,0,0,.12);font:600 22px/1 var(--font-body),sans-serif;letter-spacing:.18em;color:var(--ink);caret-color:var(--accent)}.lg-input:focus-visible{outline:2px solid var(--accent);outline-offset:3px}.lg-input:disabled{opacity:.5}.lg-ripples{position:absolute;inset:0;z-index:-1;border-radius:inherit;overflow:hidden;pointer-events:none}.lg-ripples i{position:absolute;left:50%;top:58%;width:40%;aspect-ratio:1;translate:-50% -50%;border-radius:50%;box-shadow:0 0 0 2px var(--accent-ring),inset 0 0 18px var(--accent-soft);animation:lg-ripple 1.1s var(--ease-out) forwards}@keyframes lg-ripple{0%{scale:.3;opacity:1}to{scale:2.6;opacity:0}}.lg-form:has(.lg-ripples i:last-child) .lg-orb{animation:lg-breathe 6s ease-in-out infinite,lg-pulse .42s var(--ease-spring)}@keyframes lg-pulse{40%{transform:scale(1.035,.97)}}.lg-shards{position:absolute;inset:0;filter:url(#lg-goo);pointer-events:none}.lg-shards i{position:absolute;left:50%;top:50%;width:18%;aspect-ratio:1;margin:-9% 0 0 -9%;border-radius:50%;background:var(--glass-strong);box-shadow:inset 0 0 0 1px var(--glass-edge);opacity:0;scale:var(--s)}.lg-form[data-state=wrong] .lg-orb{animation:lg-shake .38s ease-in-out,lg-pop .9s .36s var(--ease-out) both}.lg-form[data-state=wrong] .lg-shards i{animation:lg-burst 1s .38s var(--ease-out) both}@keyframes lg-shake{0%,to{translate:0}20%{translate:-12px 0}40%{translate:10px 0}60%{translate:-7px 0}80%{translate:4px 0}}@keyframes lg-pop{0%{scale:1;opacity:1}18%{scale:1.12;opacity:0}62%{scale:.6;opacity:0}to{scale:1;opacity:1}}@keyframes lg-burst{0%{opacity:0;transform:rotate(var(--a)) translateY(0)}8%{opacity:1}40%{opacity:1;transform:rotate(var(--a)) translateY(-150%)}70%{opacity:1;transform:rotate(calc(var(--a) + 40deg)) translateY(-40%)}to{opacity:0;transform:rotate(calc(var(--a) + 60deg)) translateY(0)}}.lg-form[data-state=wrong] .lg-msg{color:var(--negative)}.lg-frost{position:absolute;inset:0;z-index:-1;border-radius:inherit;opacity:0;transition:opacity .9s var(--ease-out);pointer-events:none;background:repeating-conic-gradient(from 12deg at 38% 42%,rgba(255,255,255,0) 0deg 9deg,rgba(255,255,255,.5) 10deg 11deg,rgba(255,255,255,0) 12deg 23deg),radial-gradient(circle at 50% 50%,rgba(220,235,255,.55),rgba(200,220,255,.85));-webkit-mask:radial-gradient(circle,#000 55%,rgba(0,0,0,.75) 100%);mask:radial-gradient(circle,#000 55%,rgba(0,0,0,.75) 100%)}.lg-form[data-state=frozen] .lg-frost{opacity:1}.lg-form[data-state=frozen] .lg-orb{animation:none;box-shadow:inset 0 0 0 2px rgba(255,255,255,.95),inset 0 0 60px rgba(160,200,255,.6),0 40px 80px -40px rgba(60,100,160,.5)}.lg-form[data-state=frozen] .lg-input{background:rgba(255,255,255,.4)}.lg-count,.lg-form[data-state=frozen] .lg-label{color:#1e3a5f}.lg-count{font:800 34px/1 var(--font-display),sans-serif;letter-spacing:-.02em;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.lg-form[data-state=checking] .lg-orb:after{content:"";position:absolute;inset:-6px;border-radius:50%;padding:3px;pointer-events:none;background:conic-gradient(from var(--spin,0deg),transparent 0 70%,var(--accent) 100%);-webkit-mask:linear-gradient(#000 0 0) content-box exclude,linear-gradient(#000 0 0);mask:linear-gradient(#000 0 0) content-box exclude,linear-gradient(#000 0 0);animation:lg-spin .9s linear infinite}@property --spin{syntax:"<angle>";inherits:false;initial-value:0deg}@keyframes lg-spin{to{--spin:360deg}}.lg-go{display:inline-flex;align-items:center;gap:10px;height:52px;padding:0 22px 0 26px;border:0;border-radius:999px;cursor:pointer;background:var(--ink);color:var(--bg);font:700 17px/1 var(--font-display),sans-serif;transition:transform .4s var(--ease-spring),opacity .2s}.lg-go:hover{transform:translateY(-2px)}.lg-go:active{transform:scale(.95)}.lg-go:disabled{opacity:.4;cursor:not-allowed;transform:none}.lg-msg{min-height:1.5em;text-align:center;font-size:16px;font-weight:500;color:var(--ink-2)}.lg-flood{position:fixed;inset:0;z-index:100;pointer-events:none;background:var(--bg);-webkit-clip-path:circle(0 at var(--fx,50%) var(--fy,50%));clip-path:circle(0 at var(--fx,50%) var(--fy,50%));box-shadow:inset 0 0 120px var(--accent-ring)}.lg-flood[data-on]{animation:lg-flood .9s cubic-bezier(.7,0,.2,1) forwards}@keyframes lg-flood{to{-webkit-clip-path:circle(150vmax at var(--fx,50%) var(--fy,50%));clip-path:circle(150vmax at var(--fx,50%) var(--fy,50%))}}.lg-form[data-state=success] .lg-orb{transform:scale(1.15)}@media (prefers-reduced-motion:reduce){.lg-form[data-state=wrong] .lg-orb,.lg-orb{animation:none}.lg-form[data-state=wrong] .lg-shards i,.lg-ripples i{animation:none;display:none}.lg-flood[data-on]{animation:none;-webkit-clip-path:none;clip-path:none}.lg-form[data-state=checking] .lg-orb:after{animation:none}.lg-frost{transition:none}}