.g-pw-switch{position:absolute;width:1px;height:1px;margin:0;opacity:0;pointer-events:none}
.g-pw-switch:not(:checked)~.gate-form{display:none}
.g-pw-switch:checked~.g-login .g-pw-link{display:none}
.g-pw-switch:checked~.gate-form{margin-top:30px}
.g-login{position:relative;display:flex;flex-direction:column;align-items:center;gap:16px}
.g-login::before{content:"";position:absolute;z-index:-1;top:50%;left:50%;width:calc(100% + 120px);aspect-ratio:1;border-radius:50%;background:radial-gradient(circle at center,rgba(14,14,17,.82) 0%,rgba(14,14,17,.62) 45%,rgba(14,14,17,.22) 72%,transparent 100%);transform:translate(-50%,-50%);pointer-events:none}
.g-button{display:inline-flex;align-items:center;justify-content:center;gap:12px;min-width:min(280px,84vw);padding:16px 28px;border:1px solid rgba(242,242,244,.3);border-radius:14px;background:rgba(30,30,38,.62);-webkit-backdrop-filter:blur(16px) saturate(1.25);backdrop-filter:blur(16px) saturate(1.25);color:var(--ink,#f2f2f4);font:600 16px/1.2 var(--font-sans,-apple-system,sans-serif);text-decoration:none;box-shadow:inset 0 1px 0 rgba(242,242,244,.06),0 12px 32px rgba(0,0,0,.3);transition:border-color .2s ease,background .2s ease,transform .2s ease;-webkit-tap-highlight-color:transparent}
.g-button:hover,.g-button:focus-visible{border-color:var(--accent,#8b76ff);background:rgba(40,36,62,.72);outline:none}
.g-button:active{transform:scale(.98)}
.g-button svg{width:20px;height:20px;flex:none}
.g-pw-link{padding:6px 10px;color:var(--ink-muted,#8d8d97);font-size:12px;cursor:pointer;text-decoration:underline;text-underline-offset:3px;text-shadow:0 1px 6px rgba(14,14,17,.9)}
.g-pw-link:hover{color:var(--ink-body,#d2d2d8)}
.g-error{margin:0;color:var(--danger,#f0716f);font-size:13px;text-shadow:0 1px 6px rgba(14,14,17,.9)}
@media (prefers-reduced-motion:reduce){.g-button{transition:none}}