:root{
  --fig-bg:#f2f3f0;
  --fig-card:#ffffff;
  --fig-ink:#16181a;
  --fig-muted:#6a7076;
  --fig-faint:#9aa0a6;
  --fig-line:#e3e5e1;
  --fig-line-soft:#eef0ec;
  --fig-primary:#7c1d2e;
  --fig-primary-dark:#641625;
  --fig-primary-tint:#fbeef0;
  --fig-primary-tint-2:#f4dde1;
  --fig-success:#157f52;
  --fig-success-tint:#e6f4ec;
  --fig-danger:#c0342b;
  --fig-danger-tint:#fceceb;
  --fig-font:'Plus Jakarta Sans',-apple-system,BlinkMacSystemFont,'Segoe UI',Roboto,sans-serif;
  --fig-r-sm:10px;
  --fig-r:14px;
  --fig-r-lg:20px;
  --fig-shadow:0 1px 2px rgba(20,22,24,.04),0 18px 48px -28px rgba(20,22,24,.38);
}

*,*::before,*::after{box-sizing:border-box}
html{-webkit-text-size-adjust:100%;text-size-adjust:100%;background:var(--fig-bg)}
html,body.figueriana-login-body{margin:0;min-height:100%;width:100%}
body.figueriana-login-body{
  min-height:100vh;
  min-height:100dvh;
  min-height:var(--figueriana-vh,100dvh);
  overflow-x:hidden;
  display:flex;
  align-items:center;
  justify-content:center;
  padding:max(24px,env(safe-area-inset-top)) max(18px,env(safe-area-inset-right)) max(24px,env(safe-area-inset-bottom)) max(18px,env(safe-area-inset-left));
  background:
    radial-gradient(circle at 50% -20%,rgba(124,29,46,.06),transparent 42%),
    var(--fig-bg);
  color:var(--fig-ink);
  font-family:var(--fig-font);
  font-size:16px;
  line-height:1.5;
  -webkit-font-smoothing:antialiased;
}

.figueriana-login-wrap{width:100%;max-width:430px;margin:auto}
.figueriana-login-card{
  width:100%;
  min-width:0;
  padding:34px;
  overflow:hidden;
  background:var(--fig-card);
  border:1px solid var(--fig-line);
  border-radius:var(--fig-r-lg);
  box-shadow:var(--fig-shadow);
}

.figueriana-brand{
  display:flex;
  align-items:center;
  gap:11px;
  min-width:0;
  margin:0 0 30px;
}
.figueriana-brand-compact{margin-bottom:24px}
.figueriana-brand-mark{
  display:grid;
  place-items:center;
  flex:0 0 38px;
  width:38px;
  height:38px;
  border-radius:11px;
  background:var(--fig-primary);
  color:#fff;
  font-size:18px;
  font-weight:800;
  line-height:1;
}
.figueriana-brand-copy{display:flex;align-items:baseline;gap:8px;min-width:0;line-height:1}
.figueriana-brand-copy strong{margin:0;color:var(--fig-ink);font-size:18px;font-weight:800;letter-spacing:-.02em;line-height:1}
.figueriana-brand-copy span{color:var(--fig-faint);font-size:13px;font-weight:500;line-height:1}
.figueriana-brand-logo{display:block;max-width:180px;max-height:54px;width:auto;height:auto;object-fit:contain}

.figueriana-eyebrow{
  margin:0 0 8px;
  color:var(--fig-primary);
  font-size:11px;
  font-weight:800;
  letter-spacing:.08em;
  line-height:1.3;
  text-transform:uppercase;
}
.figueriana-login-title{margin:0 0 7px;color:var(--fig-ink);font-size:27px;font-weight:800;letter-spacing:-.035em;line-height:1.15}
.figueriana-login-title.small{font-size:25px}
.figueriana-login-sub{max-width:36ch;margin:0;color:var(--fig-muted);font-size:14px;font-weight:500;line-height:1.55}
.figueriana-login-spacer{height:22px}

