:root{--brand-background:#f5f3ed;--brand-font:#15201d;--brand-primary:#1d5c4b;--brand-warn:#a9362b;color:var(--brand-font);background:var(--brand-background);font-family:var(--brand-font-family,Inter), ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;font-synthesis:none}*{box-sizing:border-box}body{min-width:320px;min-height:100vh;margin:0}button,input{font:inherit}button{cursor:pointer}button:disabled{cursor:not-allowed;opacity:.6}.page-shell{min-height:100vh;color:var(--brand-font);background:linear-gradient(135deg, color-mix(in srgb, var(--brand-primary) 14%, transparent), transparent 46%), var(--brand-background);place-content:center;padding:32px 20px;display:grid}.login-card{border:1px solid color-mix(in srgb, var(--brand-font) 18%, transparent);width:min(100%,470px);color:var(--brand-font);background:var(--brand-background);box-shadow:0 24px 70px color-mix(in srgb, var(--brand-font) 18%, transparent);border-radius:18px;overflow:hidden}.card-top{border-bottom:1px solid color-mix(in srgb, var(--brand-font) 14%, transparent);justify-content:space-between;align-items:center;gap:20px;min-height:78px;padding:18px 26px;display:flex}.brand{min-width:0}.brand-identity{align-items:center;min-height:38px;display:flex}.brand-logo{object-fit:contain;object-position:left center;width:auto;max-width:210px;height:38px;display:block}.brand-fallback{letter-spacing:-.02em;font-family:Georgia,Times New Roman,serif;font-size:24px}.theme-toggle{border:1px solid color-mix(in srgb, var(--brand-font) 25%, transparent);min-width:0;min-height:38px;color:var(--brand-font);background:0 0;border-radius:999px;margin:0;padding:3px;display:flex}.theme-toggle button{min-height:30px;color:inherit;background:0 0;border:0;border-radius:999px;padding:0 9px;font-size:11px;font-weight:750}.theme-toggle button[aria-pressed=true]{color:var(--brand-background);background:var(--brand-primary)}.theme-toggle:disabled{opacity:.65}.visually-hidden{clip:rect(0 0 0 0);white-space:nowrap;clip-path:inset(50%);width:1px;height:1px;position:absolute;overflow:hidden}.content{padding:32px 28px 28px}.intro{margin-bottom:24px}.step,.field-help,.success-message,.notice-message{margin:0}.step{color:var(--brand-primary);letter-spacing:.1em;text-transform:uppercase;font-size:12px;font-weight:800}h1{color:var(--brand-font);letter-spacing:-.025em;margin:7px 0 0;font-family:Georgia,Times New Roman,serif;font-size:clamp(29px,7vw,38px);font-weight:500;line-height:1.08}h1:focus{outline:none}.intro>p:last-child:not(.step),.loading-state p{color:color-mix(in srgb, var(--brand-font) 76%, transparent);margin:12px 0 0;font-size:15px;line-height:1.55}label{margin:18px 0 8px;font-size:14px;font-weight:750;display:block}input:not([type=checkbox]){border:1.5px solid color-mix(in srgb, var(--brand-font) 42%, transparent);width:100%;min-height:50px;color:var(--brand-font);background:var(--brand-background);border-radius:9px;outline:none;padding:0 13px}input:not([type=checkbox]):focus{border-color:var(--brand-primary);box-shadow:0 0 0 4px color-mix(in srgb, var(--brand-primary) 22%, transparent)}.password-input-group{align-items:center;display:flex;position:relative}.password-input-group input{padding-right:68px}.reveal-button{padding:4px 8px;font-size:13px;text-decoration:none;position:absolute;top:50%;right:12px;transform:translateY(-50%)}.mfa-notice{color:color-mix(in srgb, var(--brand-font) 80%, transparent);margin-top:14px;font-size:14px;line-height:1.5}.code-input{text-align:center;letter-spacing:.28em;font-variant-numeric:tabular-nums;height:62px;font-size:26px;font-weight:750}.field-help{color:color-mix(in srgb, var(--brand-font) 72%, transparent);padding-top:7px;font-size:12px}.remember-field{align-items:center;gap:9px;margin:17px 0;font-weight:600;display:flex}.remember-field input{width:18px;height:18px;accent-color:var(--brand-primary)}.primary{border:1px solid var(--brand-primary);width:100%;min-height:50px;color:var(--brand-background);background:var(--brand-primary);border-radius:9px;margin-top:18px;padding:0 16px;font-weight:800}.method-list{gap:10px;margin:0;padding:0;list-style:none;display:grid}.method-button{border:1px solid color-mix(in srgb, var(--brand-font) 25%, transparent);width:100%;min-height:66px;color:var(--brand-font);text-align:left;background:0 0;border-radius:10px;align-content:center;padding:12px 15px;display:grid}.method-button:hover,.recent-account-button:hover:not(:disabled),.theme-toggle button:hover:not(:disabled){background:color-mix(in srgb, var(--brand-primary) 10%, transparent)}.recent-account-section{margin-bottom:20px}.recent-account-heading{color:color-mix(in srgb, var(--brand-font) 75%, transparent);text-transform:uppercase;letter-spacing:.05em;margin:0 0 10px;font-size:13px;font-weight:750}.recent-account-list{gap:10px;margin:0 0 14px;padding:0;list-style:none;display:grid}.recent-account-button{border:1px solid color-mix(in srgb, var(--brand-font) 25%, transparent);width:100%;min-height:64px;color:var(--brand-font);text-align:left;background:0 0;border-radius:10px;align-items:center;gap:14px;padding:10px 14px;display:flex}.account-avatar-container{background:color-mix(in srgb, var(--brand-primary) 15%, transparent);border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:40px;height:40px;display:flex;overflow:hidden}.account-avatar{object-fit:cover;width:100%;height:100%}.account-avatar-fallback{color:var(--brand-primary);text-transform:uppercase;font-size:15px;font-weight:800}.account-details{flex-direction:column;flex:1;gap:2px;min-width:0;display:flex}.account-label{text-overflow:ellipsis;white-space:nowrap;font-size:14px;font-weight:800;overflow:hidden}.account-reauth-badge{color:color-mix(in srgb, var(--brand-warn) 85%, var(--brand-font));font-size:12px;font-weight:700}.recent-account-divider{margin-top:8px}.method-chooser-divider{color:color-mix(in srgb, var(--brand-font) 70%, transparent);text-transform:uppercase;letter-spacing:.05em;margin:18px 0 12px;font-size:12px;font-weight:750}.method-button span{font-weight:800}.method-button small{color:color-mix(in srgb, var(--brand-font) 70%, transparent);margin-top:3px}button:focus-visible,input:focus-visible{outline:3px solid color-mix(in srgb, var(--brand-primary) 48%, transparent);outline-offset:3px}.back-button,.text-button{color:var(--brand-primary);text-underline-offset:3px;background:0 0;border:0;padding:5px 0;font-size:13px;font-weight:750;text-decoration:underline}.back-button{margin-top:23px}.code-actions{justify-content:space-between;gap:14px;margin-top:18px;display:flex}.success-message,.notice-message{min-height:22px;color:var(--brand-primary);padding-top:10px;font-size:13px}.error-message{border-left:3px solid var(--brand-warn);color:var(--brand-font);background:color-mix(in srgb, var(--brand-warn) 13%, transparent);border-radius:4px;margin-top:18px;padding:11px 12px;font-size:13px;line-height:1.45}.loading-state{text-align:center;align-content:center;place-items:center;min-height:260px;display:grid}.idp-identity-box{border:1px solid color-mix(in srgb, var(--brand-font) 18%, transparent);background:color-mix(in srgb, var(--brand-font) 4%, transparent);border-radius:9px;align-items:center;gap:12px;margin-bottom:20px;padding:12px 14px;display:flex}.idp-icon-wrapper{flex-shrink:0;justify-content:center;align-items:center;width:28px;height:28px;display:flex}.idp-icon{width:24px;height:24px}.idp-provider-label{font-size:15px;font-weight:800}.spinner{border:3px solid color-mix(in srgb, var(--brand-font) 20%, transparent);border-top-color:var(--brand-primary);border-radius:50%;width:32px;height:32px;animation:.75s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}.mfa-mode-description,.mfa-placeholder-notice{color:color-mix(in srgb, var(--brand-font) 80%, transparent);margin-bottom:20px;font-size:14px;line-height:1.5}.secondary-button{border:1px solid color-mix(in srgb, var(--brand-font) 30%, transparent);width:100%;min-height:50px;color:var(--brand-font);background:0 0;border-radius:9px;margin-top:14px;padding:0 16px;font-weight:750}.secondary-button:hover:not(:disabled){background:color-mix(in srgb, var(--brand-primary) 10%, transparent)}.totp-qr{border:1px solid color-mix(in srgb, var(--brand-font) 18%, transparent);border-radius:12px;width:100%;max-width:232px;height:auto;margin:0 auto 20px;display:block}.totp-qr-background{fill:#fff}.totp-qr-modules{fill:#000}.totp-secret{margin-bottom:20px}.totp-secret-label{color:color-mix(in srgb, var(--brand-font) 80%, transparent);margin-bottom:8px;font-size:14px}.totp-secret-value{border:1px solid color-mix(in srgb, var(--brand-font) 18%, transparent);background:color-mix(in srgb, var(--brand-font) 4%, transparent);letter-spacing:.14em;overflow-wrap:anywhere;border-radius:9px;flex-wrap:wrap;gap:10px;padding:12px;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:16px;display:flex}@media (forced-colors:active){.totp-qr-background{fill:canvas}.totp-qr-modules{fill:canvastext}}@media (prefers-reduced-motion:reduce){*,:before,:after{transition-duration:.01ms;animation-duration:.01ms}}@media (forced-colors:active){.primary{border:2px solid buttontext}}@media (width<=560px){.page-shell{place-content:start center;padding:0}.login-card{min-height:100vh;box-shadow:none;border:0;border-radius:0}.card-top{flex-direction:column;align-items:flex-start;padding:17px 20px}.content{padding:28px 20px 24px}.brand-logo{max-width:180px;height:34px}}.forgot-password-button{margin-top:12px;display:block}
