:root{--auth-gradient:linear-gradient(145deg, #0f766e 0%, #1d4ed8 55%, #0e7490 100%);--auth-panel-bg:var(--velin-color-surface-bright,#fff);--auth-panel-border:var(--velin-color-border,#dbe3ef);--auth-shadow:0 18px 48px #0f172a1a}.auth-body{min-height:100vh;color:var(--velin-color-text);background:radial-gradient(ellipse 80% 50% at 50% -10%, #1d4ed824, transparent 55%), linear-gradient(180deg, #0e74900f 0%, transparent 42%), var(--velin-color-surface-dim,#eef2f7);flex-direction:column;margin:0;display:flex}html[data-velin-theme=dark] .auth-body,html[data-velin-theme=midnight] .auth-body{background:radial-gradient(ellipse 70% 45% at 50% -8%, #2dd4bf1f, transparent 50%), linear-gradient(180deg, #1e40af2e 0%, transparent 40%), var(--velin-color-surface-dim,#0b1220)}.auth-topbar{justify-content:center;align-items:center;gap:var(--velin-space-2) var(--velin-space-5);padding:var(--velin-space-2) var(--velin-space-4);background:var(--auth-gradient);color:#fff;flex-wrap:wrap;min-height:2.75rem;font-size:.8125rem;display:flex;box-shadow:0 2px 12px #0f172a29}.auth-topbar__item{color:#fffffff0;white-space:nowrap;align-items:center;gap:.375rem;min-height:44px;text-decoration:none;display:inline-flex}.auth-topbar__item:hover{color:#fff;text-underline-offset:2px;text-decoration:underline}.auth-topbar__item--text{opacity:.92}.velin-layout-auth{padding:var(--velin-space-6) var(--velin-space-4);box-sizing:border-box;flex:1;place-items:center;width:100%;display:grid;overflow-x:hidden}.auth-shell{gap:var(--velin-space-4);flex-direction:column;width:min(100%,26.5rem);display:flex;position:relative}.auth-brand{align-items:center;gap:var(--velin-space-3);text-align:center;color:inherit;flex-direction:column;text-decoration:none;display:flex}.auth-brand__badge{border-radius:var(--velin-radius-lg,.75rem);background:var(--auth-gradient);color:#fff;justify-content:center;align-items:center;width:3.5rem;height:3.5rem;display:flex;box-shadow:0 10px 28px #1d4ed83d}.auth-brand__name{font-size:1.125rem;font-weight:var(--velin-weight-semibold,600)}.auth-panel,.velin-layout-auth__panel{border:1px solid var(--auth-panel-border);border-radius:var(--velin-radius-lg,.85rem);background:var(--auth-panel-bg);box-shadow:var(--auth-shadow);box-sizing:border-box;width:100%;padding:clamp(1.25rem,3vw,1.75rem)}.auth-toolbar{justify-content:center;display:flex}.auth-stack{gap:var(--velin-space-5);flex-direction:column;display:flex}.auth-header{text-align:center}.auth-header__title{margin:0 0 var(--velin-space-2);font-size:clamp(1.25rem,2.4vw,1.5rem);font-weight:var(--velin-weight-semibold,600);line-height:1.25}.auth-header__lead{color:var(--velin-color-text-muted);margin:0;font-size:.9375rem;line-height:1.45}.auth-form{gap:var(--velin-space-4);flex-direction:column;display:flex}.auth-form__actions{gap:var(--velin-space-3);margin-top:var(--velin-space-2);flex-direction:column;display:flex}.auth-field-row{justify-content:space-between;align-items:baseline;gap:var(--velin-space-2);flex-wrap:wrap;display:flex}.auth-field-row .velin-field__label{margin:0}.auth-input,.auth-panel .velin-input,.auth-panel .velin-select{box-sizing:border-box;width:100%;min-height:44px}.auth-input--code{letter-spacing:.28em;text-align:center;font-variant-numeric:tabular-nums;font-size:1.35rem;font-weight:600}.auth-btn,.auth-form__actions .velin-btn,.auth-oauth .velin-btn,.auth-resend .velin-btn{min-height:44px}.auth-link{color:var(--velin-color-primary-text,#1d4ed8);font-size:.875rem;text-decoration:none}.auth-link:hover{text-underline-offset:2px;text-decoration:underline}.auth-back{margin:0}.auth-back__link{align-items:center;gap:.375rem;min-height:44px;font-size:.8125rem;display:inline-flex}.auth-remember{align-items:flex-start;gap:var(--velin-space-2);color:var(--velin-color-text-muted);cursor:pointer;font-size:.875rem;line-height:1.4;display:inline-flex}.auth-remember input{min-width:1.1rem;min-height:1.1rem;margin-top:.15rem}.auth-footnote{text-align:center;color:var(--velin-color-text-muted);margin:0;font-size:.875rem}.auth-help{text-align:center;margin:0}.auth-status{text-align:center}.auth-error-list{margin:0;padding-left:1.1rem}.auth-oauth{gap:var(--velin-space-2);flex-direction:column;display:flex}.auth-oauth__divider{margin:var(--velin-space-1) 0;text-align:center;position:relative}.auth-oauth__divider:before{content:"";border-top:1px solid var(--velin-color-border);position:absolute;inset:50% 0 auto}.auth-oauth__divider span{padding:0 var(--velin-space-2);background:var(--auth-panel-bg);letter-spacing:.04em;text-transform:uppercase;color:var(--velin-color-text-muted);font-size:.6875rem;font-weight:600;display:inline-block;position:relative}.auth-code-panel,.auth-profile-panel{gap:var(--velin-space-4);flex-direction:column;display:flex}.auth-code-panel__email,.auth-code-panel__hint,.auth-profile-panel__why{text-align:center;margin:0}.auth-address-row{gap:var(--velin-space-3);grid-template-columns:minmax(0,1fr) minmax(0,2fr);display:grid}.auth-resend{margin:0}.auth-passkey{gap:var(--velin-space-3);flex-direction:column;display:flex}.auth-passkey__error{text-align:center;color:var(--velin-color-danger,#dc2626);margin:0;font-size:.8125rem}.auth-passkey__divider{margin:var(--velin-space-2) 0;text-align:center;position:relative}.auth-passkey__divider:before{content:"";border-top:1px solid var(--velin-color-border);position:absolute;inset:50% 0 auto}.auth-passkey__divider span{padding:0 var(--velin-space-2);background:var(--auth-panel-bg);letter-spacing:.04em;text-transform:uppercase;color:var(--velin-color-text-muted);font-size:.6875rem;font-weight:600;display:inline-block;position:relative}.auth-panel .velin-field-error,.auth-panel .velin-alert,.auth-panel .velin-field{margin:0}@media (width<=430px){.velin-layout-auth{padding:var(--velin-space-4) var(--velin-space-3)}.auth-panel,.velin-layout-auth__panel{padding:1.1rem}.auth-address-row{grid-template-columns:1fr}.auth-input--code{letter-spacing:.18em;font-size:1.2rem}}@media (width<=320px){.auth-shell{width:100%}.auth-topbar{gap:var(--velin-space-1) var(--velin-space-3);padding-inline:var(--velin-space-2)}}.auth-form__actions{z-index:2;position:relative}.velin-layout-auth{padding-bottom:max(var(--velin-space-6), calc(env(safe-area-inset-bottom,0px) + 5.5rem))}@media (width<=640px){.auth-form__actions{bottom:max(.5rem, env(safe-area-inset-bottom,0px));z-index:5;background:linear-gradient(180deg, color-mix(in oklch, var(--auth-panel-bg) 0%, transparent) 0%, var(--auth-panel-bg) 35%);margin-bottom:.25rem;padding:.5rem 0 .15rem;position:sticky}.auth-form__actions .auth-btn{touch-action:manipulation;-webkit-tap-highlight-color:transparent;width:100%;min-height:48px}body.auth-body .bird-guide{bottom:max(.65rem, env(safe-area-inset-bottom,0px))}body.auth-body .bird-guide:not(.is-open){left:auto;right:max(.65rem, env(safe-area-inset-right,0px));pointer-events:none;align-items:flex-end;max-width:none}body.auth-body .bird-guide:not(.is-open) .bird-guide__fab{pointer-events:auto}body.auth-body .bird-guide.is-open{max-height:min(42dvh,16rem)}body.auth-body .bird-guide.is-open .bird-guide__stage{max-height:min(40dvh,15rem)}}.auth-input::placeholder{opacity:.55;letter-spacing:normal}
