Manage Account Security screen (v2) CSS

This screen appears after a user clicks Account Security on the manageProfile screen.

You can also display a Back to App button on this screen by including the redirect_uri parameter when opening the user profile. For example:

https://v1.api.us.janrain.com/e0a70b4f-1eef-4856-bcdb-f050fee66aae/auth-ui/profile?client\_id=70a45721-c6ef-4d7c-91ff-f14e9346b8b6&redirect\_uri=https://identitydocs.akamai.com

If the user clicks the Back to App button, he or she is sent to the URL specified by the redirect_uri parameter.

 The Back to App button (available only in Hosted Login v2), looks like this:

See [Add custom CSS stylesheets for information on overriding the default CSS settings.


Login page HTML

<div style="display:none;" id="manageProfile\_security" class="screen">
  <div class="manage-screen content-wrapper">
    <div class="profile-header-actions">
  <div class="return-to-app-container">
  </div>
  <div class="logout-container">
    <button type="button" class="aic-control logout" data-action="logout">{* textLogout *}</button>
  </div>
</div>
<div class="profile-header">
  <div class="profile-header-image user-photo-container" data-render-user-photo="large"></div>
  <div class="profile-header-text">
    <h1>{* dataDisplayName *}</h1>
    <h3>{* dataEmailAddress *}</h3>
  </div>
</div>
    <h1 class="screen-heading">{* textAccountScreensHeading *}</h1>
    <div class="profile-management-container profile-security">
      <div class="profile-management-card large">
        <div class="card-heading aic-control" data-render-screen="manageProfile">
          <h1><span class="chevron left"></span><span class="profile-preferences card-icon"></span>{* textAccountSecurity *}</h1>
        </div>
        <div class="card-body">
          <section class="profile">
            <article class="email">
              <div id="profileEmail" class="profile-card">
                <div class="profile-show">
                  <h2>Email Address</h2>
                    <p class=" profile-preferences card-icon " id="existingEmail">
                      gmstemp@hotmail.com
                        <span class="verified-identifier" id="verifiedEmail">{* textEmailVerified *}</span>
                    </p>
                </div>
                <div class="profile-actions">
<div class="profile-action-icons" data-group="profileEmailAction">
                    <button type="button" class="aic-icon icon-edit" value="edit"></button>
                  </div>
                </div>
              </div>
              <div id="profileEmailAction" class="action-card">
                <aside class="profile-action-icons" data-group="profileEmailAction">
                  <button type="button" value="close" class="aic-icon icon-subtract"></button>
                </aside>
                <div id="containerChangeEmailForm" class="edit add">
                    <h2>{* textChangeEmailTitle *}</h2>
                  <p class="action-description">{* textChangeEmailFormValue *}</p>
                  <label for="changeEmailInput">{* textEmailLabel *}</label>
                  <p>
                    <input id="changeEmailInput" name="changeEmailInput" value="" type="text" class="aic-input"
                      placeholder="{* textChangeEmailPlaceholder *}" data-action="submitRequestChangeEmail"
                      data-initialize="gmstemp@hotmail.com">
                  </p>
                  <div id="errorChangeEmail"><p></p></div>
                  <button type="submit" id="submitRequestChangeEmailButton" class="aic-control" data-action="submitRequestChangeEmail">{* textChangeEmailSubmit *}</button>
                </div>
                <div id="containerChangeEmailConfirm">
                  <h2>{* textChangeEmailConfirmTitle *}</h2>
                  <p class="action-description">{* textChangeEmailConfirmValue *} <a id="changeEmailSentTo"></a
                  </p>
                  <p><label>{* textChangeEmailCodeLabel *}</label></p>
                  <p>
                  <input id="secondFactorCodeChangeEmailInput" value="" type="text" class="aic-input"
                      placeholder="{* textChangeEmailCodePlaceholder *}" data-action="submitChangeEmailCode">                 
                      </p>
                  <button type="submit" id="submitChangeEmailCodeButton" class="aic-control" data-action="submitChangeEmailCode">{* textChangeEmailCodeCodeSubmit *}</button>
                  <div id="resendCodeSecondFactorChangeEmail">
                    <p>{* textSecondFactorChangeEmailCodeResend *}
                      <a href=""view-source%3Ahttps%3A//v1.api.us.janrain.com/e0a70b4f-1eef-4856-bcdb-f050fee66aae/auth-ui/v2/login?\_\_aic\_csrf=fo3YXieocsFVRsd\_&client\_id=64430515-01ea-4f5d-82e4-c36161af0093&code\_challenge=qsPq1vY\_27mtHgxHIiIdBg6LTMGOz1OipZM2Ynn9ETA&code\_challenge\_method=S256&prompt=login&redirect\_uri=https%3A%2F%2Foidc-playground.akamai.com%2Fredirect\_uri&response\_type=code&scope=openid&state=XGW3\_EvXQQ5RqYgGqXYpMMrbFJYpXpPapBX7dvQ0ywo" style="color: rgb(149, 79, 114);text-decoration: underline;">#" class="aic-control" data-action="resendChangeEmailCode">
                      {* textSecondFactorChangeEmailCodeSendLink *}
                      </a>
                    </p>
                  </div>
                  <div id ="resendCodeSecondFactorChangeEmailInvalid">
                    <p class="aic-error">{* textSecondFactorChangeEmailCodeResendInvalid *}
                      <a href=""view-source%3Ahttps%3A//v1.api.us.janrain.com/e0a70b4f-1eef-4856-bcdb-f050fee66aae/auth-ui/v2/login?\_\_aic\_csrf=fo3YXieocsFVRsd\_&client\_id=64430515-01ea-4f5d-82e4-c36161af0093&code\_challenge=qsPq1vY\_27mtHgxHIiIdBg6LTMGOz1OipZM2Ynn9ETA&code\_challenge\_method=S256&prompt=login&redirect\_uri=https%3A%2F%2Foidc-playground.akamai.com%2Fredirect\_uri&response\_type=code&scope=openid&state=XGW3\_EvXQQ5RqYgGqXYpMMrbFJYpXpPapBX7dvQ0ywo" style="color: rgb(149, 79, 114);text-decoration: underline;">#" class="aic-control aic-error" data-action="resendChangeEmailCode">
                      {* textSecondFactorChangeEmailCodeSendLinkInvalid *}
                      </a>
                    </p>
                  </div>
                </div>
                <div id="containerChangeEmailSuccess">
                  <p class="aic-success">{* textChangeEmailCodeCodeSuccess *}</p>
                </div>
              </div>
            </article>
            <article class="phone">
              <div id="profilePhone" class="profile-card">
                <div class="profile-show">
                  <h2>{* textMobileNumberTitle *}</h2>
                </div>
                <div class="profile-actions">
                  <aside class="profile-action-icons" data-group="profilePhoneAction">
                      <button type="button" class="aic-icon icon-add" value="add"></button>
                  </aside>
                </div>
              </div>
              <div id="profilePhoneAction" class="action-card">
                <aside class="profile-action-icons" data-group="profilePhoneAction">
                  <button type="button" value="close" class="aic-icon icon-subtract"></button>
                </aside>
                <div id="containerChangeMobileNumberForm" class="edit add">
                    <h2>{* textAddMobileNumberTitle *}</h2>
                  <p class="action-description">{* textChangeMobileNumberFormValue *}</p>
                  <label>{* textMobileNumberLabel *}</label>
                  <p>
                    <input id="changeMobileNumberInput" class="aic-input"
                      type="tel" value="" name="changeMobileNumberInput" 
                      placeholder="{* textChangeMobileNumberPlaceholder *}"
                      data-action="submitRequestChangeMobileNumber"
                      data-initialize="">
                  </p>
                  <div id="errorChangeMobileNumber"><p></p></div>
                  <button type="submit" id="submitRequestChangeMobileNumberButton" class="aic-control" data-action="submitRequestChangeMobileNumber">{* textChangeMobileNumberSubmit *}</button>
                </div>
                <div id="containerChangeMobileNumberConfirm">
                  <h2>{* textChangeMobileNumberConfirmTitle *}</h2>
                  <p class="action-description">
                    {* textChangeMobileNumberConfirmValue *}
                    <span class="phone-group">
                      <span class="codesentto-tel-flag"></span>
                      <a id="changeMobileNumberSentTo"></a>
                    </span>
                  </p>
                  <p><label>{* textChangeMobileNumberCodeLabel *}</label></p>
                  <p>
                    <input id="secondFactorCodeChangeMobileNumberInput" value="" type="text" class="aic-input"
                      placeholder="{* textChangeMobileNumberCodePlaceholder *}" data-action="submitChangeMobileNumberCode">
                  </p>
                  <button type="submit" id="submitChangeMobileNumberCodeButton" class="aic-control" data-action="submitChangeMobileNumberCode">{* textChangeMobileNumberCodeCodeSubmit *}</button>
                  <div id="resendCodeSecondFactorChangeMobileNumber">
                    <p>{* textSecondFactorChangeMobileNumberCodeResend *}
                      <a href=""view-source%3Ahttps%3A//v1.api.us.janrain.com/e0a70b4f-1eef-4856-bcdb-f050fee66aae/auth-ui/v2/login?\_\_aic\_csrf=fo3YXieocsFVRsd\_&client\_id=64430515-01ea-4f5d-82e4-c36161af0093&code\_challenge=qsPq1vY\_27mtHgxHIiIdBg6LTMGOz1OipZM2Ynn9ETA&code\_challenge\_method=S256&prompt=login&redirect\_uri=https%3A%2F%2Foidc-playground.akamai.com%2Fredirect\_uri&response\_type=code&scope=openid&state=XGW3\_EvXQQ5RqYgGqXYpMMrbFJYpXpPapBX7dvQ0ywo" style="color: rgb(149, 79, 114);text-decoration: underline;">#" class="aic-control" data-action="resendChangeMobileNumberCode">
                      {* textSecondFactorChangeMobileNumberCodeSendLink *}
                      </a>
                    </p>
                  </div>
                  <div id ="resendCodeSecondFactorChangeMobileNumberInvalid">
                    <p class="aic-error">{* textSecondFactorChangeMobileNumberCodeResendInvalid *}
                      <a href=""view-source%3Ahttps%3A//v1.api.us.janrain.com/e0a70b4f-1eef-4856-bcdb-f050fee66aae/auth-ui/v2/login?\_\_aic\_csrf=fo3YXieocsFVRsd\_&client\_id=64430515-01ea-4f5d-82e4-c36161af0093&code\_challenge=qsPq1vY\_27mtHgxHIiIdBg6LTMGOz1OipZM2Ynn9ETA&code\_challenge\_method=S256&prompt=login&redirect\_uri=https%3A%2F%2Foidc-playground.akamai.com%2Fredirect\_uri&response\_type=code&scope=openid&state=XGW3\_EvXQQ5RqYgGqXYpMMrbFJYpXpPapBX7dvQ0ywo" style="color: rgb(149, 79, 114);text-decoration: underline;">#" class="aic-control aic-error" data-action="resendChangeMobileNumberCode">
                      {* textSecondFactorChangeMobileNumberCodeSendLinkInvalid *}
                      </a>
                    </p>
                  </div>
                </div>
                <div id="containerChangeMobileNumberSuccess">
                  <p class="aic-success">{* textChangeMobileNumberCodeCodeSuccess *}</p>
                </div>
                <div id="containerDeleteMobileNumberSuccess" class="delete">
                  <h2>{* textDeleteMobileNumberTitle *}</h2>
                </div>
              </div>
            </article>
            <article class="password">
              <div id="profilePassword" class="profile-card">
                <div class="profile-show">
                  <h2>Password</h2>
                  <p id="existingPassword">**************</p>
               </div>
                <div class="profile-actions">
                  <aside class="profile-action-icons" data-group="profilePasswordAction">
                    <button type="button" class="aic-icon icon-edit" value="edit"></button>
                  </aside>
                </div>
              </div>
              <div id="profilePasswordAction" class="action-card">
                <aside class="profile-action-icons" data-group="profilePasswordAction">
                  <button type="button" value="close" class="aic-icon icon-subtract"></button>
                </aside>
                <div class="add edit">
                  <h2>{* textPasswordSettings *}</h2>
                  {* #changePasswordForm *}
                    {* currentPassword *}
{* newPassword *}
{* newPasswordConfirm *}
                    <div class="form-action-buttons flex">
                      <button type="submit">{* textSaveChanges *}</button>
                      {* savedProfileMessage *}
                    </div>
                  {* /changePasswordForm *}
                </div>
              </div>
            </article>
          </section>
          <section class="integrations">
            <article class="linked-accounts">
              <div class="integration-card">
                <div class="flex-quad-header">
                  <h2>{* textLinkAccountsSettings *}</h2>
                  <p>{* textLinkAccountsDescription *}</p>
                </div>
                <div class="flex-quad-body" id="link-account-aic">
                  {* linkedAccounts *}
                  {* #linkAccountContainer *}
                  {* /linkAccountContainer *}
                  <div class="social-login-buttons link-account" data-button-prefix="{* textConnectWith *}"></div>
                </div>
              </div>
            </article>
          </section>
        </div>
      </div>
      </div>
  </div>
  <div class="footer-container">
    <div class="content-wrapper">
        <span class="help-link">{* textNeedHelp *}{* linkHelp *}</span>
        <div class="footer-text">
        {* textFooter *}
        </div>
        <div class="footer-extra-text">
        {* textFooterExtra *}
        </div>
    </div>
</div>
</div>

To help you put the CSS classes in context, the following snippet shows the HTML markup used to define the screen, with the CSS classes highlighted using red text. To view the latest HTML for a screen, right-click a blank spot on your Hosted Login login page, click View Page Source, then search for the screen name.


CSS classes used on this screen

The following table lists all the CSS classes used on this screen; the table also includes the default CSS specified for each class (note that some classes, such as footer-text, are not spelled out in the base.css file).

CSS ClassDefault CSS
action-card.action-card {
flex-grow: 1;
flex-basis: 0;
flex wrap: wrap;
min-width: 300 px;
margin: 8 px;
background-color: #f2f2f2;
padding: 0 20 px 20 px 20 px
}
action-description existing-value 
action-description 
add edit 
aic-control aic-error.aic-control {
cursor:pointer
}

.aic-error {
color:# fa5151
}
aic-control logout.aic-control {
cursor:pointer
}

.logout {
position: absolute;
top: 25px;
right:50px
}
aic-control.aic-control {
cursor:pointer
}
aic-error.aic-error {
color:# fa5151
}
aic-icon icon-add 
aic-icon icon-edit 
aic-icon icon-subtract 
aic-input.aic-input {
border:1px solid # 979797;
margin - bottom: 15 px;
color: #444;
padding:7px;
border-radius:2px;
width:100%;
box-sizing:border-box
}
aic-success 
card-body.card-body {
padding:15px 25px
}
card-heading.aic-control {
cursor:pointer
}

.card-heading {
border-bottom: 1px solid #f2f2f2;
position:relative
}
chevron left.chevron::before {
border-style: solid;
border-width: .12em .12em 0 0;
content: "";
display: inline-block;
height: .65em;
left: .15em;
position: relative;
top: .32em;
transform: rotate(-45deg);
vertical-align: top;
width: .65em;
border-color:#979797
}

.chevron.left:before, .lang-rtl .chevron.right:before {
left: .25em;
transform:rotate(-135deg)
}
codesentto-tel-flag.codesentto-tel-flag {
display:none
}
content-wrapper#content-wrapper {
background-color: #fff;
box-shadow:1px 1px 5px 2px rgba(0, 0, 0, .1)
}
delete 
edit add 
email 
flex-quad body 
flex-quad-header 
footer-container.footer-container {
padding: 25px;
border-top: 1px solid #f2f2f2;
text-align:center
}
footer-extra-text 
footer-text 
form-action-buttons.form-action-buttons {
margin:0 -10px
}
help-link 
integration-card 
integrations 
linked-accounts 
logout-container 
manage-screen content-wrapper.manage-screen.content-wrapper {
position:relative
}
password 
phone-group.phone-group {
white-space:nowrap;
margin-left:2px
}
phone 
profile-action-icons.profile-action-icons {
display:flex;
flex-direction:row;
flex-wrap:wrap;
margin-bottom:13px
}
profile-actions 
profile-card 
profile-header-actions.profile-header-actions {
display: flex;
flex-direction: row;
justify - content: space - between
}
profile-header.profile-header {
display: flex;
flex-direction: row;
flex-wrap:wrap
}
profile-header-image user-photo-container.profile-header-image {
text-align:right
}

.profile-header-image .profile-image {
margin-right: 20px;
border-radius: 50%;
max-height: 100px;
max-width:100px
}
profile-header-text 
profile-management-container profile-security 
profile-preferences card-icon 
profile-show 
profile 
return-to-app-container 
screen.screen {
min-width:460px
}
screen-heading.screen-heading {
margin-top:0
}
social-login-buttons.social-login-buttons button {
margin: 5px 0;
padding: 0;
width:100%
}
verified-identifier.verified-identifier {
color:green;
font-weight:bold;
float:right;
margin-right:40px
}

CSS classes mapped to UI elements

The following graphic maps CSS classes to the more-visible UI elements used in the screen:


See also


Did this page help you?