.loginPage{background:linear-gradient(180deg, #faf1e6 0%, var(--dashboard-bg) 54%, #f3e7d6 100%);min-height:100dvh;color:var(--dashboard-ink);font-family:var(--dashboard-font-sans);padding:22px 32px 60px}.loginPage__header{justify-content:space-between;align-items:center;gap:16px;width:min(1100px,100%);margin:0 auto;display:flex}.loginPage__headerActions{justify-content:flex-end;align-items:center;gap:14px;min-width:0;display:flex}.loginPage__brand{--hello-bonjour-logo-width:7rem;--hello-bonjour-logo-mobile-width:2rem;min-height:32px;color:var(--dashboard-ink);align-items:center;gap:10px;display:inline-flex}.loginPage__brandMark{flex:none;width:18px;height:16px;position:relative}.loginPage__brandBubble{border-radius:999px;display:block;position:absolute}.loginPage__brandBubble:after{content:"";background:inherit;border-radius:1px;width:5px;height:5px;position:absolute;bottom:-2px;left:2px;transform:rotate(42deg)}.loginPage__brandBubble--primary{background:var(--dashboard-primary);width:10px;height:10px;top:1px;left:0}.loginPage__brandBubble--secondary{background:#584438bd;width:9px;height:9px;top:4px;right:0}.loginPage__brandWordmark{font-family:var(--dashboard-font-display);letter-spacing:0;font-size:24px;line-height:1}.loginPage__languageToggle{flex:none}.loginPage__main{grid-template-columns:minmax(0,1.05fr) minmax(380px,1.3fr);align-items:center;gap:48px;width:min(1100px,100%);min-height:calc(100dvh - 120px);margin:0 auto;display:grid}.loginPage__lead{padding:8px 0}.loginPage__eyebrow{letter-spacing:0;text-transform:uppercase;color:var(--dashboard-primary);align-items:center;gap:8px;margin:0 0 16px;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace;font-size:11px;font-weight:700;display:inline-flex}.loginPage__eyebrow span{background:var(--dashboard-primary);border-radius:999px;width:6px;height:6px}.loginPage__leadTitle{font-family:var(--dashboard-font-display);letter-spacing:0;color:var(--dashboard-ink);margin:0 0 16px;font-size:54px;line-height:1}.loginPage__leadTitle em{color:var(--dashboard-primary);font-style:italic}.loginPage__leadDescription{max-width:40ch;color:var(--dashboard-ink-soft);margin:0 0 32px;font-size:16px;line-height:1.6}.loginPage__quote{border-left:3px solid var(--dashboard-primary);max-width:42ch;color:var(--dashboard-ink-soft);margin:28px 0 0;padding:4px 0 4px 16px;font-size:14px;line-height:1.55}.loginPage__quote span{letter-spacing:0;color:var(--dashboard-ink-muted);margin-top:8px;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace;font-size:12px;display:block}.loginPage__stats{gap:28px;margin:32px 0 0;display:flex}.loginPage__stats div,.loginPage__stats dt,.loginPage__stats dd{margin:0}.loginPage__stats dt{font-family:var(--dashboard-font-display);letter-spacing:0;color:var(--dashboard-ink);font-size:32px;line-height:1}.loginPage__stats dd{color:var(--dashboard-ink-muted);margin-top:4px;font-size:12px;line-height:1.35}.loginPage__card{border:1px solid var(--dashboard-line);border-radius:var(--dashboard-radius-xl);background:var(--dashboard-surface-raised);width:100%;box-shadow:var(--dashboard-shadow-lg);padding:44px;position:relative;overflow:hidden}.loginPage__card--centered{text-align:center}.loginPage__cardTitle{font-family:var(--dashboard-font-display);letter-spacing:0;color:var(--dashboard-ink);margin:0 0 8px;font-size:32px;line-height:1.08}.loginPage__cardDescription{color:var(--dashboard-ink-soft);margin:0 0 24px;font-size:14px;line-height:1.55}.loginPage__businessContext{border-bottom:1px solid var(--dashboard-line);text-align:left;align-items:center;gap:16px;margin:-10px 0 26px;padding-bottom:20px;display:flex}.loginPage__businessIdentity{align-items:center;gap:12px;min-width:0;display:flex}.loginPage__businessAvatar{border:1px solid var(--dashboard-line-strong);background:#fff;border-radius:14px;flex:0 0 54px;justify-content:center;align-items:center;width:54px;height:54px;display:inline-flex;overflow:hidden}.loginPage__businessAvatar img{object-fit:contain;width:100%;height:100%;padding:6px}.loginPage__businessAvatar span{color:var(--dashboard-primary);font-family:var(--dashboard-font-display);font-size:28px;line-height:1}.loginPage__businessText{min-width:0}.loginPage__businessText p{color:var(--dashboard-primary);letter-spacing:0;text-transform:uppercase;margin:0 0 2px;font-size:11px;font-weight:800;line-height:1.3}.loginPage__businessText strong{color:var(--dashboard-ink);overflow-wrap:anywhere;font-size:17px;line-height:1.2;display:block}.loginPage__businessBackLink{color:var(--dashboard-ink-soft);text-underline-offset:3px;flex:none;font-size:13px;font-weight:700;line-height:1.35;-webkit-text-decoration:underline #7a46224d;text-decoration:underline #7a46224d}.loginPage__businessBackLink:hover,.loginPage__businessBackLink:focus-visible{color:var(--dashboard-primary);outline:none;text-decoration-color:currentColor}.loginPage__providers,.loginPage__form{gap:14px;display:grid}.loginPage__ssoButton,.loginPage__primaryButton{text-align:center;white-space:normal;cursor:pointer;border-radius:999px;justify-content:center;align-items:center;gap:10px;width:100%;min-height:48px;padding:12px 18px;font-size:14px;font-weight:700;line-height:1.25;transition:background .15s,border-color .15s,box-shadow .15s,transform .12s;display:inline-flex}.loginPage__ssoButton svg,.loginPage__primaryButton svg{flex:none;width:18px;height:18px}.loginPage__ssoButton:hover:not(:disabled),.loginPage__primaryButton:hover:not(:disabled){transform:translateY(-1px)}.loginPage__ssoButton:focus-visible,.loginPage__primaryButton:focus-visible{outline:none;box-shadow:0 0 0 4px #c85a3c24}.loginPage__ssoButton:disabled,.loginPage__primaryButton:disabled{cursor:default;transform:none}.loginPage__ssoButton{border:1px solid var(--dashboard-line-strong);color:var(--dashboard-ink);background:#fff}.loginPage__ssoButton:hover:not(:disabled){background:var(--dashboard-surface-sunken,#f8f4ee);border-color:#7a462261}.loginPage__ssoButton:disabled{opacity:.68}.loginPage__primaryButton{background:var(--dashboard-primary);color:#fff;border:1px solid #0000;box-shadow:0 8px 20px -12px #c85a3c8c}.loginPage__primaryButton:hover:not(:disabled){background:var(--dashboard-primary-hover);box-shadow:0 14px 28px -14px #c85a3c99}.loginPage__primaryButton:disabled{box-shadow:none;background:#d7b8aa}.loginPage__divider{color:var(--dashboard-ink-muted);text-align:center;align-items:center;gap:12px;margin:18px 0;font-size:12px;line-height:1.4;display:flex}.loginPage__divider:before,.loginPage__divider:after{content:"";background:var(--dashboard-line);flex:1;min-width:28px;height:1px}.loginPage__fieldLabel{color:var(--dashboard-ink);margin-bottom:8px;font-size:13px;font-weight:600;display:block}.loginPage__input{border:1px solid var(--dashboard-line-strong);width:100%;height:48px;color:var(--dashboard-ink);font:inherit;background:#fff;border-radius:14px;outline:none;padding:0 16px;font-size:15px;transition:border-color .15s,box-shadow .15s,background .15s}.loginPage__input::placeholder{color:var(--dashboard-ink-muted)}.loginPage__input:focus{border-color:var(--dashboard-primary);box-shadow:0 0 0 4px #c85a3c24}.loginPage__fieldHint{color:var(--dashboard-ink-muted);margin:8px 0 0;font-size:12px;line-height:1.45}.loginPage__message{text-align:left;border-radius:12px;margin:0 0 14px;padding:10px 12px;font-size:13px;line-height:1.45}.loginPage__message--success{color:#067647;background:#ecfdf3;border:1px solid #abefc6}.loginPage__message--error{color:#b42318;background:#fef3f2;border:1px solid #f4b6af}.loginPage__emailIcon{background:linear-gradient(135deg, #fff5ec 0%, var(--dashboard-primary-soft) 100%);width:64px;height:64px;color:var(--dashboard-primary);border:1px solid #c85a3c40;border-radius:20px;justify-content:center;align-items:center;margin:0 auto 20px;display:inline-flex;position:relative}.loginPage__emailIcon svg{width:30px;height:30px}.loginPage__emailAddress{background:var(--dashboard-surface-sunken,#f8f4ee);max-width:100%;color:var(--dashboard-ink);overflow-wrap:anywhere;border-radius:6px;padding:1px 8px;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace;font-size:13px;font-weight:600;display:inline-block}.loginPage__emailTips{border:1px dashed var(--dashboard-line);background:var(--dashboard-surface-sunken,#f8f4ee);color:var(--dashboard-ink-soft);text-align:left;border-radius:14px;margin-top:24px;padding:16px;font-size:13px;line-height:1.5}.loginPage__emailTips p{color:var(--dashboard-ink);margin:0 0 8px;font-weight:700}.loginPage__emailTips ul{gap:4px;margin:0;padding-left:18px;list-style:outside;display:grid}.loginPage__resendRow{border-top:1px solid var(--dashboard-line);justify-content:space-between;align-items:center;gap:14px;margin-top:20px;padding-top:16px;display:flex}.loginPage__textButton{color:var(--dashboard-ink-soft);font:inherit;text-underline-offset:3px;cursor:pointer;background:0 0;border:0;padding:4px 2px;font-size:13px;font-weight:600;line-height:1.35;-webkit-text-decoration:underline #7a46224d;text-decoration:underline #7a46224d}.loginPage__textButton:hover:not(:disabled),.loginPage__textButton:focus-visible{color:var(--dashboard-primary);outline:none;text-decoration-color:currentColor}.loginPage__textButton:disabled{cursor:default;opacity:.58}.loginPage--customerBranded{background:linear-gradient(180deg, color-mix(in srgb, var(--login-page-bg) 72%, #fff) 0%, var(--login-page-bg) 54%, color-mix(in srgb, var(--login-secondary) 42%, #f3e7d6) 100%)}.loginPage--customerBranded .loginPage__brandBubble--primary,.loginPage--customerBranded .loginPage__eyebrow span{background:var(--login-primary)}.loginPage--customerBranded .loginPage__brandBubble--secondary{background:color-mix(in srgb, var(--login-primary) 64%, #584438)}.loginPage--customerBranded .loginPage__eyebrow,.loginPage--customerBranded .loginPage__leadTitle em,.loginPage--customerBranded .loginPage__businessText p,.loginPage--customerBranded .loginPage__businessAvatar span{color:var(--login-primary)}.loginPage--customerBranded .loginPage__quote{border-left-color:var(--login-primary)}.loginPage--customerBranded .loginPage__card,.loginPage--customerBranded .loginPage__businessContext,.loginPage--customerBranded .loginPage__businessAvatar{border-color:var(--login-border)}.loginPage--customerBranded .loginPage__card{background:linear-gradient(180deg, #fffffff5 0%, color-mix(in srgb, var(--login-stage-bg) 72%, #fff) 100%)}.loginPage--customerBranded .loginPage__primaryButton{background:var(--login-primary);color:var(--login-primary-contrast);box-shadow:0 8px 20px -12px var(--login-primary)}.loginPage--customerBranded .loginPage__primaryButton:hover:not(:disabled){background:color-mix(in srgb, var(--login-primary) 88%, #000);box-shadow:0 14px 28px -14px var(--login-primary)}.loginPage--customerBranded .loginPage__ssoButton:hover:not(:disabled),.loginPage--customerBranded .loginPage__input:focus{border-color:color-mix(in srgb, var(--login-primary) 48%, #fff)}.loginPage--customerBranded .loginPage__input:focus,.loginPage--customerBranded .loginPage__ssoButton:focus-visible,.loginPage--customerBranded .loginPage__primaryButton:focus-visible{box-shadow:0 0 0 4px color-mix(in srgb, var(--login-primary) 16%, transparent)}.loginPage--customerBranded .loginPage__textButton:hover:not(:disabled),.loginPage--customerBranded .loginPage__textButton:focus-visible,.loginPage--customerBranded .loginPage__businessBackLink:hover,.loginPage--customerBranded .loginPage__businessBackLink:focus-visible{color:var(--login-primary)}.loginPage--embedded{background:0 0;min-height:0;padding:0}.loginPage--embedded .loginPage__header{width:100%;margin-bottom:16px}.loginPage--embedded .loginPage__main{width:100%;min-height:0;display:block}.loginPage--embedded .loginPage__card{background:#fffbf5fa;border-color:#e2d4c1;padding:32px;box-shadow:0 18px 50px #2318101f}@media (max-width:880px){.loginPage{padding:18px 24px 44px}.loginPage__main{grid-template-columns:1fr;align-items:start;gap:24px;min-height:calc(100dvh - 104px);padding-top:32px}.loginPage__lead{display:none}.loginPage__card{max-width:560px;margin:0 auto;padding:32px}}@media (max-width:560px){.loginPage{padding:16px 18px 32px}.loginPage__header{align-items:flex-start}.loginPage__headerActions{flex-wrap:wrap}.loginPage__brandWordmark{font-size:22px}.loginPage__main{min-height:0;padding-top:24px}.loginPage__card{padding:28px}.loginPage__cardTitle{font-size:28px}.loginPage__resendRow,.loginPage__businessContext{flex-direction:column;align-items:flex-start}.loginPage--embedded .loginPage__card{padding:26px}}
