#permissions td {
  vertical-align: top;
}
#permissions td.module {
  padding: 8px 5px 10px;
  font-weight: bold;
}
#permissions td.permission {
  padding: 6px 8px 8px 1.5em;
}
#permissions tr.odd .form-item,
#permissions tr.even .form-item {
  white-space: normal;
}
#user-admin-settings fieldset .fieldset-description {
  font-size: 0.85em;
  padding-bottom: .5em;
}

/**
 * Override default textfield float to put the "Add role" button next to
 * the input textfield.
 */
#user-admin-roles td.edit-name {
  clear: both;
}
#user-admin-roles .form-item-name {
  float: left; /* LTR */
  margin-right: 1em; /* LTR */
}

/*
#user-register-form .form-text,
#user-profile-form input.form-text {
  width: auto;
}
@media only screen and (max-width: 767px) {
  #user-register-form input.form-text,
  #user-profile-form input.form-text,
  div.password-parent .password-strength, 
  div.confirm-parent .password-suggestions {
    width: 100%;
  }
}
*/
#user-login,
#user-pass {
  margin-left: auto;
  margin-right: auto;
  max-width: 19em;
}
/*
#user-login input.form-text,
#user-pass input.form-text {
  width: 100%;
}
*/
.form-actions a.password-forgot {
  font-size: 0.75em;
}

/**
 * Password strength indicator.
 */
.password-parent,
.confirm-parent { 
  position: relative;
}
@media (max-width: 599px) {
  .password-parent,
  .confirm-parent { 
    padding-bottom: 3em;
  }
}
.password-parent {
  margin-bottom: 0.5em;
}

.password-strength {
  position: absolute;
  top: 5em;
  font-size: 0.875em;
}
@media (min-width: 600px) { 
  .password-strength {
    top: auto;
    left: 22em;
  }
}
.password-strength-title {
  position: absolute;
  left: -9999px;
}
.password-indicator {
  position: absolute;
  top: 1.75em;
  background-color: #C4C4C4;
  height: 0.3em;
  width: 6em;
  z-index: 10;
}
.password-indicator div {
  height: 100%;
  width: 0%;
  background-color: #47C965;
}
input.password-confirm,
input.password-field {
  /*width: 96%;*/
  margin-bottom: 0.4em;
}
div.password-confirm {
  position: absolute;
  visibility: hidden; 
  font-size: 0.875em;
  line-height: 1.5;
  margin-bottom: 0.25em;
}

@media (max-width: 599px) {
  .password-confirm {
    top: 5em;
  }
}
@media (min-width: 600px) { 
  .password-confirm {
    left: 22em;
  }
}

div.form-item div.password-suggestions {
  width: 22em;
  padding: 0.5em 1.125em;
  margin-bottom: 1em;
  color: #3a87ad;
  border: 1px solid #bce8f1;
  text-shadow: 0 1px 0 rgba(255, 255, 255, 0.5);
       background-color: #d9edf7;
  -webkit-border-radius: 4px;
     -moz-border-radius: 4px;
          border-radius: 4px;
}
div.password-suggestions ul {
  margin-bottom: 0;
}

.profile h2 {
  display: block;
  margin: 0;
  padding: 0.5em 0 0;
  font-size: 1.125em;
  font-weight: normal;
  line-height: 1.5;
  border: 0;
}

.profile-wrapper {
  padding: 0.625em 0;
  border-top: 1px solid #E5E5E5;
}
.profile-wrapper .description {
  margin-top: 0.25em;
  font-size: 0.75em;
  color: #777;
}
.profile-wrapper .fieldset-wrapper .fieldset-content {
  margin-left: 0;
}

@media (min-width: 48.0625em) {
  .profile h2 {
    float: left;
    width: 16%;
  }
  .profile-wrapper {
    padding-left: 20%;
  }
}

.profile .user-picture {
  float: right; /* LTR */
  margin: 0;
}
.user-picture {
  width: 32px;
}
.user-picture img {
  -webkit-border-radius: 50%;
  -moz-border-radius: 50%;
  border-radius: 50%;
}


.file-input-wrapper input[type=file],
.file-input-wrapper input[type=file]:focus,
.file-input-wrapper input[type=file]:hover {
  position: absolute;
  top: 0;
  left: 0;
  cursor: pointer;
  opacity: 0;
  filter: alpha(opacity=0);
  z-index: 99;
  outline: 0;
}