.signin{container-type:inline-size;position:relative;min-height:100dvh;background:var(--s-ground);color:var(--s-ink);font-family:var(--sans);display:grid;grid-template-rows:1fr auto;overflow:hidden;padding-top:env(safe-area-inset-top,0);padding-bottom:env(safe-area-inset-bottom,0)}.signin__main{display:flex;align-items:flex-start;justify-content:center;padding:calc(env(safe-area-inset-top, 0px) + 40px) 24px 24px;overflow:auto}.signin__col{width:100%;max-width:360px;display:flex;flex-direction:column;align-items:center;text-align:center;margin-top:clamp(0px,calc((100dvh - env(safe-area-inset-top, 0px) - 420px) * .38),260px);opacity:0;transition:opacity var(--dur-medium) var(--ease)}.signin.is-ready .signin__col{opacity:1}.signin__badge{width:56px;height:56px;border-radius:var(--radius-full);background:color-mix(in srgb,var(--s-type-share) 12%,transparent);display:grid;place-items:center;margin-bottom:20px}.signin__badge svg{width:26px;height:26px;stroke:var(--s-type-share);fill:none;stroke-width:1.5;stroke-linecap:round}.signin__name{font-family:var(--display);font-size:30px;letter-spacing:-.04em;line-height:1;margin:0;color:var(--s-ink)}.signin__name b{font-weight:800}.signin__name span{font-weight:400}.signin__name em{font-style:normal;font-weight:400;color:var(--s-brand)}.signin__tag{font-size:15px;font-weight:300;color:var(--s-body);margin:10px 0 0;line-height:1.5;max-width:30ch}.signin__server{margin-top:28px;display:inline-flex;align-items:center;gap:10px;max-width:100%;border:1px solid var(--s-line);border-radius:var(--radius-full);padding:7px 14px 7px 12px;background:var(--s-card);font-family:var(--mono);font-size:12px;letter-spacing:.02em;color:var(--s-body)}.signin__server .dot{width:7px;height:7px;border-radius:var(--radius-full);background:var(--s-good);flex:none;box-shadow:0 0 0 3px var(--s-good-soft)}.signin__server .host{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:var(--s-ink)}.signin__server button{all:unset;cursor:pointer;color:var(--s-link);font-family:var(--sans);font-size:13px;font-weight:500;padding:12px 2px;margin:-8px 0}.signin__server button:focus-visible{outline:2px solid var(--s-focus);outline-offset:2px;border-radius:4px}.signin[data-state=offline] .signin__server .dot{background:var(--s-warn);box-shadow:0 0 0 3px var(--s-warn-soft)}.signin[data-state=error] .signin__server .dot{background:var(--s-danger);box-shadow:0 0 0 3px var(--s-danger-soft)}.signin[data-state=checking] .signin__server .dot,.signin[data-state=first-launch] .signin__server .dot{display:none}.signin[data-state=first-launch] .signin__server .host{color:var(--s-muted)}.signin__btn{width:100%;height:48px;margin-top:20px;border:0;border-radius:var(--radius-s);background:var(--s-electric);color:var(--s-on-grad-msg);font-family:var(--display);font-weight:600;font-size:15px;cursor:pointer;display:inline-flex;align-items:center;justify-content:center;gap:10px;transition:transform var(--dur) var(--ease),background var(--dur) linear}.signin__btn:hover{background:var(--s-link)}.signin__btn:active{transform:scale(.985)}.signin__btn:focus-visible{outline:2px solid var(--s-focus);outline-offset:3px}.signin__btn[disabled]{opacity:.55;cursor:default;transform:none;background:var(--s-electric)}.signin__spin{width:16px;height:16px;border-radius:var(--radius-full);border:2px solid var(--s-brand-soft);border-top-color:var(--s-ink);animation:signin-spin .8s linear infinite;display:none}.signin[data-state=connecting] .signin__spin{display:block}@keyframes signin-spin{to{transform:rotate(1turn)}}.signin__hint{font-size:13px;color:var(--s-muted);margin:14px 0 0;line-height:1.5}.signin__hint.err{color:var(--s-danger)}.signin__foot{display:flex;justify-content:center;gap:18px;padding:12px 24px calc(env(safe-area-inset-bottom, 0px) + 14px);font-size:12px;color:var(--s-faint)}.signin__foot button{all:unset;cursor:pointer;color:inherit}.signin__foot button:hover{color:var(--s-muted)}.signin__foot button:focus-visible{outline:2px solid var(--s-focus);outline-offset:2px;border-radius:4px}.signin__foot .v{font-family:var(--mono);letter-spacing:.03em}.signin__scrim{position:absolute;inset:0;background:var(--s-scrim);opacity:0;pointer-events:none;transition:opacity var(--dur-medium) var(--ease)}.signin__sheet{position:absolute;left:0;right:0;bottom:0;background:var(--s-card);border:1px solid var(--s-line);border-bottom:0;border-radius:var(--radius-l) var(--radius-l) 0 0;padding:14px 20px calc(env(safe-area-inset-bottom, 0px) + 20px);transform:translateY(100%);transition:transform var(--dur-medium) var(--ease);z-index:6}.signin__sheet .grab{width:36px;height:4px;border-radius:2px;background:var(--s-faint);opacity:.5;margin:0 auto 14px}.signin__sheet h2{font-family:var(--display);font-weight:600;font-size:17px;margin:0 0 4px;color:var(--s-ink)}.signin__sheet p{font-size:13px;color:var(--s-body);margin:0 0 16px}.signin__sheet label{display:block;font-size:12px;color:var(--s-body);margin-bottom:6px;text-align:left}.signin__sheet input{width:100%;height:46px;border-radius:var(--radius-s);border:1px solid var(--s-line);background:var(--s-raise);color:var(--s-ink);font-family:var(--mono);font-size:14px;padding:0 14px;outline:0}.signin__sheet input:focus{border-color:var(--s-focus);box-shadow:0 0 0 3px var(--s-brand-soft)}.signin__sheet .acts{display:flex;gap:10px;margin-top:14px}.signin__sheet .acts .signin__btn{margin:0;flex:1}.signin__sheet .ghost{height:48px;padding:0 20px;border-radius:var(--radius-s);border:1px solid var(--s-line-strong);background:transparent;color:var(--s-ink);font-family:var(--display);font-weight:600;font-size:14px;cursor:pointer}.signin__sheet .ghost:focus-visible{outline:2px solid var(--s-focus);outline-offset:2px}.signin.sheet-open .signin__scrim{opacity:1;pointer-events:auto}.signin.sheet-open .signin__sheet{transform:none}@container (min-width: 600px){.signin__sheet{left:50%;right:auto;bottom:auto;top:50%;width:440px;border-radius:var(--radius-l);border-bottom:1px solid var(--s-line);padding:24px 24px 22px;transform:translate(-50%,-50%) scale(.96);opacity:0;pointer-events:none;transition:transform var(--dur-medium) var(--ease),opacity var(--dur-medium) var(--ease)}.signin.sheet-open .signin__sheet{transform:translate(-50%,-50%);opacity:1;pointer-events:auto}.signin__sheet .grab{display:none}.signin__name{font-size:34px}.signin__badge{width:64px;height:64px}.signin__badge svg{width:30px;height:30px}.signin__col{margin-top:clamp(0px,calc((100dvh - env(safe-area-inset-top, 0px) - 420px) * .36),320px)}}@container (min-width: 900px){.signin__col{max-width:380px}.signin__main{padding-left:48px;padding-right:48px}}@media (prefers-reduced-motion:reduce){.signin__btn,.signin__col,.signin__scrim,.signin__sheet{transition:none}.signin__spin{animation-duration:1.6s}}