.figueriana-banner{
  display:flex;
  align-items:flex-start;
  gap:9px;
  margin:19px 0 17px;
  padding:12px 13px;
  border-radius:var(--fig-r-sm);
  font-size:13px;
  font-weight:600;
  line-height:1.45;
}
.figueriana-banner svg{flex:none;margin-top:1px}
.figueriana-banner.error{background:var(--fig-danger-tint);color:#96261f}
.figueriana-banner.success{background:var(--fig-success-tint);color:var(--fig-success)}

.figueriana-login-form{display:flex;flex-direction:column;gap:15px;margin:0}
.figueriana-field{min-width:0}
.figueriana-field label{display:block;margin:0 0 7px;color:var(--fig-ink);font-size:13.5px;font-weight:700;line-height:1.3}
.figueriana-input-shell{position:relative;display:flex;align-items:center;min-width:0}
.figueriana-input-shell input{
  width:100%;
  max-width:100%;
  min-width:0;
  min-height:52px;
  margin:0;
  padding:12px 14px;
  border:1.5px solid var(--fig-line);
  border-radius:var(--fig-r-sm);
  outline:none;
  background:#fff;
  color:var(--fig-ink);
  box-shadow:none;
  font-family:var(--fig-font);
  font-size:16px !important;
  font-weight:500;
  line-height:1.35;
  -webkit-appearance:none;
  appearance:none;
  transition:border-color .15s ease,box-shadow .15s ease;
}
.figueriana-input-shell input[type=password],.figueriana-input-shell input#user_pass{padding-right:50px}
.figueriana-input-shell input::placeholder{color:#a9aeb3;font-weight:400;opacity:1}
.figueriana-input-shell input:focus{border-color:var(--fig-primary);box-shadow:0 0 0 4px rgba(124,29,46,.10)}
.figueriana-input-shell input:-webkit-autofill{box-shadow:0 0 0 1000px #fff inset;-webkit-text-fill-color:var(--fig-ink)}

.figueriana-toggle-pw{
  position:absolute;
  right:5px;
  top:50%;
  transform:translateY(-50%);
  display:grid;
  place-items:center;
  width:42px;
  height:42px;
  min-width:42px;
  min-height:42px;
  margin:0;
  padding:0;
  border:0;
  border-radius:9px;
  background:transparent;
  color:var(--fig-faint);
  cursor:pointer;
  font:inherit;
  line-height:1;
  -webkit-tap-highlight-color:transparent;
}
.figueriana-toggle-pw:hover,.figueriana-toggle-pw:focus-visible{background:var(--fig-line-soft);color:var(--fig-muted);outline:none}

.figueriana-row-between{display:flex;align-items:center;justify-content:space-between;gap:14px;min-width:0;margin-top:-1px}
.figueriana-remember{display:flex;align-items:center;gap:8px;min-height:36px;margin:0;color:var(--fig-muted);font-size:13px;font-weight:500;cursor:pointer;user-select:none;-webkit-tap-highlight-color:transparent}
.figueriana-remember input{flex:none;width:19px;height:19px;margin:0;padding:0;accent-color:var(--fig-primary)}
.figueriana-link{display:inline-flex;align-items:center;min-height:36px;color:var(--fig-primary);font-size:13px;font-weight:700;text-decoration:none}
.figueriana-link:hover,.figueriana-link:focus-visible{text-decoration:underline;outline:none}

.figueriana-submit{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:8px;
  width:100%;
  min-height:52px;
  margin:3px 0 0;
  padding:12px 20px;
  border:1px solid var(--fig-primary);
  border-radius:var(--fig-r-sm);
  background:var(--fig-primary);
  color:#fff;
  box-shadow:none;
  font-family:var(--fig-font);
  font-size:15px;
  font-weight:700;
  line-height:1.2;
  cursor:pointer;
  -webkit-appearance:none;
  appearance:none;
  transition:background .15s ease,border-color .15s ease,transform .08s ease,opacity .15s ease;
}
.figueriana-submit:hover,.figueriana-submit:focus-visible{border-color:var(--fig-primary-dark);background:var(--fig-primary-dark);outline:none}
.figueriana-submit:active{transform:scale(.988)}
.figueriana-submit:disabled,.figueriana-submit.is-loading,.figueriana-submit[aria-busy=true]{opacity:.72;cursor:not-allowed;transform:none}
.figueriana-spinner{display:none;width:15px;height:15px;border:2px solid rgba(255,255,255,.42);border-top-color:#fff;border-radius:50%;animation:figueriana-spin .7s linear infinite}
.figueriana-submit.is-loading .figueriana-spinner{display:inline-block}
@keyframes figueriana-spin{to{transform:rotate(360deg)}}

.figueriana-foot-note{margin:23px 0 0;text-align:center;color:var(--fig-faint);font-size:12.5px;font-weight:500}
.figueriana-back-row{display:inline-flex;align-items:center;gap:6px;min-height:38px;margin:0 0 18px;color:var(--fig-muted);font-size:13px;font-weight:700;text-decoration:none}
.figueriana-back-row:hover,.figueriana-back-row:focus-visible{color:var(--fig-ink);outline:none}

@media (max-width:520px){
  body.figueriana-login-body{align-items:flex-start;padding:max(14px,env(safe-area-inset-top)) max(12px,env(safe-area-inset-right)) max(18px,env(safe-area-inset-bottom)) max(12px,env(safe-area-inset-left))}
  .figueriana-login-wrap{max-width:100%;margin:auto 0}
  .figueriana-login-card{padding:27px 20px 23px;border-radius:16px}
  .figueriana-brand{margin-bottom:25px}
  .figueriana-login-title{font-size:24px}
  .figueriana-login-title.small{font-size:23px}
}

@media (max-width:370px){
  .figueriana-row-between{align-items:flex-start;flex-direction:column;gap:6px}
  .figueriana-login-card{padding-left:17px;padding-right:17px}
}

body.figueriana-login-body.figueriana-keyboard-open{align-items:flex-start;padding-top:max(10px,env(safe-area-inset-top));padding-bottom:10px}
body.figueriana-login-body.figueriana-keyboard-open .figueriana-login-wrap{margin:0 auto}

@media (prefers-reduced-motion:reduce){
  *,*::before,*::after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important}
}
