.fauth,.fauth-form-wrap{--fauth-font-size:1rem;--fauth-line-height:1.55;--fauth-text-color:inherit;--fauth-label-color:inherit;--fauth-label-weight:600;--fauth-required-color:#dc2626;--fauth-field-bg:#ffffff;--fauth-field-color:#0f172a;--fauth-field-border:1px solid #cbd5e1;--fauth-field-radius:10px;--fauth-field-padding:0.75em 1em;--fauth-field-focus-color:#0369a1;--fauth-field-focus-shadow:0 0 0 3px rgba(3,105,161,0.18);--fauth-field-spacing:1.15em;--fauth-btn-bg:#0369a1;--fauth-btn-color:#ffffff;--fauth-btn-border:1px solid transparent;--fauth-btn-radius:10px;--fauth-btn-padding:0.78em 1.5em;--fauth-btn-hover-bg:#075985;--fauth-btn-hover-color:#ffffff;--fauth-btn-shadow:0 1px 2px rgba(16,24,40,0.06);--fauth-btn-hover-shadow:0 4px 12px rgba(16,24,40,0.12);--fauth-link-color:#0369a1;--fauth-link-hover-color:#075985;--fauth-radius:12px;--fauth-card-bg:#ffffff;--fauth-card-border:1px solid #e2e8f0;--fauth-card-radius:14px;--fauth-card-padding:28px;--fauth-card-shadow:0 1px 3px rgba(16,24,40,0.06),0 10px 30px rgba(16,24,40,0.05);--fauth-error-bg:#fef2f2;--fauth-error-color:#991b1b;--fauth-error-border:#dc2626;--fauth-msg-bg:#f0f9ff;--fauth-msg-color:#0c4a6e;--fauth-msg-border:#0ea5e9;--fauth-description-color:#6b7280;--fauth-strength-text-color:#374151}.fauth-form-wrap{display:block;width:100%;max-width:100%;min-width:0;box-sizing:border-box;margin-left:auto;margin-right:auto}.fauth{font-size:var(--fauth-font-size);line-height:var(--fauth-line-height);color:var(--fauth-text-color)}.fauth *,.fauth *::before,.fauth *::after{box-sizing:border-box}.fauth-form{display:block;width:100%;box-sizing:border-box}.fauth-form-wrap,.fauth-form{background:var(--fauth-card-bg);border:var(--fauth-card-border);border-radius:var(--fauth-card-radius);padding:var(--fauth-card-padding);box-shadow:var(--fauth-card-shadow)}.fauth-form-wrap .fauth-form{background:none;border:0;border-radius:0;padding:0;box-shadow:none}.fauth-form-title{margin:0 0 1.25rem;line-height:1.3;color:var(--fauth-title-color,#0f172a)}.fauth-submit-button{width:100%}.fauth-form--preview{background:none !important;border:none !important;padding:0 !important;box-shadow:none !important;border-radius:0 !important}.fauth-errors,.fauth-messages{list-style:none;margin:0 0 1em;padding:0}.fauth-error,.fauth-message{box-shadow:0 1px 2px rgba(16,24,40,0.05);display:block;margin:0 0 0.5em;padding:0.8em 1em;border-radius:var(--fauth-radius);font-size:0.92em}.fauth-error{background:var(--fauth-error-bg);border-left:4px solid var(--fauth-error-border);color:var(--fauth-error-color)}.fauth-message{background:var(--fauth-msg-bg);border-left:4px solid var(--fauth-msg-border);color:var(--fauth-msg-color)}.fauth-field-wrap{margin-bottom:var(--fauth-field-spacing)}.fauth-label{display:block;font-weight:var(--fauth-label-weight);color:var(--fauth-label-color);margin-bottom:0.35em}.fauth .fauth-required{color:var(--fauth-required-color);margin-left:2px}.fauth-field{background:var(--fauth-field-bg);border:var(--fauth-field-border);border-radius:var(--fauth-field-radius);color:var(--fauth-field-color);display:block;padding:var(--fauth-field-padding);width:100%;font-size:inherit;transition:border-color 0.15s ease,box-shadow 0.15s ease}.fauth-field:focus,.fauth-field:focus-visible{border-color:var(--fauth-field-focus-color);box-shadow:var(--fauth-field-focus-shadow);outline:none}.fauth-description{display:block;color:var(--fauth-description-color);font-size:0.85em;margin-top:0.25em}.fauth-checkbox{accent-color:var(--fauth-field-focus-color);width:1.05em;height:1.05em;margin:0;vertical-align:-0.15em;cursor:pointer}.fauth-checkbox-label{display:inline;font-weight:normal;margin-left:0.5em;margin-bottom:0;vertical-align:middle;cursor:pointer}.fauth-submit{margin-top:0.5em}.fauth-button{background:var(--fauth-btn-bg);border:var(--fauth-btn-border);border-radius:var(--fauth-btn-radius);box-shadow:var(--fauth-btn-shadow);color:var(--fauth-btn-color);cursor:pointer;font-size:0.95rem;font-weight:600;line-height:1.4;padding:var(--fauth-btn-padding);text-decoration:none;transition:background 0.18s ease,color 0.18s ease,border-color 0.18s ease,box-shadow 0.18s ease,transform 0.18s ease}.fauth-button:hover,.fauth-button:focus{background:var(--fauth-btn-hover-bg);color:var(--fauth-btn-hover-color);box-shadow:var(--fauth-btn-hover-shadow);border:var(--fauth-btn-border);outline:none}.fauth-button:hover{transform:translateY(-1px)}.fauth-button:focus-visible{outline:2px solid currentColor;outline-offset:2px}.fauth-button:active{transform:translateY(0);box-shadow:var(--fauth-btn-shadow)}@media (prefers-reduced-motion:reduce){.fauth-button,.fauth-field{transition:none}.fauth-button:hover{transform:none}}.fauth-button[disabled]{cursor:not-allowed;opacity:0.65}.fauth-links{margin-top:0.75em;font-size:0.9em}.fauth-links a{color:var(--fauth-link-color);text-decoration:none}.fauth-links a:hover,.fauth-links a:focus{color:var(--fauth-link-hover-color);text-decoration:underline}.fauth-field-wrap--password{display:grid;grid-template-columns:1fr auto;align-items:center;column-gap:0}.fauth-field-wrap--password .fauth-label{grid-column:1 / -1;grid-row:1}.fauth-field-wrap--password .fauth-field{grid-column:1 / -1;grid-row:2;width:100%;min-width:0;padding-right:3.8em}.fauth-field-wrap--password .fauth-password-toggle{grid-column:2;grid-row:2;justify-self:end;align-self:center;margin-right:0.45em;background:transparent;border:none;padding:0.2em 0.35em;z-index:2}.fauth-password-toggle{background:#fff;border:1px solid #d0d5dd;border-radius:var(--fauth-field-radius);color:var(--fauth-link-color);cursor:pointer;font-size:0.8rem;font-weight:500;padding:0.35em 0.75em;display:inline-flex;align-items:center;flex-shrink:0;white-space:nowrap;line-height:1.4;transition:border-color 0.15s ease,color 0.15s ease,background 0.15s ease}.fauth-password-toggle:hover,.fauth-password-toggle:focus{border-color:var(--fauth-link-color);color:var(--fauth-link-hover-color);outline:none}.fauth-password-toggle:focus-visible{outline:2px solid var(--fauth-link-color);outline-offset:2px}#pass-strength-result{background:#f3f4f6;border:1px solid #e5e7eb;border-radius:var(--fauth-field-radius);color:var(--fauth-strength-text-color);font-size:0.82em;font-weight:600;margin-bottom:0.75em;opacity:0;padding:0.45em 0.85em;transition:opacity 0.2s}#pass-strength-result.strong{background:#dcfce7;border-color:#86efac;opacity:1}#pass-strength-result.good{background:#fef9c3;border-color:#fde047;opacity:1}#pass-strength-result.bad{background:#ffedd5;border-color:#fdba74;opacity:1}#pass-strength-result.short{background:#fee2e2;border-color:#fca5a5;opacity:1}.fauth-spinner{animation:fauth-spin 0.7s linear infinite;border:2px solid rgba(255,255,255,0.4);border-top-color:#fff;border-radius:50%;display:inline-block;height:1em;margin-right:0.4em;vertical-align:middle;width:1em}@keyframes fauth-spin{to{transform:rotate(360deg)}}.fauth-sso{margin-top:10px}.fauth-sso-divider{display:flex;align-items:center;gap:0.75em;color:var(--fauth-sso-divider-text,#9aa3b2);font-size:0.78em;margin:1.25em 0 0}.fauth-sso-divider::before,.fauth-sso-divider::after{content:"";flex:1 1 auto;height:1px;background:var(--fauth-sso-divider-color,#e5e7eb)}.fauth-sso-divider span{text-transform:uppercase;letter-spacing:0.07em;font-weight:600}.fauth-google-btn{display:flex;align-items:center;justify-content:center;gap:0.6em;width:100%;box-sizing:border-box;background:var(--fauth-google-btn-bg,#ffffff);color:var(--fauth-google-btn-color,#374151);border:1px solid var(--fauth-google-btn-border,#d0d5dd);border-radius:var(--fauth-btn-radius);padding:0.66em 1.25em;font-size:0.95rem;font-weight:600;line-height:1.4;text-decoration:none;transition:border-color 0.18s ease,box-shadow 0.18s ease,background 0.18s ease}.fauth-google-btn:hover,.fauth-google-btn:focus{border-color:#b6bcc8;box-shadow:0 2px 8px rgba(16,24,40,0.08);color:var(--fauth-google-btn-color,#374151);text-decoration:none;outline:none}.fauth-google-btn:focus-visible{outline:2px solid var(--fauth-field-focus-color);outline-offset:2px}.fauth-google-icon{flex-shrink:0}.fauth-hp{display:none !important;visibility:hidden !important}.fauth-field-wrap--password .fauth-description{grid-column:1 / -1;grid-row:3}select.fauth-field{height:auto;line-height:1.5;-webkit-appearance:none;-moz-appearance:none;appearance:none;background-image:url("data:image/svg+xml;charset=US-ASCII,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8' viewBox='0 0 12 8'%3E%3Cpath fill='none' stroke='%236b7280' stroke-width='2' stroke-linecap='round' d='M1.5 1.5 6 6l4.5-4.5'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 0.9em center;padding-right:2.6em;cursor:pointer}.fauth-field:disabled{background-color:rgba(0,0,0,0.05);color:var(--fauth-description-color);cursor:not-allowed}.fauth-2fa{margin-top:24px;padding-top:20px;border-top:1px solid rgba(0,0,0,.1)}.fauth-2fa-title{margin:0 0 10px;font-size:1.1em}.fauth-2fa-status{margin:0 0 12px}.fauth-2fa-on{color:#1a7f37;font-weight:600}.fauth-2fa-off{color:#646970}.fauth-2fa-qr{margin:12px 0;max-width:200px}.fauth-2fa-qr svg{width:100%;height:auto;display:block}.fauth-2fa-key{margin:10px 0}.fauth-2fa-key code{display:inline-block;padding:8px 12px;background:rgba(0,0,0,.05);border-radius:6px;font-size:1.05em;letter-spacing:1px}.fauth-2fa-steps{margin:0 0 12px;padding-left:0;list-style-position:inside}.fauth-2fa-codes{margin:12px 0;padding:14px;background:rgba(0,0,0,.04);border-radius:8px}.fauth-2fa-code-list{list-style:none;margin:8px 0 0;padding:0;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:6px}.fauth-2fa-code-list code{font-size:1.05em;letter-spacing:1px}.fauth-2fa-code-actions{display:flex;flex-wrap:wrap;gap:10px;margin-top:14px}.fauth-2fa-code-btn{flex:1 1 140px;display:inline-block;cursor:pointer;font:inherit;font-weight:600;font-size:.95rem;line-height:1.4;padding:.72em 1.2em;border-radius:var(--fauth-btn-radius,10px);border:1px solid rgba(0,0,0,.14);background:rgba(0,0,0,.06);color:inherit;text-align:center;transition:background .18s ease,color .18s ease,border-color .18s ease}.fauth-2fa-code-btn:hover,.fauth-2fa-code-btn:focus{background:rgba(0,0,0,.1);outline:none}.fauth-2fa .fauth-submit{margin-top:12px}.fauth-2fa-actions{margin-top:14px}.fauth-2fa-cancel{margin-top:10px}.fauth-link-button{display:inline-block;background:none!important;border:0!important;box-shadow:none!important;color:var(--fauth-link-color,#b32d2e);text-decoration:underline;cursor:pointer;padding:4px 2px;font:inherit;line-height:1.4}.fauth-link-button:hover,.fauth-link-button:focus{transform:none;outline:none;text-decoration:none;color:var(--fauth-link-hover-color,#8a2222)}.fauth-button-secondary{background:transparent;color:var(--fauth-btn-bg);border:1px solid var(--fauth-btn-bg);box-shadow:none}.fauth-button-secondary:hover,.fauth-button-secondary:focus{background:var(--fauth-btn-bg);color:var(--fauth-btn-color);box-shadow:none}.fauth-passkeys{margin-top:24px;padding-top:20px;border-top:1px solid rgba(0,0,0,.1)}.fauth-passkeys-title{margin:0 0 10px;font-size:1.1em}.fauth-passkeys-intro{margin:0 0 12px}.fauth-passkeys-note{margin:0 0 12px;color:#646970}.fauth-passkey-items{list-style:none;margin:0 0 12px;padding:0}.fauth-passkey-item{display:flex;align-items:center;gap:8px;flex-wrap:wrap;padding:8px 0;border-bottom:1px solid rgba(0,0,0,.06)}.fauth-passkey-name{font-weight:600}.fauth-passkey-meta{color:#646970;font-size:.9em}.fauth-passkey-remove{margin-left:auto}.fauth-passkeys-empty{margin:0 0 12px;color:#646970}.fauth-passkey-status{margin:0;min-height:0}.fauth-passkey-status:not(:empty){margin-top:8px}.fauth-passkey-error{color:#b32d2e}.fauth-passkey-login{margin-top:10px}.fauth-passkey-login .fauth-passkey-signin{width:100%}.fauth-passkey-signin{display:flex;align-items:center;justify-content:center;gap:.5em}.fauth-passkey-icon{flex-shrink:0}
.fauth-form-account,.fauth-form-wrap:has(.fauth-form-account){background:none!important;border:0!important;border-radius:0!important;padding:0!important;box-shadow:none!important}.fauth-form-account .fauth-inner-form{display:flex;flex-direction:column;gap:20px}.fauth-card{background:var(--fauth-card-bg);border:var(--fauth-card-border);border-radius:var(--fauth-card-radius);padding:var(--fauth-card-padding);box-shadow:var(--fauth-card-shadow)}.fauth-card-head{margin:0 0 18px}.fauth-card-title{margin:0 0 4px;font-size:1.15em;font-weight:700;color:var(--fauth-title-color,#0f172a)}.fauth-card-sub{margin:0;color:#64748b;font-size:.92em;line-height:1.5}.fauth-row{display:grid;grid-template-columns:1fr 1fr;gap:16px;align-items:start}.fauth-row .fauth-field-wrap{margin:0}@media (max-width:600px){.fauth-row{grid-template-columns:1fr}}.fauth-button-inline{width:auto;min-width:150px}.fauth-passkeys,.fauth-2fa,.fauth-sessions{margin:20px 0 0;padding:var(--fauth-card-padding);background:var(--fauth-card-bg);border:var(--fauth-card-border);border-radius:var(--fauth-card-radius);box-shadow:var(--fauth-card-shadow)}.fauth-2fa-title,.fauth-passkeys-title,.fauth-sessions-title{margin:0 0 4px;font-size:1.15em;font-weight:700;color:var(--fauth-title-color,#0f172a)}.fauth-2fa-sub,.fauth-sessions-sub,.fauth-passkeys-intro{margin:0 0 18px;color:#64748b;font-size:.92em;line-height:1.5}.fauth-sessions-links{margin-top:6px}.fauth-links-sep{color:#94a3b8}.fauth-sessions .fauth-description{display:block;margin:6px 0 4px;color:#64748b}
.fauth-session-items{list-style:none;margin:0 0 16px;padding:0;display:flex;flex-direction:column;gap:8px}.fauth-session-item{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap;padding:12px 14px;border:var(--fauth-card-border);border-radius:10px}.fauth-session-device{font-weight:600;color:var(--fauth-title-color,#0f172a)}.fauth-session-current{font-weight:400;font-size:.85em;color:var(--fauth-btn-bg,#0369a1);margin-left:4px}.fauth-session-meta{color:#64748b;font-size:.9em}