.auth-backdrop{background:color-mix(in srgb, var(--wolo-ink) 70%, transparent);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);z-index:1000;padding:var(--space-4);justify-content:center;align-items:center;display:flex;position:fixed;inset:0;overflow-y:auto}.auth-dialog{background:var(--surface-card);color:var(--ws-ink);border-radius:var(--radius-xl);width:100%;max-width:500px;box-shadow:0 24px 64px color-mix(in srgb, var(--text-primary) 35%, transparent);border:1px solid var(--ice);padding:var(--space-8);overscroll-behavior:contain;overflow-wrap:anywhere;max-height:calc(100dvh - 32px);animation:.22s cubic-bezier(.16,1,.3,1) authFadeUp;position:relative;overflow-y:auto}@keyframes authFadeUp{0%{opacity:0;transform:translateY(12px)scale(.98)}to{opacity:1;transform:translateY(0)scale(1)}}.auth-close{min-width:44px;min-height:44px;color:var(--text-secondary);cursor:pointer;padding:var(--space-2);border-radius:var(--radius-sm);transition:background-color var(--duration-fast) var(--ease-default), color var(--duration-fast) var(--ease-default);background:0 0;border:none;justify-content:center;align-items:center;display:flex;position:absolute;top:18px;right:18px}.auth-close:hover{background:var(--surface-sunken);color:var(--ws-ink)}.auth-close:focus-visible{outline:2px solid var(--border-focus);outline-offset:2px}.auth-header{margin-bottom:var(--space-5)}.auth-logo{width:auto;height:20px;margin-bottom:var(--space-4);display:block}.auth-header h2{font-family:var(--font-serif);font-size:var(--text-2xl);color:var(--text-primary);margin:0 0 var(--space-2) 0;font-weight:600;line-height:1.2}.auth-subtitle{font-size:var(--text-base);color:var(--text-secondary);margin:0;line-height:1.5}.auth-subtitle strong{color:var(--ws-ink);overflow-wrap:anywhere;font-weight:600}.auth-sent-icon{background:var(--ws-active);width:46px;height:46px;color:var(--ws-active-text);margin-bottom:var(--space-4);border-radius:50%;justify-content:center;align-items:center;display:flex}.auth-sent-actions{gap:var(--space-3);flex-direction:column;align-items:center;display:flex}.auth-alert{padding:var(--space-3) var(--space-4);border-radius:var(--radius-md);font-size:var(--text-base);margin-bottom:var(--space-4);align-items:center;gap:var(--space-2);line-height:1.45;display:flex}.auth-alert:focus-visible{outline:2px solid var(--border-focus);outline-offset:2px}.auth-alert.error{background:var(--coral-surface);border:1px solid var(--border-subtle);color:var(--coral)}.auth-alert.error a{color:inherit;text-underline-offset:2px;font-weight:600;text-decoration:underline}.auth-form{gap:var(--space-4);flex-direction:column;display:flex}.auth-field{gap:var(--space-2);font-size:var(--text-base);color:var(--ws-ink);flex-direction:column;font-weight:600;display:flex}.auth-input-wrapper{align-items:center;gap:var(--space-3);background:var(--surface-card);border:1px solid var(--border-strong);border-radius:var(--radius-md);padding:0 var(--space-3);color:var(--text-secondary);transition:border-color var(--duration-fast) var(--ease-default), box-shadow var(--duration-fast) var(--ease-default);display:flex}.auth-input-wrapper:focus-within{border-color:var(--border-focus);box-shadow:0 0 0 3px color-mix(in srgb, var(--border-focus) 14%, transparent)}.auth-input-wrapper input{min-width:0;height:42px;color:var(--ws-ink);background:0 0;border:none;outline:none;flex:1;font-size:1rem}.auth-input-wrapper input::placeholder{color:var(--text-tertiary)}.auth-link-text{color:var(--ws-active-text);font-size:var(--text-sm);cursor:pointer;padding:var(--space-1);text-underline-offset:2px;background:0 0;border:none;font-weight:500;text-decoration:underline}.auth-link-text:hover{color:var(--text-link)}.auth-primary-button{justify-content:center;align-items:center;gap:var(--space-2);background:var(--action-primary);width:100%;min-height:44px;color:var(--action-on-primary);border-radius:var(--radius-md);padding:var(--space-3) var(--space-4);font-size:var(--text-md);cursor:pointer;margin-top:var(--space-2);transition:background-color var(--duration-fast) var(--ease-default);border:none;font-weight:600;display:flex}.auth-primary-button:hover:not(:disabled){background:var(--action-primary-hover)}.auth-primary-button:disabled{opacity:.65;cursor:not-allowed}.auth-spinner{flex:none;animation:.9s linear infinite authSpin}@keyframes authSpin{to{transform:rotate(360deg)}}@media (prefers-reduced-motion:reduce){.auth-dialog{animation:none}.auth-spinner{animation-duration:2.4s}}.auth-waitlist-note{text-align:center;color:var(--text-secondary);margin:.85rem 0 0;font-size:.85rem}.auth-waitlist-note a{color:var(--text-link);text-underline-offset:2px;text-decoration:underline}@media (width<=420px){.auth-dialog{padding:var(--space-6) var(--space-5)}.auth-close{top:10px;right:10px}}@media (width<=600px){.auth-dialog :is(input,select,textarea){font-size:16px}.auth-dialog button{min-height:44px}.auth-header{padding-inline-end:var(--space-6)}}.auth-google-button{border:1px solid var(--border-strong);border-radius:var(--radius-md);background:var(--surface-card);width:100%;min-height:46px;color:var(--ws-ink);font:inherit;cursor:pointer;justify-content:center;align-items:center;gap:12px;padding:10px 16px;font-weight:600;display:flex}.auth-google-button:hover:not(:disabled){background:var(--surface-sunken)}.auth-google-button:disabled{opacity:.6;cursor:wait}.auth-google-mark{flex-shrink:0;display:block}.auth-divider{color:var(--text-secondary);align-items:center;gap:12px;margin:20px 0;font-size:13px;display:flex}.auth-divider:before,.auth-divider:after{content:"";background:var(--border-subtle);flex:1;height:1px}.auth-password-toggle{color:var(--text-secondary);cursor:pointer;background:0 0;border:0;place-items:center;min-width:40px;min-height:42px;display:grid}.auth-help{color:var(--text-secondary);margin-top:-8px;line-height:1.5}.auth-align-end{align-self:flex-end}.auth-footer{text-align:center;color:var(--text-secondary);margin:20px 0 0;font-size:14px}.auth-footer p{margin:0 0 8px}.auth-dialog :is(button,a):focus-visible{outline:2px solid var(--border-focus);outline-offset:3px}.auth-privacy-notice{color:var(--text-secondary);text-align:center;margin:0 0 18px;font-size:12px;line-height:1.6}.auth-privacy-notice a{color:var(--text-link);text-decoration:underline}.auth-dialog h2[tabindex="-1"]:focus{outline:none}
