.auth-gate{--gate-width:30rem;--gate-gutter:16px;--gate-ease:cubic-bezier(.22, .61, .36, 1);min-height:100svh;color:var(--ink);background:radial-gradient(90% 46% at 50% -6%, #9db7d152, transparent 70%), linear-gradient(180deg, var(--ivory) 0%, #f5f1e9 100%);padding-bottom:env(safe-area-inset-bottom);flex-direction:column;display:flex}.auth-gate__bar{width:min(100% - 2 * var(--gate-gutter), 72rem);justify-content:space-between;align-items:center;gap:16px;margin:0 auto;padding:14px 0 6px;display:flex}.auth-gate .auth-gate__logo{width:150px}.auth-gate__back{min-height:44px;color:var(--navy);align-items:center;gap:8px;font-size:.875rem;font-weight:500;display:inline-flex}.auth-gate__back svg{width:16px;height:16px;transition:transform .2s var(--gate-ease);transform:scaleX(-1)}.auth-gate__back:hover svg{transform:scaleX(-1)translate(3px)}.auth-gate__back:hover{text-underline-offset:3px;text-decoration:underline}.auth-gate__main{width:min(100% - 2 * var(--gate-gutter), var(--gate-width));flex-direction:column;flex:1;gap:20px;margin:0 auto;padding:10px 0 36px;display:flex}.auth-gate__card{background:var(--paper);border:1px solid var(--line);border-radius:28px;padding:28px 22px 24px;box-shadow:inset 0 1px #ffffffe6,0 2px 6px #0d2b450d,0 28px 56px -28px #0d2b4547}.auth-gate__eyebrow{color:var(--champagne-ink);letter-spacing:.16em;text-transform:uppercase;align-items:center;gap:10px;margin:0;font-size:.75rem;font-weight:600;display:inline-flex}.auth-gate__eyebrow:before{content:"";background:var(--champagne);width:22px;height:1px}.auth-gate__card h1{color:var(--navy);font-family:var(--display);letter-spacing:-.02em;text-wrap:balance;margin:14px 0 0;font-size:clamp(1.85rem,1.4rem + 2.2vw,2.5rem);font-weight:500;line-height:1.12}.auth-gate__lead{color:var(--muted);text-wrap:pretty;margin:12px 0 0;font-size:1rem;line-height:1.6}.auth-gate__body{gap:18px;margin-top:26px;display:grid}.auth-gate .signup-choice{gap:18px;display:grid}.auth-gate .auth-google{border:1px solid var(--line-strong);width:100%;min-height:54px;color:var(--ink);background:#fff;border-radius:999px;justify-content:center;align-items:center;gap:12px;padding:0 20px;font-size:1rem;font-weight:600;transition:border-color .18s,background .18s,box-shadow .18s;display:flex}.auth-gate .auth-google svg{flex:none;width:20px;height:20px}.auth-gate .auth-google:hover:not(:disabled){border-color:var(--navy);box-shadow:0 6px 16px -10px #0d2b4566}.auth-gate .auth-google:disabled{opacity:.6;cursor:progress}.auth-gate .auth-divider{color:var(--muted);grid-template-columns:1fr auto 1fr;align-items:center;gap:14px;margin:0;font-size:.8125rem;display:grid}.auth-gate .auth-divider:before,.auth-gate .auth-divider:after{content:"";background:var(--line);height:1px}.auth-gate .auth-form{gap:16px;display:grid}.auth-gate .auth-field{gap:8px;display:grid}.auth-gate .auth-field label{color:var(--navy);font-size:.875rem;font-weight:600}.auth-gate .auth-field input{border:1px solid var(--line-strong);width:100%;min-height:56px;color:var(--ink);background:#fff;border-radius:16px;outline:none;padding:0 18px;font-size:1rem;transition:border-color .18s,box-shadow .18s}.auth-gate .auth-field input::placeholder{color:#5a6878b3}.auth-gate .auth-field input:focus{border-color:var(--navy);box-shadow:0 0 0 4px #9db7d173}.auth-gate .auth-field input[aria-invalid=true]{border-color:var(--danger)}.auth-gate .auth-cta{border:1px solid var(--navy);background:var(--navy);min-height:54px;color:var(--ivory);letter-spacing:.005em;border-radius:999px;padding:0 22px;font-size:1rem;font-weight:600;transition:background .18s,box-shadow .18s,transform .18s;box-shadow:0 10px 22px -12px #0d2b45a6}.auth-gate .auth-cta:hover:not(:disabled){background:var(--navy-2,#163a5a);transform:none;box-shadow:0 14px 26px -14px #0d2b45b3}.auth-gate .auth-cta:active:not(:disabled){transform:translateY(1px)}.auth-gate .auth-cta:disabled{opacity:.5}.auth-gate__privacy{color:var(--muted);align-items:flex-start;gap:10px;margin:0;font-size:.8125rem;line-height:1.55;display:flex}.auth-gate__privacy svg{width:16px;height:16px;color:var(--champagne-ink);flex:none;margin-top:2px}.auth-gate .auth-error,.auth-gate .auth-success{border-radius:14px;padding:12px 14px;font-size:.875rem;line-height:1.5}.auth-gate .auth-success{background:var(--success-bg);color:var(--success);border-color:#2f5d3f3d}.auth-gate__inline-cta{text-align:center;margin:0;font-size:.9375rem}.auth-gate__inline-cta a,.auth-gate__switch a{color:var(--navy);text-decoration:underline;-webkit-text-decoration-color:var(--champagne);text-decoration-color:var(--champagne);text-underline-offset:4px;font-weight:600;text-decoration-thickness:2px}.auth-gate__inline-cta a:hover,.auth-gate__switch a:hover{-webkit-text-decoration-color:var(--navy);text-decoration-color:var(--navy)}.auth-commitments{background:#f1e8d880;border:1px solid #cbbca1b3;border-radius:20px;padding:18px 18px 16px}.auth-commitments h2{color:var(--champagne-ink);font-family:var(--sans);letter-spacing:.14em;text-transform:uppercase;margin:0 0 12px;font-size:.75rem;font-weight:700}.auth-commitments ul{gap:12px;margin:0;padding:0;list-style:none;display:grid}.auth-commitments li{color:var(--ink);grid-template-columns:22px 1fr;align-items:start;gap:12px;font-size:.9375rem;line-height:1.5;display:grid}.auth-commitments li svg{background:var(--navy);width:22px;height:22px;color:var(--ivory);stroke-width:2.4px;border-radius:50%;margin-top:1px;padding:4px}.auth-gate .auth-legal-note{color:var(--muted);text-align:center;text-wrap:pretty;margin:0;padding-top:2px;font-size:.8125rem;line-height:1.6}.auth-gate .auth-legal-note a{color:var(--navy);text-underline-offset:3px;font-weight:600;text-decoration:underline}.auth-gate__switch{border-top:1px solid var(--line);color:var(--muted);text-align:center;flex-wrap:wrap;justify-content:center;align-items:center;gap:2px 8px;margin:4px 0 0;padding-top:18px;font-size:.9375rem;display:flex}.auth-gate__switch a{align-items:center;min-height:44px;display:inline-flex}.auth-quote{background:#f1e8d873;border:1px solid #cbbca18c;border-radius:20px;margin:0;padding:20px 22px 18px 28px;position:relative}.auth-quote:before{content:"";background:var(--champagne);border-radius:3px;width:3px;position:absolute;top:22px;bottom:22px;left:0}.auth-quote blockquote{margin:0}.auth-quote p{color:var(--navy);font-family:var(--display);text-wrap:pretty;margin:0;font-size:1.0625rem;line-height:1.55}.auth-quote figcaption{color:var(--champagne-ink);letter-spacing:.14em;text-transform:uppercase;margin-top:10px;font-size:.75rem;font-weight:600}.auth-trust{color:var(--muted);flex-wrap:wrap;justify-content:center;gap:10px 20px;margin:2px 0 0;padding:0;font-size:.8125rem;list-style:none;display:flex}.auth-trust li{align-items:center;gap:8px;display:inline-flex}.auth-trust svg{width:16px;height:16px;color:var(--navy);opacity:.75}.auth-gate__footer{width:min(100% - 2 * var(--gate-gutter), 72rem);border-top:1px solid var(--line);margin:0 auto;padding:18px 0 26px}.auth-gate__footer ul{flex-wrap:wrap;justify-content:center;gap:0 20px;margin:0;padding:0;list-style:none;display:flex}.auth-gate__footer a{min-height:40px;color:var(--muted);align-items:center;font-size:.8125rem;display:inline-flex}.auth-gate__footer a:hover{color:var(--navy);text-underline-offset:3px;text-decoration:underline}.auth-gate .auth-notice{background:#e8eff5b3;border:1px solid #0d2b451a;border-radius:18px;padding:16px 18px}.auth-gate .auth-notice strong{color:var(--navy)}.auth-gate .auth-secondary-actions{justify-content:center;gap:0 22px}.auth-gate .auth-secondary-actions a,.auth-gate .auth-secondary-actions button{min-height:44px;text-decoration:underline;-webkit-text-decoration-color:var(--champagne);text-decoration-color:var(--champagne);text-underline-offset:4px;background:0 0;border:0;align-items:center;padding:0;font-size:.9375rem;text-decoration-thickness:2px;display:inline-flex}.auth-gate .auth-secondary-actions button:disabled{text-decoration:none}.auth-gate .auth-empty-state h2{font-size:1.5rem;font-weight:500}.auth-gate .auth-inline-actions{margin-top:4px}.auth-gate .auth-inline-actions .button{min-height:52px}.auth-gate .auth-back{min-height:44px}.auth-skeleton{gap:16px;display:grid}.auth-skeleton span{background:#0d2b450f;border-radius:16px;display:block}.auth-skeleton span:first-child{border-radius:6px;width:34%;height:14px}.auth-skeleton span:nth-child(2){height:56px}.auth-skeleton span:nth-child(3){border-radius:999px;height:54px}.auth-gate a:focus-visible,.auth-gate button:focus-visible{outline:3px solid var(--navy);outline-offset:3px;border-radius:8px}.auth-gate .auth-google:focus-visible,.auth-gate .auth-cta:focus-visible{border-radius:999px}@media (prefers-reduced-motion:no-preference){.auth-gate__card,.auth-quote,.auth-trust{animation:auth-gate-in .55s var(--gate-ease) both}.auth-quote{animation-delay:80ms}.auth-trust{animation-delay:.14s}}@keyframes auth-gate-in{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:none}}@media (min-width:640px){.auth-gate{--gate-gutter:24px;--gate-width:32rem}.auth-gate__bar{padding-top:24px}.auth-gate .auth-gate__logo{width:176px}.auth-gate__main{gap:22px;padding-top:22px}.auth-gate__card{border-radius:32px;padding:44px 44px 32px}.auth-gate__body{margin-top:30px}.auth-quote{padding:22px 26px 20px 32px}.auth-quote blockquote{margin:0}.auth-quote p{font-size:1.125rem}}@media (min-width:900px) and (min-height:820px){.auth-gate__main{justify-content:center;padding-bottom:56px}}@media (max-width:374px){.auth-gate__card{border-radius:24px;padding:24px 18px 20px}.auth-gate .auth-gate__logo{width:136px}}
