.gate{--g-accent:#04a997;--g-bright:#5afadf;--g-error:#f88a98;--g-chrome:linear-gradient(100deg, #6d7378 0%, #e8ecee 22%, #fff 38%, #9ba3a8 52%, #dff7f2 68%, #7c8489 84%, #c9d1d4 100%);--g-ease-out:cubic-bezier(.16, 1, .3, 1);--g-ease-spring:linear(0, .009 0.9%, .033 1.8%, .129 3.8%, .676 11.3%, .89 14.9%, 1.03 18.5%, 1.075 20.4%, 1.102 22.3%, 1.115 24.7%, 1.111 27.4%, 1.016 39.7%, .989 47.4%, 1.001 71.7%, 1);background:#151414;flex-direction:column;justify-content:center;align-items:center;display:flex;position:fixed;inset:0;overflow:hidden}.gate__grid{animation:g-grid-in 2s var(--g-ease-out) .2s backwards;background-image:linear-gradient(#ffffff0b 1px,#0000 1px),linear-gradient(90deg,#ffffff0b 1px,#0000 1px);background-size:68px 68px;position:absolute;inset:0;-webkit-mask-image:radial-gradient(70% 70% at 50% 45%,#000 30%,#0000 100%);mask-image:radial-gradient(70% 70% at 50% 45%,#000 30%,#0000 100%)}@keyframes g-grid-in{0%{opacity:0}to{opacity:1}}.gate__aura{filter:blur(30px);width:120vmin;height:120vmin;animation:g-aura-in 2.4s var(--g-ease-out) .3s backwards, g-aura-breathe 7s ease-in-out 2.7s infinite;background:radial-gradient(circle,#04a99733 0%,#04a99712 40%,#0000 70%);position:absolute;top:45%;left:50%;translate:-50% -50%}.gate.is-armed .gate__aura{animation:g-aura-in 2.4s var(--g-ease-out) .3s backwards, g-aura-breathe 3.4s ease-in-out infinite}@keyframes g-aura-in{0%{opacity:0}to{opacity:1}}@keyframes g-aura-breathe{0%,to{opacity:.75;scale:1}50%{opacity:1;scale:1.09}}.gate .mark{aspect-ratio:1;cursor:pointer;width:clamp(9.5rem,26vmin,13rem);transition:transform .9s var(--g-ease-spring), filter .9s var(--g-ease-out);animation:g-mark-in 1.5s var(--g-ease-out) .15s backwards;background:0 0;border:0;place-items:center;display:grid;position:relative}@keyframes g-mark-in{0%{opacity:0;filter:blur(14px);transform:translateY(28px)scale(.9)}to{opacity:1;filter:blur();transform:none}}.gate.is-armed .mark{transform:translateY(-4px)scale(.82)}.gate.is-verified .mark{filter:drop-shadow(0 0 90px #04a997bf)drop-shadow(0 0 30px #fff6);transform:scale(1.06)}.mark__rings{position:absolute;inset:0}.mark__ring{fill:none;stroke:#ffffff24;stroke-width:1px;opacity:.9;transition:opacity .6s var(--g-ease-out);transform-origin:50%}.mark__ring--arc{stroke:var(--g-bright);stroke-width:1.6px;stroke-linecap:round;stroke-dasharray:34 266;opacity:0}.gate.is-armed .mark__ring{opacity:.5}.gate.is-armed .mark__ring--arc{opacity:1;animation:3.6s linear infinite g-ring-spin}.gate.is-armed .mark__ring--slow{animation:14s linear infinite reverse g-ring-spin}.gate.is-verified .mark__ring--arc{stroke-dasharray:300 0;stroke:var(--g-accent);transition:stroke-dasharray .9s var(--g-ease-out), stroke .3s linear;animation:none}@keyframes g-ring-spin{to{rotate:360deg}}.mark__logo{width:44%;height:44%}.wordmark{letter-spacing:.3em;text-indent:.3em;text-transform:uppercase;margin-top:clamp(1.5rem,4vmin,2.4rem);font-size:clamp(2.2rem,7vmin,3.6rem);font-weight:500;line-height:1}.wordmark span{background:var(--g-chrome);color:#0000;animation:g-letter-in .9s var(--g-ease-out) backwards, g-chrome-drift 9s linear infinite;background-size:300% 100%;-webkit-background-clip:text;background-clip:text;display:inline-block}@keyframes g-letter-in{0%{opacity:0;filter:blur(6px);transform:translateY(.5em)rotateX(-55deg)}to{opacity:1;filter:blur();transform:none}}@keyframes g-chrome-drift{0%{background-position:0 0}to{background-position:300% 0}}.gate .hint{letter-spacing:.3em;text-transform:uppercase;color:#ffffff8c;transition:opacity .5s var(--g-ease-out);animation:g-grid-in 1.4s var(--g-ease-out) 1.1s backwards;margin-top:1.4rem;font-size:11px}.gate.is-armed .hint{opacity:0}.gate .status{font-family:var(--font-roboto), monospace;letter-spacing:.14em;text-transform:uppercase;color:#fff9;justify-content:center;align-items:center;gap:.6rem;margin-top:1.1rem;font-size:12px;display:flex}.gate .status[data-tone=ok]{color:var(--g-bright)}.gate .status[data-tone=error]{color:var(--g-error)}.status__dot{background:currentColor;border-radius:999px;width:6px;height:6px;animation:2.4s ease-out infinite g-pulse-dot}@keyframes g-pulse-dot{0%{box-shadow:0 0 #04a99773}70%{box-shadow:0 0 0 9px #04a99700}to{box-shadow:0 0 #04a99700}}.access-wrap{transition:grid-template-rows .7s var(--g-ease-out), margin-block-start .7s var(--g-ease-out);grid-template-rows:0fr;display:grid}.gate.is-armed .access-wrap{grid-template-rows:1fr;margin-block-start:clamp(1.75rem,4vw,2.5rem)}.access{opacity:0;transition:opacity .6s var(--g-ease-out) .25s, translate .6s var(--g-ease-out) .25s;overflow:hidden;translate:0 14px}.gate.is-armed .access{opacity:1;translate:0}.code{justify-content:center;gap:.7rem;padding:2px;display:flex;position:relative}.code__input{opacity:0;caret-color:#0000;font-size:16px;position:absolute;inset:0}.code__cell{aspect-ratio:4/5;width:clamp(2.4rem,8vmin,3.4rem);font-family:var(--font-roboto), monospace;color:#fff;transition:border-color .25s var(--g-ease-out), box-shadow .25s var(--g-ease-out), background .25s var(--g-ease-out), translate .3s var(--g-ease-spring);background:#18191eb3;border:1px solid #ffffff29;border-radius:10px;place-items:center;font-size:1.5rem;display:grid}.code__cell.is-active{border-color:var(--g-accent);translate:0 -2px;box-shadow:0 0 0 3px #04a99740}.code__cell.is-active:after{content:"";background:var(--g-bright);width:1px;height:1.1em;animation:1.15s step-end infinite g-caret}@keyframes g-caret{50%{opacity:0}}.code__digit{animation:g-cell-pop .28s var(--g-ease-spring)}@keyframes g-cell-pop{0%{opacity:0;transform:translateY(6px)scale(.7)}to{opacity:1;transform:none}}.code.is-checking .code__cell{animation:.7s ease-in-out infinite g-scan}.code.is-checking .code__cell:nth-child(2){animation-delay:70ms}.code.is-checking .code__cell:nth-child(3){animation-delay:.14s}.code.is-checking .code__cell:nth-child(4){animation-delay:.21s}.code.is-checking .code__cell:nth-child(5){animation-delay:.28s}.code.is-checking .code__cell:nth-child(6){animation-delay:.35s}.code.is-checking .code__cell:nth-child(7){animation-delay:.42s}@keyframes g-scan{50%{opacity:.45}}.code.is-error .code__cell{border-color:var(--g-error);color:var(--g-error);animation:.42s cubic-bezier(.36,.07,.19,.97) g-shake}@keyframes g-shake{10%,90%{translate:-2px}20%,80%{translate:4px}30%,50%,70%{translate:-7px}40%,60%{translate:7px}}.code.is-ok .code__cell{border-color:var(--g-accent);color:var(--g-bright);background:#04a9971f;translate:0 -3px}.code.is-ok .code__cell:nth-child(2){transition-delay:50ms}.code.is-ok .code__cell:nth-child(3){transition-delay:.1s}.code.is-ok .code__cell:nth-child(4){transition-delay:.15s}.code.is-ok .code__cell:nth-child(5){transition-delay:.2s}.code.is-ok .code__cell:nth-child(6){transition-delay:.25s}.code.is-ok .code__cell:nth-child(7){transition-delay:.3s}.code.is-locked .code__cell{opacity:.35}.gate__content{z-index:1;transition:opacity .7s var(--g-ease-out), filter .7s var(--g-ease-out);flex-direction:column;align-items:center;display:flex;position:relative}.gate.is-unlocking .gate__content{opacity:0;filter:blur(10px)}.gate__flash{z-index:100;opacity:0;pointer-events:none;clip-path:circle(0% at 50% 45%);background:radial-gradient(circle at 50% 45%,#fff 0%,#5afadf 20%,#04695e 52%,#151414 78%);position:fixed;inset:0}.gate.is-unlocking .gate__flash{animation:1.15s cubic-bezier(.4,0,.2,1) forwards g-flash-open}@keyframes g-flash-open{0%{opacity:0;clip-path:circle(0% at 50% 45%)}45%{opacity:1}to{opacity:1;clip-path:circle(150% at 50% 45%)}}@media (prefers-reduced-motion:reduce){.gate *,.gate :before,.gate :after{transition-duration:.01ms!important;transition-delay:0s!important;animation-duration:.01ms!important;animation-delay:0s!important}}
