.account-page{
  min-height:calc(100vh - 76px);
  padding:64px 20px;
  background:
    radial-gradient(circle at 15% 15%,rgba(37,99,235,.12),transparent 34%),
    radial-gradient(circle at 85% 20%,rgba(16,185,129,.10),transparent 30%),
    #f5f8fc;
}
.account-shell{
  width:min(100%,520px);
  margin:0 auto;
}
.account-back{
  display:inline-block;
  margin-bottom:22px;
  color:#35516f;
  font-weight:800;
  text-decoration:none;
}
.account-card{
  background:#fff;
  border:1px solid #e4ebf3;
  border-radius:26px;
  padding:34px;
  box-shadow:0 24px 70px rgba(20,42,70,.12);
}
.account-card h1{
  margin:0 0 8px;
  color:#10233f;
  font-size:34px;
}
.account-subtitle{
  margin:0 0 26px;
  color:#64748b;
  line-height:1.55;
}
.account-tabs{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:8px;
  padding:6px;
  border-radius:14px;
  background:#edf3f9;
  margin-bottom:24px;
}
.account-tab{
  border:0;
  padding:11px 12px;
  border-radius:10px;
  background:transparent;
  color:#52657a;
  font:inherit;
  font-weight:900;
  cursor:pointer;
}
.account-tab.active{
  background:#fff;
  color:#10233f;
  box-shadow:0 4px 14px rgba(15,35,60,.08);
}
.account-field{
  display:block;
  margin-bottom:16px;
}
.account-field span{
  display:block;
  margin-bottom:7px;
  color:#263b52;
  font-size:14px;
  font-weight:800;
}
.account-field input{
  width:100%;
  box-sizing:border-box;
  border:1px solid #ccd8e5;
  border-radius:12px;
  padding:13px 14px;
  font:inherit;
  color:#10233f;
  background:#fff;
  outline:none;
}
.account-field input:focus{
  border-color:#2563eb;
  box-shadow:0 0 0 3px rgba(37,99,235,.10);
}
.account-primary{
  width:100%;
  border:0;
  border-radius:12px;
  padding:13px 16px;
  background:#10233f;
  color:#fff;
  font:inherit;
  font-weight:900;
  cursor:pointer;
}
.account-primary:disabled{opacity:.55;cursor:wait}
.account-secondary{
  display:block;
  width:100%;
  margin-top:12px;
  padding:10px;
  border:0;
  background:transparent;
  color:#2563eb;
  font:inherit;
  font-weight:800;
  cursor:pointer;
}
.account-message{
  display:none;
  margin:18px 0 0;
  padding:12px 14px;
  border-radius:12px;
  background:#eef5ff;
  color:#244a78;
  line-height:1.45;
  font-size:14px;
}
.account-message.error{
  background:#fff1f0;
  color:#9f2d25;
}
.account-message.success{
  background:#ecfdf3;
  color:#17653a;
}
.account-note{
  margin-top:22px;
  color:#718096;
  font-size:12px;
  line-height:1.55;
  text-align:center;
}
.account-signed{
  display:none;
  text-align:center;
}
.account-signed .check{
  width:58px;
  height:58px;
  display:grid;
  place-items:center;
  margin:0 auto 16px;
  border-radius:50%;
  background:#e8f8ef;
  color:#17834a;
  font-size:28px;
  font-weight:900;
}
@media(max-width:620px){
  .account-page{padding:34px 14px}
  .account-card{padding:25px 20px;border-radius:22px}
  .account-card h1{font-size:29px}
}

/* V14 account page sticky-header clearance */
.account-page{
  padding-top:88px;
}

@media(max-width:620px){
  .account-page{
    padding-top:62px;
  }
}
