/* EnFavori — one restrained corporate auth surface across all account types.
   Only public auth pages opt in with --clean classes; never changes member/partner panels. */
:where(.efa--clean,.efapply--clean,.efm-auth--clean){
  --efc-navy:#142844;--efc-muted:#52677d;--efc-line:#d9e3ed;
  --efc-accent:#087d73;
  background:#f4f7fa;
  color:var(--efc-navy);
  padding:clamp(22px,4.4vw,56px) 16px clamp(42px,6vw,76px);
}
.efa--clean.efa--partner{--efc-accent:#92631d}
.efa--clean.efa--creator,.efapply--clean{--efc-accent:#087d73}
.efm-auth--clean.efm-auth--member{--efc-accent:#306cb1}
.efa--clean .efa__aside,.efapply--clean .efapply__aside,.efm-auth--clean .efm-auth__aside{display:none!important}
.efa--clean .efa__card,.efa--clean .efa__card--wide,
.efapply--clean .efapply__card,.efm-auth--clean .efm-auth__shell{
  display:block!important;
  grid-template-columns:none!important;
  width:min(100%,510px);
  margin-inline:auto;
  min-height:0;
  border:1px solid var(--efc-line);
  border-top:3px solid var(--efc-accent);
  border-radius:16px;
  background:#fff;
  box-shadow:0 8px 30px rgba(20,40,68,.065);
  overflow:visible;
}
.efa--clean.efa--application .efa__card,
.efapply--clean .efapply__card{width:min(100%,850px)}
.efa--clean .efa__main,.efapply--clean .efapply__main,.efm-auth--clean .efm-auth__main{
  width:100%;max-width:none;
  display:block;
  padding:clamp(25px,4.5vw,42px);
  background:#fff;
  color:var(--efc-navy);
}
.efa--clean .efa__main h1,.efapply--clean .efapply__header h1,.efm-auth--clean .efm-auth__main h1{
  color:var(--efc-navy);
  font-size:clamp(25px,2.6vw,32px);
  letter-spacing:-.025em;
  line-height:1.2;
  font-weight:850;
  margin:0 0 8px;
}
.efa--clean .efa__kicker,.efm-auth--clean .efm-auth__kicker{color:var(--efc-accent);font-size:11px;letter-spacing:.07em;margin:0 0 10px}
.efa--clean .efa__lead,.efapply--clean .efapply__header>p,.efm-auth--clean .efm-auth__lead{
  color:var(--efc-muted);line-height:1.55;font-size:14px;margin:0 0 22px;max-width:680px;
}
.efapply--clean .efapply__shell{width:min(100%,850px)}
.efapply--clean .efapply__header{padding-bottom:17px}
.efapply--clean .efapply__section{padding:24px 0}
.efapply--clean .efapply__section-head h2{font-size:clamp(18px,2vw,22px)}
.efapply--clean .efapply__section-head p{font-size:13px}
.efapply--clean .efapply__type-clarity{font-size:12px}
.efapply--clean .efapply__submit-area{padding-top:20px}
.efapply--clean .efapply__form{gap:0}
.efa--clean .efa__form{gap:15px}
.efa--clean .efa__form .efa__field input,
.efa--clean .efa__form .efa__field textarea,
.efa--clean .efa__form .efa__field select,
.efm-auth--clean .field input{
  border-color:var(--efc-line);background:#fff;
  border-radius:9px;min-height:46px;color:var(--efc-navy);
}
.efa--clean input:focus-visible,.efa--clean textarea:focus-visible,.efa--clean select:focus-visible,
.efapply--clean input:focus-visible,.efapply--clean select:focus-visible,.efapply--clean textarea:focus-visible,
.efm-auth--clean input:focus-visible,.efa--clean button:focus-visible,.efapply--clean button:focus-visible,
.efm-auth--clean button:focus-visible{
  outline:2px solid var(--efc-accent)!important;outline-offset:2px;
}
.efa--clean .efa__submit,.efm-auth--clean .form>.btn.btn--block{
  width:100%;height:auto;min-height:48px;
  border-radius:9px;background:var(--efc-navy);border-color:var(--efc-navy);color:#fff;
  font-weight:800;box-shadow:none;
}
.efa--clean .efa__submit:hover,.efm-auth--clean .form>.btn.btn--block:hover{background:#203c5c;border-color:#203c5c}
.efa--clean .efa__alt{margin-top:20px;padding-top:17px}
.efa--clean .efa__alt p,.efm-auth--clean .auth__switch{font-size:13px;line-height:1.55}
.efa--clean .efa__alt .efa__alt-muted{display:none}
.efa--clean .efa__alt a,.efa--clean .efa__row a,.efm-auth--clean .form__link,.efm-auth--clean .auth__switch a{color:#096f78}
.efa--clean .efa__section{color:var(--efc-navy)}
.efa--clean .efa__consents{background:#f8fafc}
.efa--clean .efa__grid{gap:14px 16px}
.efm-auth--clean{display:block;min-height:0}
.efm-auth--clean .efm-auth__main{max-width:none}
.efm-auth--clean .form{gap:14px}
.efm-auth--clean .auth__switch{margin-top:20px;padding-top:16px}
.efm-auth--clean .btn-google{min-height:45px}
.efa--clean .ef-access-switch,.efapply--clean .ef-access-switch,.efm-auth--clean .ef-access-switch{
  display:block;margin:15px 0 0;padding:0;border:0;font-size:12px;text-align:center;
}
.ef-access-switch details{position:relative}
.ef-access-switch summary{display:inline-flex;align-items:center;gap:5px;justify-content:center;cursor:pointer;padding:6px;color:var(--efc-muted,#52677d);font-weight:700;list-style:none}
.ef-access-switch summary::-webkit-details-marker{display:none}
.ef-access-switch summary:after{content:'⌄';font-size:16px}
.ef-access-switch details[open] summary:after{content:'⌃'}
.ef-access-switch__links{display:flex;gap:9px 18px;justify-content:center;flex-wrap:wrap;padding:12px 8px 0}
.ef-access-switch__links a{color:var(--efc-accent,#096f78);font-size:12px;font-weight:650;text-decoration:none}
.ef-access-switch__links a:hover{text-decoration:underline}
.ef-access-switch summary:focus-visible{outline:2px solid var(--efc-accent,#118c83);outline-offset:2px}
/* One corporate login model; the three profiles differ only by restrained role themes. */
:is(.efa--clean,.efm-auth--clean).ef-auth-entry {
  --ef-auth-main:#245d9d;
  --ef-auth-hover:#1a4d83;
  --ef-auth-tint:#f0f6fd;
  --ef-auth-border:#aac7e7;
  --efc-accent:var(--ef-auth-main);
  background:linear-gradient(180deg,var(--ef-auth-tint),#f4f7fa 78%);
}
.efm-auth--clean.ef-auth-entry--member {
  --ef-auth-main:#245d9d;
  --ef-auth-hover:#1a4d83;
  --ef-auth-tint:#f0f6fd;
  --ef-auth-border:#aac7e7;
}
.efa--clean.ef-auth-entry--creator {
  --ef-auth-main:#08766d;
  --ef-auth-hover:#075e57;
  --ef-auth-tint:#edf9f6;
  --ef-auth-border:#96cfc7;
}
.efa--clean.ef-auth-entry--partner {
  --ef-auth-main:#815819;
  --ef-auth-hover:#674513;
  --ef-auth-tint:#fbf6e9;
  --ef-auth-border:#ddc799;
}
.efa--clean.ef-auth-entry .efa__card,
.efm-auth--clean.ef-auth-entry .efm-auth__shell {
  border-top:4px solid var(--ef-auth-main);
  border-radius:15px;
}
.efa--clean.ef-auth-entry .efa__kicker,
.efm-auth--clean.ef-auth-entry .efm-auth__kicker,
.efa--clean.ef-auth-entry .efa__row a,
.efm-auth--clean.ef-auth-entry .form__link {
  color:var(--ef-auth-main);
}
.efa--clean.ef-auth-entry .efa__form,
.efm-auth--clean.ef-auth-entry .form {gap:15px}
.efa--clean.ef-auth-entry .efa__submit,
.efm-auth--clean.ef-auth-entry .form>.btn.btn--block {
  min-height:50px;
  background:var(--ef-auth-main);
  border:1px solid var(--ef-auth-main);
  border-radius:9px;
  color:#fff;
  font-size:15px;
  font-weight:800;
  box-shadow:none;
}
.efa--clean.ef-auth-entry .efa__submit:hover,
.efm-auth--clean.ef-auth-entry .form>.btn.btn--block:hover {
  background:var(--ef-auth-hover);
  border-color:var(--ef-auth-hover);
}
.efa--clean.ef-auth-entry .efa__form .efa__field input,
.efm-auth--clean.ef-auth-entry .field input {
  background:#fff;
  border-color:var(--efc-line);
}
.efa--clean.ef-auth-entry :is(input,button,a):focus-visible,
.efm-auth--clean.ef-auth-entry :is(input,button,a):focus-visible {
  outline:2px solid var(--ef-auth-main)!important;
  outline-offset:2px;
}
.ef-auth-entry .ef-auth-entry__footer {
  display:block;
  margin-top:22px;
  padding-top:19px;
  border-top:1px solid var(--efc-line);
}
.ef-auth-entry .ef-auth-entry__footer-prompt {
  margin:0 0 12px;
  color:var(--efc-navy);
  font-size:13px;
  font-weight:700;
  line-height:1.5;
}
.ef-auth-entry .ef-auth-entry__footer-button {
  display:flex;
  width:100%;
  min-height:50px;
  align-items:center;
  justify-content:center;
  gap:9px;
  padding:11px 16px;
  background:#fff;
  border:1.5px solid var(--ef-auth-main);
  border-radius:9px;
  color:var(--ef-auth-main);
  font-size:14px;
  font-weight:800;
  line-height:1.4;
  text-align:center;
  text-decoration:none;
  transition:background-color .15s ease,border-color .15s ease;
}
.ef-auth-entry .ef-auth-entry__footer-button:hover {
  background:var(--ef-auth-tint);
  border-color:var(--ef-auth-hover);
  color:var(--ef-auth-hover);
  text-decoration:none;
}
.ef-auth-entry .ef-auth-entry__footer-button:focus-visible {
  outline:2px solid var(--ef-auth-main);
  outline-offset:3px;
}
@media(max-width:600px){
  .ef-auth-entry .ef-auth-entry__footer {margin-top:18px}
  .ef-auth-entry .ef-auth-entry__footer-button {min-height:48px}
}
@media(prefers-reduced-motion:reduce) {
  .ef-auth-entry .ef-auth-entry__footer-button {transition:none}
}
.efa--clean.efa--partner.efa--application .efa__consents .efa__legal-link,
.efa--clean.efa--partner.efa--application .efa__consents .efa__legal-link:visited{
  color:var(--ef-auth-main);
  font-weight:800;
}
.efa--clean.efa--partner.efa--application .efa__consents .efa__legal-link:hover{
  color:var(--ef-auth-hover);
}
/* Shared sign-in return action on application forms; inherits the account theme. */
.ef-auth-entry .ef-auth-entry__footer--signin{
  text-align:center;
  margin-top:24px;
}
.ef-auth-entry .ef-auth-entry__footer--signin .ef-auth-entry__footer-prompt{
  text-align:center;
  font-size:14px;
  margin-bottom:13px;
}
.ef-auth-entry .ef-auth-entry__footer-button--solid,
.ef-auth-entry .ef-auth-entry__footer-button--solid:visited{
  background:var(--ef-auth-main);
  border-color:var(--ef-auth-main);
  color:#fff;
}
.ef-auth-entry .ef-auth-entry__footer-button--solid:hover{
  background:var(--ef-auth-hover);
  border-color:var(--ef-auth-hover);
  color:#fff;
}
/* Public header on auth routes respects the current realm, not creator defaults. */
.efhd__publish.efhd__publish--auth-member{
  background:#245d9d;border-color:#245d9d;color:#fff;
}
.efhd__publish.efhd__publish--auth-member:hover{
  background:#1a4d83;border-color:#1a4d83;
}
.efhd__publish.efhd__publish--auth-creator{
  background:#08766d;border-color:#08766d;color:#fff;
}
.efhd__publish.efhd__publish--auth-creator:hover{
  background:#075e57;border-color:#075e57;
}
.efhd__publish.efhd__publish--auth-partner{
  background:#815819;border-color:#815819;color:#fff;
}
.efhd__publish.efhd__publish--auth-partner:hover{
  background:#674513;border-color:#674513;
}
/* Cloudflare Turnstile: neutral widget surface across all public account realms. */
:is(.efa--clean,.efapply--clean,.efm-auth--clean) .ef-turnstile {
  width:100%;
  max-width:100%;
  min-width:0;
  display:grid;
  justify-items:start;
  gap:9px;
  margin:15px 0 12px;
}
:is(.efa--clean,.efapply--clean,.efm-auth--clean) .ef-turnstile .cf-turnstile {
  width:100%;
  max-width:100%;
  min-width:0;
}
:is(.efa--clean,.efapply--clean,.efm-auth--clean) .ef-turnstile__error {
  margin:0;
  font-size:13px;
  line-height:1.45;
  color:#b42318;
  font-weight:650;
}
/* Shared return-to-login system for signup, forgot-password and reset pages. */
:is(.efm-auth--clean,.efa--clean).ef-auth-recovery{
  --ef-auth-return-color:#245d9d;
  --ef-auth-return-hover:#1a4d83;
  --ef-auth-return-tint:#f0f6fd;
  --efc-accent:var(--ef-auth-return-color);
  background:linear-gradient(180deg,var(--ef-auth-return-tint),#f4f7fa 80%);
}
.efa--clean.ef-auth-recovery--creator{
  --ef-auth-return-color:#08766d;
  --ef-auth-return-hover:#075e57;
  --ef-auth-return-tint:#edf9f6;
}
.efa--clean.ef-auth-recovery--partner{
  --ef-auth-return-color:#815819;
  --ef-auth-return-hover:#674513;
  --ef-auth-return-tint:#fbf6e9;
}
.efa--clean.ef-auth-recovery .efa__card,
.efm-auth--clean.ef-auth-recovery .efm-auth__shell{
  border-top:4px solid var(--ef-auth-return-color);
}
.efa--clean.ef-auth-recovery .efa__kicker,
.efm-auth--clean.ef-auth-recovery .efm-auth__kicker{
  color:var(--ef-auth-return-color);
}
.efa--clean.ef-auth-recovery .efa__submit,
.efm-auth--clean.ef-auth-recovery .form > .btn.btn--block{
  background:var(--ef-auth-return-color);
  border-color:var(--ef-auth-return-color);
  min-height:50px;
  color:#fff;
}
.efa--clean.ef-auth-recovery .efa__submit:hover,
.efm-auth--clean.ef-auth-recovery .form > .btn.btn--block:hover{
  background:var(--ef-auth-return-hover);
  border-color:var(--ef-auth-return-hover);
}
.ef-auth-recovery .ef-auth-return{
  display:block;
  margin-top:22px;
  padding-top:20px;
  border-top:1px solid #d9e3ed;
  text-align:center;
}
.ef-auth-recovery .ef-auth-return__prompt{
  margin:0 0 13px;
  color:#142844;
  font-size:14px;
  line-height:1.5;
  font-weight:700;
}
.ef-auth-recovery .ef-auth-return__button,
.ef-auth-recovery .ef-auth-return__button:visited{
  display:flex;
  width:100%;
  min-height:50px;
  justify-content:center;
  align-items:center;
  gap:9px;
  padding:11px 15px;
  border:1.5px solid var(--ef-auth-return-color);
  border-radius:9px;
  background:var(--ef-auth-return-color);
  color:#fff;
  font-size:14px;
  font-weight:800;
  line-height:1.4;
  text-align:center;
  text-decoration:none;
}
.ef-auth-recovery .ef-auth-return__button:hover{
  border-color:var(--ef-auth-return-hover);
  background:var(--ef-auth-return-hover);
  color:#fff;
}
.ef-auth-recovery :is(input,button,a):focus-visible{
  outline:2px solid var(--ef-auth-return-color)!important;
  outline-offset:3px;
}
@media(max-width:600px){
  .ef-auth-recovery .ef-auth-return{margin-top:18px}
  .ef-auth-recovery .ef-auth-return__button{min-height:48px}
}
/* Creator application: one clear approved-account entry, no package upsell. */
.efapply--clean .efapply__footer--single{
  display:block;
  margin-top:24px;
  padding-top:20px;
  border-top:1px solid var(--efc-line);
}
.efapply--clean .efapply__footer-login{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:14px;
  flex-wrap:wrap;
  margin:0;
  padding:0;
  min-height:0;
  border:0;
  border-radius:0;
  background:transparent;
}
.efapply--clean .efapply__footer-login strong{
  color:var(--efc-navy);
  font-size:14px;
  font-weight:700;
}
.efapply--clean .efapply__footer-login .efapply__login-button{
  display:inline-flex;
  width:100%;
  align-items:center;
  justify-content:center;
  min-height:50px;
  padding:10px 17px;
  border:1px solid var(--efc-navy);
  border-radius:9px;
  background:var(--efc-navy);
  color:#fff;
  font-size:13px;
  font-weight:750;
  line-height:1.35;
  text-align:center;
  text-decoration:none;
}
.efapply--clean .efapply__footer-login .efapply__login-button:hover{
  border-color:#203c5c;
  background:#203c5c;
}
.efapply--clean .efapply__footer-login .efapply__login-button:focus-visible{
  outline:2px solid var(--efc-accent);
  outline-offset:3px;
}
@media(max-width:600px){
  .efapply--clean .efapply__footer-login{align-items:stretch}
  .efapply--clean .efapply__footer-login .efapply__login-button{width:100%}
}
@media(max-width:600px){
  :where(.efa--clean,.efapply--clean,.efm-auth--clean){padding:18px 12px 38px}
  .efa--clean .efa__main,.efapply--clean .efapply__main,.efm-auth--clean .efm-auth__main{padding:25px 20px}
  .efa--clean .efa__card,.efapply--clean .efapply__card,.efm-auth--clean .efm-auth__shell{border-radius:12px}
  .efa--clean .efa__grid,.efapply--clean .efapply__grid{grid-template-columns:1fr}
}
@media(prefers-reduced-motion:reduce){.efa--clean *,.efapply--clean *,.efm-auth--clean *{transition:none!important}}
