.auth-stage{position:relative;display:flex;width:100%;justify-content:center}.auth-shape-grid{opacity:0;transition:opacity 1.2s cubic-bezier(.22,1,.36,1)}.auth-shape-grid.is-visible{opacity:1}.auth-shell--revealed{opacity:0;transform:translateY(10px) scale(.995);pointer-events:none;transition:opacity .42s cubic-bezier(.22,1,.36,1),transform .42s cubic-bezier(.22,1,.36,1)}.auth-shell--revealed.is-visible{opacity:1;transform:translateY(0) scale(1);pointer-events:auto}.auth-particle-intro{position:fixed;inset:0;z-index:50;display:grid;width:100%;height:100%;place-items:center;overflow:hidden;-webkit-appearance:none;-moz-appearance:none;appearance:none;border:0;border-radius:0;padding:0;color:inherit;background-color:color-mix(in srgb,var(--background) 24%,transparent);cursor:pointer;transition:opacity .42s cubic-bezier(.22,1,.36,1),background-color .36s ease}.auth-particle-intro .particle-text{width:100%;height:100%;min-height:100%}.auth-particle-intro:focus-visible{outline:2px solid var(--ring);outline-offset:-4px}.auth-particle-intro.is-leaving{opacity:0;pointer-events:none}.auth-shell{width:100%;max-width:360px}.auth-brand{flex-direction:column;margin-bottom:28px;text-align:center}.auth-brand,.auth-brand-mark{display:flex;align-items:center}.auth-brand-mark{height:42px;width:42px;justify-content:center;border:1px solid color-mix(in srgb,var(--border) 88%,transparent);border-radius:13px;background:color-mix(in srgb,var(--card) 88%,transparent);box-shadow:inset 0 1px 0 rgb(255 255 255/46%),0 10px 30px rgb(15 23 42/7%);backdrop-filter:blur(14px)}.auth-brand-title{margin-top:13px;color:var(--foreground);font-family:var(--font-serif);font-size:25px;font-weight:650;letter-spacing:-.025em;line-height:1.1}.auth-brand-subtitle{margin-top:6px;color:var(--muted-foreground);font-size:13px;line-height:1.5}.auth-card{position:relative;overflow:hidden;border:1px solid color-mix(in srgb,var(--border) 86%,transparent);border-radius:18px;background:color-mix(in srgb,var(--card) 86%,transparent);padding:28px 28px 26px;box-shadow:inset 0 1px 0 rgb(255 255 255/50%),0 20px 55px rgb(15 23 42/8%);backdrop-filter:blur(18px) saturate(110%);animation:auth-card-enter .36s cubic-bezier(.22,1,.36,1) both}.auth-card:before{position:absolute;top:0;right:22px;left:22px;height:1px;content:"";background:linear-gradient(90deg,transparent,color-mix(in srgb,var(--primary) 38%,transparent),transparent);opacity:.72}.auth-label{display:block;margin-bottom:7px;color:var(--foreground);font-size:13px;font-weight:560}.auth-input{width:100%;border:1px solid color-mix(in srgb,var(--border) 94%,transparent);border-radius:11px;background:color-mix(in srgb,var(--background) 72%,var(--card));padding:10px 13px;color:var(--foreground);font-size:13.5px;line-height:1.45;outline:none;transition:border-color .16s ease,box-shadow .16s ease,background-color .16s ease}.auth-input::-moz-placeholder{color:color-mix(in srgb,var(--muted-foreground) 72%,transparent)}.auth-input::placeholder{color:color-mix(in srgb,var(--muted-foreground) 72%,transparent)}.auth-input:hover{border-color:color-mix(in srgb,var(--border) 72%,var(--foreground) 12%)}.auth-input:focus{border-color:color-mix(in srgb,var(--primary) 48%,var(--border));background:var(--card);box-shadow:0 0 0 3px color-mix(in srgb,var(--primary) 10%,transparent)}.auth-code-row{display:flex;align-items:stretch;gap:8px}.auth-code-input{min-width:0;flex:1 1 auto}.auth-submit.auth-code-button{flex:0 0 auto;width:auto;min-width:112px;padding-inline:14px;white-space:nowrap}.auth-submit{position:relative;width:100%;border:1px solid color-mix(in srgb,var(--primary) 84%,black 6%);border-radius:11px;background:var(--primary);padding:10px 16px;color:var(--primary-foreground);font-size:13.5px;font-weight:620;box-shadow:inset 0 1px 0 rgb(255 255 255/18%),0 8px 20px color-mix(in srgb,var(--primary) 17%,transparent);transition:transform .15s ease,box-shadow .15s ease,opacity .15s ease}.auth-submit:hover:not(:disabled){transform:translateY(-1px);box-shadow:inset 0 1px 0 rgb(255 255 255/20%),0 11px 24px color-mix(in srgb,var(--primary) 21%,transparent)}.auth-submit:active:not(:disabled){transform:translateY(0)}.auth-submit:disabled{cursor:not-allowed;opacity:.48;box-shadow:none}.auth-notice{margin-bottom:16px;border:1px solid color-mix(in srgb,var(--border) 88%,transparent);border-radius:11px;padding:11px 13px;font-size:12.5px;line-height:1.55}.auth-notice-success{border-color:color-mix(in srgb,#4f8f66 28%,var(--border));background:color-mix(in srgb,#4f8f66 8%,var(--card));color:#3f7653}.auth-notice-info{border-color:color-mix(in srgb,var(--primary) 24%,var(--border));background:color-mix(in srgb,var(--primary) 6%,var(--card));color:var(--foreground)}.auth-notice-error{border-color:color-mix(in srgb,#c75a4a 30%,var(--border));background:color-mix(in srgb,#c75a4a 7%,var(--card));color:#a14336}.auth-footer{margin-top:22px;color:var(--muted-foreground);text-align:center;font-size:12.5px}.auth-footer a{color:var(--foreground);font-weight:580;text-decoration-color:color-mix(in srgb,var(--primary) 42%,transparent);text-underline-offset:3px}.auth-signature{margin-top:12px;color:color-mix(in srgb,var(--muted-foreground) 78%,transparent);text-align:center;font-size:11px;letter-spacing:.02em}@keyframes auth-card-enter{0%{opacity:0;transform:translateY(7px) scale(.995)}to{opacity:1;transform:translateY(0) scale(1)}}@media (max-width:420px){.auth-particle-intro{padding:0}.auth-particle-intro .particle-text{width:100%;height:100%;min-height:100%}.auth-card{padding:24px 20px 22px}.auth-submit.auth-code-button{min-width:106px;padding-inline:12px;font-size:12.5px}}@media (prefers-reduced-motion:reduce){.auth-particle-intro,.auth-shape-grid,.auth-shell--revealed{transition-duration:.01ms}.auth-card{animation-duration:.01ms}}