
.fn-auth-shell{min-height:clamp(620px,90vh,900px);display:flex;align-items:center;justify-content:center;padding:34px 18px;box-sizing:border-box;background:radial-gradient(circle at 15% 15%,rgba(124,58,237,.14),transparent 30%),radial-gradient(circle at 85% 85%,rgba(168,85,247,.12),transparent 30%),#090909;color:#fff}
.fn-auth-card{width:min(100%,520px);box-sizing:border-box;padding:34px 30px 26px;border:1px solid rgba(124,58,237,.24);border-radius:28px;background:linear-gradient(145deg,rgba(27,27,27,.98),rgba(12,12,12,.98));box-shadow:0 30px 80px rgba(0,0,0,.42)}
.fn-auth-brand{display:flex;align-items:center;gap:12px;margin-bottom:30px}.fn-auth-mark{width:44px;height:44px;border-radius:14px;display:grid;place-items:center;background:linear-gradient(135deg,#7c3aed,#a855f7);color:#0a0a0a;font-weight:900;font-size:22px}.fn-auth-logo{font-weight:900;letter-spacing:1.8px;font-size:18px}.fn-auth-logo span{color:#7c3aed}.fn-auth-tag{font-size:10px;color:#8f8f8f;margin-top:3px}
.fn-auth-heading{text-align:center;margin-bottom:24px}.fn-auth-heading h1{margin:0 0 8px;font-size:27px;line-height:1.15;color:#fff}.fn-auth-heading p{margin:0;color:#999;font-size:14px}
.fn-auth-choices{display:grid;gap:12px}.fn-auth-choice{position:relative;width:100%;display:flex;align-items:center;gap:14px;text-align:left;padding:17px 16px;border-radius:18px;border:1px solid #2d2d2d;background:#121212;color:#fff;cursor:pointer;transition:.2s ease;box-sizing:border-box}.fn-auth-choice:hover{border-color:rgba(124,58,237,.55);transform:translateY(-1px)}.fn-auth-choice.is-selected{border-color:#7c3aed;background:linear-gradient(135deg,rgba(124,58,237,.13),rgba(255,255,255,.025));box-shadow:inset 0 0 0 1px rgba(124,58,237,.08)}.fn-auth-choice-icon{font-size:25px;width:35px;text-align:center}.fn-auth-choice-copy{display:flex;flex-direction:column;gap:5px;flex:1}.fn-auth-choice-copy strong{font-size:14px}.fn-auth-choice-copy small{font-size:11px;color:#9b9b9b;line-height:1.45}.fn-auth-radio{width:18px;height:18px;border:1px solid #555;border-radius:50%;position:relative}.is-selected .fn-auth-radio{border-color:#7c3aed}.is-selected .fn-auth-radio:after{content:"";position:absolute;width:8px;height:8px;left:4px;top:4px;border-radius:50%;background:#7c3aed}
.fn-auth-google-wrap{margin-top:22px;text-align:center}.fn-auth-google-label{font-size:11px;color:#888;margin-bottom:10px}.fn-auth-google{min-height:44px;display:flex;justify-content:center;align-items:center}.fn-auth-google .g_id_signin{margin:0 auto}.fn-auth-google-fallback{display:none;font-size:12px;color:#b9b9b9;padding:14px;border-radius:12px;background:#171717}.fn-auth-google:empty+.fn-auth-google-fallback{display:block}.fn-auth-terms{text-align:center;color:#666;font-size:9px;line-height:1.5;margin:20px 12px 0}
@media(max-width:480px){.fn-auth-shell{padding:16px 10px;min-height:100svh}.fn-auth-card{padding:25px 17px 21px;border-radius:22px}.fn-auth-heading h1{font-size:23px}.fn-auth-choice{padding:15px 12px}.fn-auth-choice-copy small{font-size:10px}}

/* 1.0.1 prominent Google CTA */
.fn-auth-google-wrap{margin-top:26px}.fn-auth-google-label{font-size:10px;font-weight:900;letter-spacing:2px;color:#7c3aed;margin-bottom:12px;text-shadow:0 0 10px rgba(124,58,237,.35)}.fn-auth-google{position:relative;min-height:54px;display:flex;align-items:center;justify-content:center;padding:4px;border-radius:16px;background:linear-gradient(90deg,rgba(124,58,237,.9),rgba(255,255,255,.95),rgba(124,58,237,.9));box-shadow:0 0 0 1px rgba(124,58,237,.7),0 0 18px rgba(124,58,237,.35),0 0 42px rgba(124,58,237,.18);animation:fnAuthGlow 2s ease-in-out infinite}.fn-auth-google iframe,.fn-auth-google>div{max-width:100%}.fn-auth-google:before{content:"";position:absolute;inset:-2px;border-radius:18px;pointer-events:none;box-shadow:0 0 22px rgba(124,58,237,.32)}@keyframes fnAuthGlow{0%,100%{box-shadow:0 0 0 1px rgba(124,58,237,.65),0 0 16px rgba(124,58,237,.3),0 0 30px rgba(124,58,237,.12)}50%{box-shadow:0 0 0 1px rgba(221,214,254,.95),0 0 24px rgba(124,58,237,.55),0 0 50px rgba(124,58,237,.24)}}
