.account-main {
  min-height:calc(100svh - 74px);
  padding:clamp(108px,14vh,148px) 18px 72px;
  display:grid;
  place-items:start center;
}
.account-shell { width:min(100%,430px); }
.account-heading { margin-bottom:28px;text-align:center; }
.account-shell[data-mode="signin"] .account-heading { display:none; }
.account-eyebrow { margin:0 0 9px;color:#768090;font-size:10px;font-weight:700;letter-spacing:.09em;text-transform:uppercase; }
.account-heading h1 { margin:0;color:#15171d;font-size:clamp(29px,7vw,38px);font-weight:600;line-height:1.02;letter-spacing:-.052em; }
.account-heading > p:last-child { margin:11px 0 0;color:#737d8b;font-size:13px;line-height:1.45; }
.account-google,.account-submit {
  width:100%;min-height:54px;border:0;border-radius:999px;font:700 13px/1 var(--sans);cursor:pointer;
}
.account-google { display:flex;align-items:center;justify-content:center;gap:10px;border:1px solid rgba(21,23,29,.1);background:rgba(255,255,255,.72);color:#17191f;box-shadow:inset 0 1px 0 #fff; }
.account-google svg { width:20px;height:20px;flex:none; }
.account-divider { height:56px;display:flex;align-items:center;gap:12px;color:#8a929e;font-size:10px;text-transform:uppercase; }
.account-divider::before,.account-divider::after { content:"";height:1px;flex:1;background:rgba(21,23,29,.1); }
.account-signup-progress { margin:0 0 25px; }
.account-signup-progress__labels { margin-bottom:10px;display:flex;align-items:center;justify-content:space-between;color:#89919d;font-size:11px;font-weight:600; }
.account-signup-progress__labels span:first-child { color:#17191f; }
.account-signup-progress__labels b { margin-right:6px;font-size:9px;letter-spacing:.07em; }
.account-signup-progress__rail { height:7px;padding:2px;border-radius:3px;background:rgba(21,23,29,.08);box-shadow:inset 0 1px 2px rgba(21,23,29,.07); }
.account-signup-progress__rail i { width:50%;height:3px;display:block;border-radius:2px;background:#17191f;transition:width .48s cubic-bezier(.22,1,.36,1); }
.account-signup-progress[data-step="2"] .account-signup-progress__labels span:first-child { color:#89919d; }
.account-signup-progress[data-step="2"] .account-signup-progress__labels span:last-child { color:#17191f; }
.account-signup-progress[data-step="2"] .account-signup-progress__rail i { width:100%; }
.account-form-slider { position:relative; }
.account-form-track,.account-step { display:contents; }
.account-shell[data-mode="signup"] .account-form-slider { margin:0 -5px;padding:0 5px;overflow:hidden;transition:height .42s cubic-bezier(.22,1,.36,1); }
.account-shell[data-mode="signup"] .account-form-track { width:200%;display:flex;align-items:flex-start;transform:translateX(0);transition:transform .48s cubic-bezier(.22,1,.36,1);will-change:transform; }
.account-shell[data-mode="signup"] .account-form-track[data-step="2"] { transform:translateX(-50%); }
.account-shell[data-mode="signup"] .account-step { width:50%;padding:0 1px;display:block;flex:0 0 50%; }
.account-shell[data-mode="signup"] .account-step:first-child { padding-right:7px; }
.account-shell[data-mode="signup"] .account-step:last-child { padding-left:7px; }
.account-field { margin-bottom:18px; }
.account-profile { display:none; }
.account-verification { display:none; }
.account-shell[data-mode="signup"] .account-profile { display:block; }
.account-shell[data-mode="signup"] .account-google,.account-shell[data-mode="signup"] .account-divider { display:none; }
.account-shell[data-mode="signup"] [data-forgot-password],.account-shell[data-mode="reset"] [data-forgot-password] { display:none; }
.account-shell[data-mode="verify"] .account-google,.account-shell[data-mode="verify"] .account-divider,.account-shell[data-mode="verify"] [data-email-field],.account-shell[data-mode="verify"] [data-password-field],.account-shell[data-mode="verify"] .account-profile,.account-shell[data-mode="verify"] .account-legal,.account-shell[data-mode="verify"] .account-recover { display:none; }
.account-shell[data-mode="verify"] .account-verification { display:block; }
.account-shell[data-mode="signup"] .account-heading { margin-bottom:24px; }
.account-profile__row { display:grid;grid-template-columns:1fr 1fr;gap:10px; }
.account-profile__row .account-field { min-width:0; }
.account-field label { color:#252830;font-size:12px;font-weight:700; }
.account-field__label { min-height:24px;display:flex;align-items:flex-start;justify-content:space-between;gap:12px; }
.account-field__label button { padding:0;border:0;background:transparent;color:#757f8e;font:500 10px/1.2 var(--sans);text-decoration:underline;text-underline-offset:3px;cursor:pointer; }
.account-field input {
  width:100%;height:54px;margin-top:8px;padding:0 17px;border:1px solid rgba(21,23,29,.1);border-radius:17px;outline:0;background:rgba(255,255,255,.7);color:#15171d;font:500 13px/1 var(--sans);box-shadow:inset 0 1px 0 #fff;
}
.account-field select { width:100%;height:54px;margin-top:8px;padding:0 38px 0 15px;border:1px solid rgba(21,23,29,.1);border-radius:17px;outline:0;background-color:rgba(255,255,255,.7);color:#15171d;font:500 13px/1 var(--sans);appearance:none;background-image:linear-gradient(45deg,transparent 50%,#707784 50%),linear-gradient(135deg,#707784 50%,transparent 50%);background-position:calc(100% - 18px) 23px,calc(100% - 13px) 23px;background-size:5px 5px,5px 5px;background-repeat:no-repeat; }
.account-field select:focus { border-color:rgba(43,70,135,.42);box-shadow:0 0 0 4px rgba(67,91,149,.09),inset 0 1px 0 #fff; }
.account-verification label { display:block;color:#252830;font-size:12px;font-weight:700; }
.account-verification input { width:100%;height:66px;margin-top:9px;padding:0 18px;border:1px solid rgba(21,23,29,.12);border-radius:17px;outline:0;background:rgba(255,255,255,.76);color:#15171d;font:600 26px/1 var(--sans);letter-spacing:.28em;text-align:center;box-shadow:inset 0 1px 0 #fff; }
.account-verification input:focus { border-color:rgba(43,70,135,.42);box-shadow:0 0 0 4px rgba(67,91,149,.09),inset 0 1px 0 #fff; }
.account-verification > small { display:block;margin:10px 0 0;color:#7d8693;font-size:11px;line-height:1.4;text-align:center; }
.account-verification > small strong { color:#4f5662;font-weight:600; }
.account-verification > button { margin:12px auto 18px;display:block;padding:4px;border:0;background:transparent;color:#353943;font:600 11px/1.2 var(--sans);text-decoration:underline;text-underline-offset:3px;cursor:pointer; }
.account-verification > button:disabled { color:#8d939d;cursor:wait; }
.account-field input::placeholder { color:#9aa2ad; }
.account-field input:focus { border-color:rgba(43,70,135,.42);box-shadow:0 0 0 4px rgba(67,91,149,.09),inset 0 1px 0 #fff; }
.account-password { position:relative; }
.account-password input { padding-right:52px; }
.account-password > button { position:absolute;top:14px;right:8px;width:40px;height:40px;display:grid;place-items:center;border:0;background:transparent;color:#7b8491;cursor:pointer; }
.account-password svg { width:19px;height:19px; }
.account-field small { margin:7px 3px 0;display:block;color:#7d8693;font-size:10px; }
.account-password-strength { margin:12px 2px 0; }
.account-password-strength__head { display:flex;align-items:center;justify-content:space-between;gap:12px;color:#707987;font-size:10px;line-height:1.2; }
.account-password-strength__head strong { color:#5e6672;font-size:10px;font-weight:700; }
.account-password-strength__meter { margin-top:7px;display:grid;grid-template-columns:repeat(4,1fr);gap:5px; }
.account-password-strength__meter i { height:4px;border-radius:2px;background:#dfe3e8;transition:background-color .2s ease; }
.account-password-strength > small { margin:8px 0 0;color:#7d8693;line-height:1.35; }
.account-password-strength[data-level="1"] .account-password-strength__meter i:nth-child(-n+1) { background:#b54c57; }
.account-password-strength[data-level="2"] .account-password-strength__meter i:nth-child(-n+2) { background:#c97a3b; }
.account-password-strength[data-level="3"] .account-password-strength__meter i:nth-child(-n+3) { background:#a68227; }
.account-password-strength[data-level="4"] .account-password-strength__meter i { background:#34785a; }
.account-password-strength[data-level="1"] .account-password-strength__head strong { color:#a23e49; }
.account-password-strength[data-level="2"] .account-password-strength__head strong { color:#a6612e; }
.account-password-strength[data-level="3"] .account-password-strength__head strong { color:#80671f; }
.account-password-strength[data-level="4"] .account-password-strength__head strong { color:#26704c; }
.account-field--confirm { margin-top:-2px; }
.account-password-match { min-height:14px;line-height:1.35; }
.account-field--confirm.is-mismatch .account-password input { border-color:rgba(174,63,76,.5);box-shadow:0 0 0 4px rgba(174,63,76,.07),inset 0 1px 0 #fff; }
.account-field--confirm.is-match .account-password input { border-color:rgba(38,112,76,.38); }
.account-field--confirm.is-mismatch .account-password-match { color:#a03e49; }
.account-field--confirm.is-match .account-password-match { color:#26704c; }
.account-submit { margin-top:4px;background:#17191f;color:#fff;box-shadow:0 16px 30px -22px rgba(17,18,23,.7);transition:background-color .2s ease,transform .2s ease; }
.account-submit:hover { background:#292c34;transform:translateY(-1px); }
.account-shell[data-mode="signin"] .account-submit { background:#d4d6da;color:#17191f;box-shadow:none; }
.account-shell[data-mode="signin"] .account-submit:hover { background:#c7c9ce; }
.account-submit:disabled,.account-google:disabled { opacity:.58;cursor:wait;transform:none; }
.account-message { min-height:18px;margin:10px 4px 0;color:#a03e49;font-size:11px;line-height:1.45;text-align:center; }
.account-message.is-success { color:#26704c; }
.account-legal { max-width:370px;margin:88px auto 0;color:#858e9b;font-size:10px;line-height:1.5;text-align:center; }
.account-secondary { width:100%;min-height:50px;margin-top:10px;display:flex;align-items:center;justify-content:center;border:1px solid rgba(21,23,29,.12);border-radius:999px;background:rgba(255,255,255,.48);color:#252830;font-size:12px;font-weight:700;text-decoration:none; }
.account-shell[data-mode="signin"] .account-secondary { border-color:#17191f;background:#fff;color:#17191f; }
.account-legal a { color:#353943;text-decoration:underline;text-underline-offset:3px; }
.account-shell[data-mode="forgot"] .account-google,.account-shell[data-mode="forgot"] .account-divider,.account-shell[data-mode="forgot"] [data-password-field],.account-shell[data-mode="forgot"] .account-legal { display:none; }
.account-shell[data-mode="reset"] .account-google,.account-shell[data-mode="reset"] .account-divider,.account-shell[data-mode="reset"] [data-email-field],.account-shell[data-mode="reset"] .account-legal,.account-shell[data-mode="reset"] .account-secondary,.account-shell[data-mode="reset"] .account-recover { display:none; }
.account-shell[data-mode="recovery"] .account-google,.account-shell[data-mode="recovery"] .account-divider,.account-shell[data-mode="recovery"] [data-password-field],.account-shell[data-mode="recovery"] .account-legal,.account-shell[data-mode="recovery"] .account-secondary,.account-shell[data-mode="recovery"] .account-recover { display:none; }
.account-shell[data-mode="recovery"] .account-field { margin-bottom:8px; }
.account-google:focus-visible,.account-submit:focus-visible,.account-secondary:focus-visible,.account-field button:focus-visible { outline:3px solid rgba(67,91,149,.25);outline-offset:3px; }
@media (max-width:680px) {
  .account-main { min-height:100svh;padding:92px 22px 58px;place-items:start center; }
  .account-heading { margin-bottom:25px; }
  .account-heading h1 { font-size:29px; }
  .account-google,.account-submit,.account-field input { min-height:54px; }
  .account-field input { border-radius:18px;font-size:16px; }
  .account-field select { border-radius:18px;font-size:16px; }
  .account-verification input { border-radius:18px;font-size:26px; }
  .account-profile__row { grid-template-columns:1fr;gap:0; }
  .site-footer { margin-top:0; }
}
@media (prefers-reduced-motion:reduce) { .account-submit,.account-password-strength__meter i,.account-form-slider,.account-form-track,.account-signup-progress__rail i { transition:none; } }
