@charset "UTF-8";
html .react {
  display: none;
}

html.react-mounted .react {
  display: block;
}

.center {
  width: 900px;
}

[data-reactroot],
.extensions {
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}

#content .center.container {
  min-height: 500px;
}

.visually-hidden {
  border: 0;
  clip: rect(0 0 0 0);
  height: 1px;
  margin: -1px;
  overflow: hidden;
  padding: 0;
  position: absolute;
  width: 1px;
}

.hidden {
  display: none;
}

a {
  cursor: pointer;
}

.row {
  margin: 0 -15px;
}
@media (min-width: 768px) {
  .row.compact {
    margin: 0 -10px;
  }
}
@media (min-width: 768px) {
  .row.loose {
    margin: 0 -20px;
  }
}

.col-4, .col-6 {
  padding: 0 15px;
}
@media (min-width: 768px) {
  .col-4, .col-6 {
    float: left;
  }
}

@media (min-width: 768px) {
  .col-4 {
    width: 33%;
  }
}

@media (min-width: 768px) {
  .col-6 {
    width: 50%;
  }
}

@media (min-width: 768px) {
  .row.compact .col-4, .row.compact .col-6 {
    padding: 0 10px;
  }
}

@media (min-width: 768px) {
  .row.loose .col-4, .row.loose .col-6 {
    padding: 0 20px;
  }
}

.extensions *,
.downloads *,
.start * {
  box-sizing: border-box;
}
.extensions a,
.downloads a,
.start a {
  text-decoration: none;
}
.extensions a:hover,
.downloads a:hover,
.start a:hover {
  text-decoration: underline;
  color: #38c;
}
.extensions img,
.downloads img,
.start img {
  vertical-align: middle;
}
.extensions .btn,
.downloads .btn,
.start .btn {
  color: #fff;
  background: #38c;
}
.extensions .btn:hover, .extensions .btn:focus,
.downloads .btn:hover,
.downloads .btn:focus,
.start .btn:hover,
.start .btn:focus {
  text-decoration: none;
  color: #fff;
  background: #2e7ab8;
}
.extensions .lead,
.downloads .lead,
.start .lead {
  font-size: 16px;
  line-height: 1.5;
  text-align: center;
  margin: 0 auto;
}
@media (min-width: 768px) {
  .extensions .lead,
  .downloads .lead,
  .start .lead {
    width: 80%;
  }
}
.extensions .form-group,
.downloads .form-group,
.start .form-group {
  margin-bottom: 15px;
}

#jobs {
  margin-bottom: 30px;
}
#jobs article {
  margin-top: 2em;
  margin-bottom: 3em;
}
#jobs h2 .anchor-link {
  text-decoration: none;
}
#jobs h2:not(:hover) .anchor-link {
  display: none;
}
#jobs .qualifications {
  margin-top: 1.5em;
}
#jobs p, #jobs li {
  line-height: 1.5em;
}
#jobs li {
  padding-bottom: 0.7em;
}

#jobs-eeo {
  margin-bottom: 2em;
}

.spinner {
  display: block;
}
@keyframes spinner-loading {
  0% {
    box-shadow: 0 -2em 0 #777777, 1.4em -1.4em 0 rgba(119, 119, 119, 0.25), 2em 0 0 rgba(119, 119, 119, 0.25), 1.4em 1.4em 0 rgba(119, 119, 119, 0.25), 0 2em 0 rgba(119, 119, 119, 0.4), -1.4em 1.4em 0 rgba(119, 119, 119, 0.55), -2em 0 0 rgba(119, 119, 119, 0.7), -1.4em -1.4em 0 rgba(119, 119, 119, 0.85);
  }
  12.5% {
    box-shadow: 0 -2em 0 rgba(119, 119, 119, 0.85), 1.4em -1.4em 0 #777777, 2em 0 0 rgba(119, 119, 119, 0.25), 1.4em 1.4em 0 rgba(119, 119, 119, 0.25), 0 2em 0 rgba(119, 119, 119, 0.25), -1.4em 1.4em 0 rgba(119, 119, 119, 0.4), -2em 0 0 rgba(119, 119, 119, 0.55), -1.4em -1.4em 0 rgba(119, 119, 119, 0.7);
  }
  25% {
    box-shadow: 0 -2em 0 rgba(119, 119, 119, 0.7), 1.4em -1.4em 0 rgba(119, 119, 119, 0.85), 2em 0 0 #777777, 1.4em 1.4em 0 rgba(119, 119, 119, 0.25), 0 2em 0 rgba(119, 119, 119, 0.25), -1.4em 1.4em 0 rgba(119, 119, 119, 0.25), -2em 0 0 rgba(119, 119, 119, 0.4), -1.4em -1.4em 0 rgba(119, 119, 119, 0.55);
  }
  37.5% {
    box-shadow: 0 -2em 0 rgba(119, 119, 119, 0.55), 1.4em -1.4em 0 rgba(119, 119, 119, 0.7), 2em 0 0 rgba(119, 119, 119, 0.85), 1.4em 1.4em 0 #777777, 0 2em 0 rgba(119, 119, 119, 0.25), -1.4em 1.4em 0 rgba(119, 119, 119, 0.25), -2em 0 0 rgba(119, 119, 119, 0.25), -1.4em -1.4em 0 rgba(119, 119, 119, 0.4);
  }
  50% {
    box-shadow: 0 -2em 0 rgba(119, 119, 119, 0.4), 1.4em -1.4em 0 rgba(119, 119, 119, 0.55), 2em 0 0 rgba(119, 119, 119, 0.7), 1.4em 1.4em 0 rgba(119, 119, 119, 0.85), 0 2em 0 #777777, -1.4em 1.4em 0 rgba(119, 119, 119, 0.25), -2em 0 0 rgba(119, 119, 119, 0.25), -1.4em -1.4em 0 rgba(119, 119, 119, 0.25);
  }
  62.5% {
    box-shadow: 0 -2em 0 rgba(119, 119, 119, 0.25), 1.4em -1.4em 0 rgba(119, 119, 119, 0.4), 2em 0 0 rgba(119, 119, 119, 0.55), 1.4em 1.4em 0 rgba(119, 119, 119, 0.7), 0 2em 0 rgba(119, 119, 119, 0.85), -1.4em 1.4em 0 #777777, -2em 0 0 rgba(119, 119, 119, 0.25), -1.4em -1.4em 0 rgba(119, 119, 119, 0.25);
  }
  75% {
    box-shadow: 0 -2em 0 rgba(119, 119, 119, 0.25), 1.4em -1.4em 0 rgba(119, 119, 119, 0.25), 2em 0 0 rgba(119, 119, 119, 0.4), 1.4em 1.4em 0 rgba(119, 119, 119, 0.55), 0 2em 0 rgba(119, 119, 119, 0.7), -1.4em 1.4em 0 rgba(119, 119, 119, 0.85), -2em 0 0 #777777, -1.4em -1.4em 0 rgba(119, 119, 119, 0.25);
  }
  87.5% {
    box-shadow: 0 -2em 0 rgba(119, 119, 119, 0.25), 1.4em -1.4em 0 rgba(119, 119, 119, 0.25), 2em 0 0 rgba(119, 119, 119, 0.25), 1.4em 1.4em 0 rgba(119, 119, 119, 0.4), 0 2em 0 rgba(119, 119, 119, 0.55), -1.4em 1.4em 0 rgba(119, 119, 119, 0.7), -2em 0 0 rgba(119, 119, 119, 0.85), -1.4em -1.4em 0 #777777;
  }
  100% {
    box-shadow: 0 -2em 0 #777777, 1.4em -1.4em 0 rgba(119, 119, 119, 0.25), 2em 0 0 rgba(119, 119, 119, 0.25), 1.4em 1.4em 0 rgba(119, 119, 119, 0.25), 0 2em 0 rgba(119, 119, 119, 0.4), -1.4em 1.4em 0 rgba(119, 119, 119, 0.55), -2em 0 0 rgba(119, 119, 119, 0.7), -1.4em -1.4em 0 rgba(119, 119, 119, 0.85);
  }
}
.spinner::after {
  content: "";
  display: block;
  font-size: 6px;
  width: 1em;
  height: 1em;
  margin: 2em auto;
  border-radius: 50%;
  animation: spinner-loading 0.75s linear infinite;
  transform: rotate(-9deg);
}

.react-tabs {
  text-align: left;
  -webkit-tap-highlight-color: transparent;
}
.react-tabs__tab-list {
  margin: 0;
  padding: 0;
}
.react-tabs__tab {
  width: 41%;
  text-align: center;
  display: inline-block;
  border: 1px solid transparent;
  border-bottom: none;
  bottom: -1px;
  position: relative;
  list-style: none;
  padding: 12px 24px;
  cursor: pointer;
  font-family: inherit;
  font-size: 16px;
  background: #ddd;
}
.react-tabs__tab--selected {
  background: #fff;
  border-color: #aaa;
  color: black;
  border-top: 3px solid salmon;
}
.react-tabs__tab--disabled {
  color: GrayText;
  cursor: default;
}
.react-tabs__tab:focus {
  box-shadow: 0 0 5px hsl(208, 99%, 50%);
  border-color: hsl(208, 99%, 50%);
  outline: none;
}
.react-tabs__tab:focus:after {
  content: "";
  position: absolute;
  height: 5px;
  left: -4px;
  right: -4px;
  bottom: -5px;
  background: #fff;
}
.react-tabs__tab-panel {
  display: none;
  padding: 20px;
}
.react-tabs__tab-panel--selected {
  display: block;
}

div.storage-container div.modal {
  position: fixed;
  background-color: rgba(0, 0, 0, 0.3);
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
}
div.storage-container div.modal-text {
  position: absolute;
  top: 50%;
  width: 100%;
}
div.storage-container p.modal-text {
  text-align: center;
  font-size: 1.5em;
}
div.storage-container div.storage-notification {
  margin: 4px;
  padding: 8px;
  border-radius: 4px;
  display: none;
}
div.storage-container div.storage-notification.success {
  background-color: #dff0d8;
  border-color: #cfe0c8;
  display: block;
}
div.storage-container div.storage-notification.error {
  background-color: #f0dfd8;
  border-color: #e0cfc8;
  display: block;
}
div.storage-container div.user-storage {
  display: flex;
}
div.storage-container div.user-storage div.flex-section {
  margin: 5px;
  flex: 1 1 45%;
  min-width: 200px;
  border: 1px solid #ddd;
  border-radius: 4px;
}
div.storage-container div.user-storage div.section-header {
  border-bottom: 1px solid #ddd;
  background-color: #f5f5f5;
  padding: 10px 15px;
}
div.storage-container div.user-storage div.section-body {
  padding: 15px;
}
div.storage-container div.user-storage button.btn {
  font-size: 12px;
  background-color: #337ab7;
  color: #fff;
}
div.storage-container div.user-storage button.btn:hover {
  background-color: #286090;
  color: #fff;
  border-color: #286090;
}
div.storage-container div.user-storage button.btn:disabled {
  background-color: #a0a0a0;
}
div.storage-container div.user-storage tr.current-plan {
  background-color: #dff0d8;
}

@media all and (max-width: 640px) {
  div.user-storage {
    flex-direction: column;
  }
}
div.group-invitations ul {
  list-style: none;
}
div.group-invitations button {
  margin: 3px;
}

div#group-alerts {
  border-top: 2px solid rgba(0, 0, 0, 0.3);
}

div#invite-to-group {
  clear: both;
  margin-top: 10px;
  margin-bottom: 5px;
  padding-top: 10px;
  border-top: 2px solid #e6e6e6;
}
div#invite-to-group .vertical-expandable {
  margin-top: 8px;
}
div#invite-to-group select {
  margin-top: 8px;
  margin-bottom: 8px;
}
div#invite-to-group button {
  margin-top: 8px;
}
div#invite-to-group ul {
  list-style: none;
  padding-left: 0px;
}

#group-intro-screencast {
  display: block;
  width: 500px;
}

#user-groups-div {
  width: 80%;
  margin: auto;
}

.major-col #user-groups-div {
  width: 100%;
}

.minor-col #user-groups-div {
  width: 100%;
  margin-bottom: 20px;
}

#group-explainer {
  width: 95%;
  margin: auto;
}
#group-explainer video {
  margin-bottom: 15px;
}
#group-explainer .login-links {
  margin-bottom: 10px;
}

body.register-body nav.action-links {
  font-size: inherit;
}
body.register-body .register-section {
  background: white;
  padding-top: 20px;
}

.start {
  margin: 0 -40px;
  text-align: center;
}
.start .container {
  padding: 0 15px;
}
@media (min-width: 768px) {
  .start .container {
    padding: 0 80px;
  }
}
.start h1 {
  font-size: 20px;
  line-height: 1.1;
  margin: 0 0 16px;
}
@media (min-width: 768px) {
  .start h1 {
    font-size: 30px;
    letter-spacing: -0.5px;
  }
}
.start .install-success {
  display: inline-block;
  vertical-align: top;
  font-size: 24px;
  font-weight: 700;
  line-height: 1.1;
  color: #19a15f;
  border: 3px solid currentColor;
  border-radius: 6px;
  padding: 16px 24px;
  margin: 20px 0 37px;
}
@media (min-width: 768px) {
  .start .install-success {
    margin: 10px 0 48px;
  }
}
.start .btn {
  color: #fff;
  background: #38c;
  text-decoration: none;
  border-radius: 3px;
  padding: 5px 15px;
}
.start .btn:hover {
  background: #2e7ab8;
}
.start .extensions-picker {
  padding-bottom: 48px;
}
@media (min-width: 768px) {
  .start .extensions-picker {
    padding-bottom: 80px;
  }
}
.start .extensions-picker .all-extensions ul {
  margin-top: 26px;
}
.start .extensions-picker .inner-start {
  display: block;
}
.start .extensions-picker .inner-extensions {
  display: none;
}
.start .extensions-picker .jumbotron {
  padding: 0;
}
.start .extensions-picker .jumbotron h1 {
  margin: 21px auto 16px;
}
@media (min-width: 768px) {
  .start .extensions-picker .jumbotron h1 {
    margin-top: 29px;
  }
}
.start .extensions-picker .jumbotron .show-extensions {
  position: static;
  text-align: center;
  margin-bottom: 0;
}
.start .extensions-picker .all-extensions .bookmarklet {
  padding: 0 15px;
}
.start .register-section {
  background: url("/static/images/start/arrow-down-white.svg") no-repeat center top #f6f6f6;
  background-size: 51px auto;
  padding: 46px 0 38px;
}
@media (min-width: 768px) {
  .start .register-section {
    background-size: 76px auto;
    padding: 68px 0 65px;
  }
}
.start #register-form {
  margin: 34px 0 0;
}
@media (min-width: 768px) {
  .start #register-form {
    margin: 54px 0 0;
  }
}
.start #register-form .form-control,
.start #register-form .btn {
  display: block;
  margin: auto;
  height: 42px;
  font-family: inherit;
  font-size: 16px;
}
@media (min-width: 768px) {
  .start #register-form .form-control,
  .start #register-form .btn {
    max-width: 302px;
    height: 48px;
    font-size: 20px;
  }
}
.start #register-form .form-control {
  padding: 13px 12px;
  color: #222;
  box-shadow: none;
}
.start #register-form .form-control:focus {
  border-color: #85b8e0;
  box-shadow: 0 0 0 2px #85b8e0;
}
.start #register-form ::-webkit-input-placeholder {
  color: #777;
}
.start #register-form ::-moz-input-placeholder {
  color: #777;
}
.start #register-form ::-ms-input-placeholder {
  color: #777;
}
.start #register-form .g-recaptcha {
  width: 302px;
  margin: auto;
}
@media (max-width: 767px) {
  .start #register-form .g-recaptcha {
    transform-origin: left top;
    transform: scale(0.96);
  }
}
.start #register-form .btn {
  width: 100%;
}
.start #register-form .btn:hover {
  border-color: transparent;
}
.start #register-form p {
  margin: 5px auto;
}
.start #register-form p:empty {
  display: none;
}
.start #register-form .profile-preview {
  color: #19a15f;
}
.start #register-form .profile-preview.undecided {
  color: inherit;
}
.start #register-form .profile-preview.invalid {
  color: #c00;
}
.start #register-form .username-message {
  color: #777;
}
@media (min-width: 768px) {
  .start #register-form .username-message {
    width: 450px;
    margin-left: auto;
    margin-right: auto;
  }
}
.start #register-form .form-field-error {
  color: #c00;
}
.start .post-register-guide {
  background: url("/static/images/start/arrow-down-gray.svg") no-repeat center top;
  background-size: 51px;
  padding: 53px 0 47px;
}
@media (min-width: 768px) {
  .start .post-register-guide {
    background-size: 76px auto;
    padding: 80px 0 72px;
  }
}
.start .connector-button {
  margin-bottom: 25px;
}
@media (min-width: 768px) {
  .start .connector-button {
    margin-bottom: 36px;
  }
}
.start .register-quick-links {
  list-style: none;
  padding: 0;
  font-size: 16px;
  line-height: 1.5;
  margin: 25px 0 0;
}
@media (min-width: 768px) {
  .start .register-quick-links {
    font-size: 20px;
    margin: 43px 0 0;
  }
}
.start .register-quick-links li + li {
  margin-top: 5px;
}

@keyframes slide-in {
  0% {
    transform: translateY(-30px);
    opacity: 0;
  }
  100% {
    transform: translateY(0);
    opacity: 1;
  }
}
.extensions {
  margin: 0 -40px;
  animation: slide-in 0.8s ease;
}
.extensions .jumbotron {
  background: #f6f6f6;
  background: linear-gradient(#fff, #f6f6f6);
}
.extensions .container {
  padding: 0 15px;
}
@media (min-width: 768px) {
  .extensions .container {
    padding: 0 80px;
  }
}
.extensions .extensions-picker .inner-extensions {
  display: block;
}
.extensions .extensions-picker .inner-start {
  display: none;
}
.extensions h1, .extensions h2, .extensions h3 {
  line-height: 1.1;
}
.extensions h1, .extensions h2 {
  text-align: center;
}
.extensions h1 {
  font-size: 24px;
  margin: 19px auto 16px;
}
@media (min-width: 768px) {
  .extensions h1 {
    font-size: 36px;
    margin-top: 27px;
    letter-spacing: -1px;
  }
}
.extensions h2 {
  font-size: 20px;
  color: inherit;
  margin: 32px 0 16px;
}
@media (min-width: 768px) {
  .extensions h2 {
    font-size: 30px;
    margin-top: 48px;
    letter-spacing: -0.5px;
  }
}
.extensions h3 {
  font-size: 16px;
  margin: 22px 0 14px;
}
@media (min-width: 768px) {
  .extensions h3 {
    font-size: 24px;
    margin-top: 31px;
    letter-spacing: -0.3px;
  }
}
.extensions hr {
  border: 0;
  border-top: 1px solid #e6e6e6;
  margin: 0;
}
.extensions .btn {
  color: #fff;
  background: #38c;
  text-decoration: none;
  border-radius: 3px;
  padding: 5px 15px;
}
.extensions .btn:hover {
  background: #2e7ab8;
}
.extensions .all-extensions ul {
  margin-top: 40px;
}
.extensions .all-extensions .bookmarklet {
  margin-bottom: 25px;
  padding: 0 15px;
}
.extensions .features {
  padding-bottom: 21px;
}
@media (min-width: 768px) {
  .extensions .features {
    padding-bottom: 41px;
  }
}
.extensions .features img {
  display: block;
  margin: 34px auto 0;
  max-width: 100%;
  width: 100%;
  height: auto;
}
@media (min-width: 768px) {
  .extensions .features img {
    margin-top: 54px;
  }
}
@media (max-width: 767px) {
  .extensions .features .magnifier {
    width: 160px;
    height: 160px;
  }
}
.extensions .features-1 h2 {
  margin-top: 45px;
}
@media (min-width: 768px) {
  .extensions .features-1 h2 {
    margin-top: 69px;
  }
}

.extensions-picker .jumbotron {
  text-align: center;
  position: relative;
  padding: 28px 0 48px;
}
@media (min-width: 768px) {
  .extensions-picker .jumbotron {
    padding: 20px 0 80px;
  }
}
.extensions-picker .jumbotron .lead {
  margin-bottom: 21px;
}
@media (min-width: 768px) {
  .extensions-picker .jumbotron .lead {
    margin-bottom: 34px;
  }
}
@media (min-width: 768px) {
  .extensions-picker .jumbotron .line {
    display: block;
  }
}
.extensions-picker .jumbotron .btn {
  font-size: 16px;
  min-width: 160px;
  padding: 9px 23px;
  border-radius: 4px;
}
@media (min-width: 768px) {
  .extensions-picker .jumbotron .btn {
    font-size: 20px;
  }
}
.extensions-picker .jumbotron .version-note {
  font-size: 12px;
  line-height: 1.5;
  color: #777;
  margin: 26px auto 0;
}
@media (min-width: 768px) {
  .extensions-picker .jumbotron .version-note {
    width: 50%;
  }
}
.extensions-picker .jumbotron .show-extensions,
.extensions-picker .jumbotron .get-zotero-standalone {
  font-size: 16px;
  line-height: 22px;
  margin: 16px 0 0;
}
@media (min-width: 768px) {
  .extensions-picker .jumbotron .show-extensions,
  .extensions-picker .jumbotron .get-zotero-standalone {
    position: absolute;
  }
}
@media (min-width: 768px) {
  .extensions-picker .jumbotron .show-extensions {
    left: 40px;
    bottom: 18px;
    text-align: left;
  }
}
.extensions-picker .jumbotron .show-extensions.fade-out {
  opacity: 0;
  transition: opacity 0.4s ease-in-out;
}
.extensions-picker .jumbotron .show-extensions .browser-icon {
  margin-bottom: 3px;
}
.extensions-picker .jumbotron .show-extensions .browser-icon + .browser-icon {
  margin-left: 8px;
}
.extensions-picker .jumbotron .get-zotero-standalone {
  margin-top: 32px;
}
@media (min-width: 768px) {
  .extensions-picker .jumbotron .get-zotero-standalone {
    right: 40px;
    bottom: 18px;
    text-align: right;
  }
}
.extensions-picker .jumbotron .get-zotero-standalone img {
  margin-bottom: 1px;
}

.browser-plus-extension {
  margin: 0;
}
.browser-plus-extension .icon-plus {
  display: inline-block;
  width: 48px;
  height: 48px;
  background: url("/static/images/extensions/icon-plus.svg") no-repeat 0 0;
  vertical-align: middle;
  margin: 0 15px 0 16px;
  background-size: 100%;
}
@media (max-width: 767px) {
  .browser-plus-extension .browser-icon {
    width: 64px;
    height: 64px;
  }
  .browser-plus-extension .icon-plus {
    width: 24px;
    height: 24px;
    margin: 0 9px 0 11px;
  }
  .browser-plus-extension .zotero-icon {
    width: 64px;
    height: 70px;
  }
}

.all-extensions {
  overflow: hidden;
}
.all-extensions h3 {
  font-size: 16px;
  line-height: 20px;
  margin: 8px 0 13px 0;
}
.all-extensions ul {
  text-align: center;
  margin: 30px 0 3px;
  padding: 0;
}
.all-extensions ul li {
  display: inline-block;
  padding: 0 30px;
  margin-bottom: 30px;
}
.all-extensions .btn {
  color: #fff;
  background: #38c;
  text-decoration: none;
  border-radius: 3px;
  padding: 5px 15px;
}
.all-extensions .btn:hover {
  background: #2e7ab8;
}
.all-extensions .bookmarklet {
  font-size: 13px;
  line-height: 1.5;
  margin: 0;
  text-align: center;
}

.downloads {
  margin: 0 -40px;
}
.downloads .container {
  padding: 0 15px;
}
@media (min-width: 768px) {
  .downloads .container {
    padding: 0 40px;
  }
}
.downloads h1 {
  margin: 0;
  line-height: 1.1;
}
.downloads .downloadButton .btn,
.downloads .lead + .btn {
  font-size: 16px;
  min-width: 160px;
  text-decoration: none;
  font-size: 16px;
  padding: 9px 23px;
  border-radius: 4px;
}
@media (min-width: 1041px) {
  .downloads .downloadButton .btn,
  .downloads .lead + .btn {
    font-size: 20px;
  }
}
.downloads .jumbotron {
  text-align: center;
  margin-top: 60px;
  line-height: 24px;
}
@media (min-width: 768px) {
  .downloads .jumbotron {
    -js-display: flex;
    display: flex;
  }
}
.downloads .jumbotron h1 {
  font-size: 30px;
  margin-bottom: 8px;
  letter-spacing: -1px;
}
@media (min-width: 1041px) {
  .downloads .jumbotron h1 {
    font-size: 36px;
  }
}
.downloads .jumbotron h1:not(.wrap) {
  white-space: nowrap;
}
.downloads .jumbotron .lead {
  font-size: 14px;
  line-height: 24px;
  margin: 0 auto 20px;
  width: auto;
}
@media (min-width: 1041px) {
  .downloads .jumbotron .lead {
    font-size: 16px;
    margin-bottom: 28px;
  }
}
.downloads .standalone,
.downloads .connector {
  flex-grow: 1;
  flex-shrink: 1;
  flex-basis: 0;
  background-color: #f6f6f6;
  background-image: linear-gradient(#fff 0%, #f6f6f6 33%);
  padding: 0 20px 57px;
  position: relative;
}
@media (min-width: 768px) {
  .downloads .standalone,
  .downloads .connector {
    padding: 0 20px 89px;
    margin: 0 20px;
  }
}
.downloads .standalone p,
.downloads .connector p {
  margin-bottom: 0;
}
.downloads .download-image {
  width: 118px;
  height: 128px;
  margin-bottom: 14px;
}
@media (min-width: 1041px) {
  .downloads .download-image {
    width: 147px;
    height: 160px;
    margin-bottom: 28px;
  }
}
.downloads .version-note {
  line-height: 1.42857143;
  font-size: 12px;
}
.downloads .version-note, .downloads .installation-help {
  margin: 21px 0 -21px 0;
}
.downloads .standalone .other-versions {
  color: #777;
  margin: 38px 0 0 0;
}
.downloads .standalone ul {
  margin: 0;
  padding: 0;
}
.downloads .standalone ul li {
  list-style-type: none;
  display: inline;
}
.downloads .standalone .os-list li + li:before,
.downloads .standalone .old-versions ul li + li:before {
  content: "·";
  margin: 0 8px;
}
.downloads .standalone ul.os-list {
  margin-top: 38px;
}
@media (max-width: 1040px) {
  .downloads .standalone .old-versions li {
    display: block;
    margin-top: 5px;
  }
  .downloads .standalone .old-versions ul li + li:before {
    content: none;
  }
}
.downloads .standalone .old-versions h3 {
  font-size: 16px;
  line-height: inherit;
  color: #444;
  font-weight: 700;
  margin: 14px 0 0;
}
.downloads .connector {
  padding-top: 64px;
}
@media (min-width: 768px) {
  .downloads .connector {
    padding-top: 0;
  }
}
.downloads .connector .browser-plus-extension {
  margin-bottom: 14px;
}
@media (min-width: 768px) {
  .downloads .connector .browser-plus-extension {
    margin-top: 10px;
    margin-bottom: 27px;
  }
}
@media (min-width: 1041px) {
  .downloads .connector .browser-plus-extension {
    margin-top: 16px;
    margin-bottom: 50px;
  }
}
@media (min-width: 768px) {
  .downloads .connector .browser-plus-extension .browser-icon {
    width: 96px;
    height: 96px;
  }
}
@media (min-width: 1041px) {
  .downloads .connector .browser-plus-extension .browser-icon {
    width: 112px;
    height: 112px;
  }
}
@media (min-width: 768px) {
  .downloads .connector .browser-plus-extension .zotero-icon {
    width: 96px;
    height: 105px;
  }
}
@media (min-width: 1041px) {
  .downloads .connector .browser-plus-extension .zotero-icon {
    width: 112px;
    height: 122px;
  }
}
@media (min-width: 768px) {
  .downloads .connector .icon-plus {
    width: 36px;
    height: 36px;
    background: url("/static/images/downloads/icon-plus.svg") no-repeat 0 0;
    background-size: 100%;
    margin: 0 10px 0 11px;
  }
}
@media (min-width: 1041px) {
  .downloads .connector .icon-plus {
    width: 42px;
    height: 42px;
    margin: 0 13px 0 14px;
  }
}
.downloads .connector .description {
  font-size: 14px;
  color: #777;
  margin: 14px auto 0;
  word-spacing: -0.5px;
}
@media (min-width: 768px) {
  .downloads .connector .description {
    max-width: 330px;
  }
}
.downloads .connector .all-extensions ul li {
  padding: 0 15px;
}
.downloads .connector .all-extensions .bookmarklet {
  color: #777;
  max-width: 330px;
  margin: auto;
}
.downloads .connector .all-extensions .save-page {
  color: #777;
  max-width: 330px;
  margin: auto;
}
.downloads .connector .danger {
  color: #D00;
}
.downloads .plugins {
  text-align: center;
  margin: 52px 0 51px 0;
  padding: 0 5px;
}
.downloads .plugins h1 {
  font-size: 30px;
  margin: 0 0 8px 0;
}
.downloads .plugins p {
  font-size: 16px;
  line-height: 1.5;
  margin: 0;
}
@media (min-width: 768px) {
  .downloads .plugins p {
    max-width: 500px;
  }
}
.downloads .plugins-container {
  display: inline-block;
  vertical-align: top;
}
@media (min-width: 768px) {
  .downloads .plugins-container {
    text-align: left;
    margin-left: 80px;
  }
}
.downloads .plugins-icon {
  margin-bottom: 15px;
}
@media (min-width: 768px) {
  .downloads .plugins-icon {
    float: left;
    margin-right: 40px;
    margin-bottom: 0;
  }
}
.downloads #safari-download-text {
  margin-bottom: 1.5em;
  color: #777;
}
.downloads #safari-download-text-small {
  color: #777;
  max-width: 330px;
  margin: auto;
}

ul.group-information {
  padding-left: 5px;
  list-style: none;
}

div.key-editor {
  width: 500px;
  margin: auto;
  margin-bottom: 20px;
}
div.key-editor ul {
  list-style: none;
  margin-left: 0;
  margin-top: 0;
  padding-left: 0;
}
div.key-editor li {
  margin-bottom: 1em;
}
div.key-editor div.all-groups-permissions {
  margin-bottom: 1em;
}
div.key-editor div.personal-library-permissions {
  margin-bottom: 1em;
}
div.key-editor #key-permissions-summary {
  margin: 4px;
  padding: 4px;
  background-color: #f6f6f6;
}
div.key-editor #key-permissions-summary ul, div.key-editor #key-permissions-summary li {
  margin-bottom: 0;
}

#oauth_verifier {
  font-size: x-large;
  background: #dff0d8;
  padding: 25px;
  text-align: center;
}

div.notifier {
  margin: 4px;
  padding: 8px;
  border-radius: 4px;
  text-align: center;
  display: none;
}

div.notifier.success {
  background-color: #dff0d8;
  border-color: #cfe0c8;
  display: block;
}

div.notifier.info {
  background-color: #fbd438;
  border-color: #fbd438;
  display: block;
}

div.notifier.error {
  background-color: #f0dfd8;
  border-color: #e0cfc8;
  display: block;
}

div.react.change-username .profile-preview.invalid, div.react.change-username .username-message.invalid {
  color: red;
}
div.react.change-username .profile-preview.valid, div.react.change-username .username-message.valid {
  color: green;
}

div.institution-checkout, div.manage-institution {
  padding: 10px 20px;
  text-align: center;
  font-family: inherit;
  font-size: 14px;
}
div.institution-checkout .form-line, div.manage-institution .form-line {
  display: block;
  margin-top: 8px;
  padding: 4px;
}
div.institution-checkout .form-line p, div.manage-institution .form-line p {
  display: block;
  text-align: center;
}
div.institution-checkout .form-control, div.manage-institution .form-control {
  display: inline-block;
  width: 60%;
  margin: auto;
}
div.institution-checkout div.button-editable, div.manage-institution div.button-editable {
  display: inline-block;
  width: 70%;
}
div.institution-checkout div.button-editable div.button-editable-flex, div.manage-institution div.button-editable div.button-editable-flex {
  display: flex;
}
div.institution-checkout div.button-editable div.button-editable-flex .button-editable-edit, div.institution-checkout div.button-editable div.button-editable-flex .button-editable-save, div.manage-institution div.button-editable div.button-editable-flex .button-editable-edit, div.manage-institution div.button-editable div.button-editable-flex .button-editable-save {
  flex: 1;
  min-width: 35px;
}
div.institution-checkout div.button-editable div.button-editable-flex span.button-editable-value, div.manage-institution div.button-editable div.button-editable-flex span.button-editable-value {
  display: block;
  flex: 3;
}
div.institution-checkout div.button-editable div.button-editable-flex input, div.manage-institution div.button-editable div.button-editable-flex input {
  flex: 3;
}
div.institution-checkout label, div.manage-institution label {
  width: 20%;
  display: inline-block;
  font-weight: bold;
  margin-right: 8px;
}
div.institution-checkout .purchase-line, div.manage-institution .purchase-line {
  text-align: center;
}
div.institution-checkout .btn, div.manage-institution .btn {
  color: #fff;
  background: #38c;
  border-color: #38c;
  text-decoration: none;
  border-radius: 3px;
  padding: 5px 15px;
  margin: auto;
}
div.institution-checkout .btn:hover, div.manage-institution .btn:hover {
  background: #2e7ab8;
}
div.institution-checkout .btn.update-list-button, div.manage-institution .btn.update-list-button {
  width: 90%;
}
div.institution-checkout .form-field-error, div.manage-institution .form-field-error {
  color: #c00;
}

div.manage-institution div.flex-container {
  display: flex;
  text-align: left;
}
div.manage-institution div.flex-section {
  margin: 5px;
  flex: 1 1 45%;
  min-width: 200px;
}
div.manage-institution textarea.form-control {
  height: initial;
  display: block;
  width: 90%;
  margin-left: 0;
}

div#purchaseworkshop {
  padding: 10px 20px;
  text-align: center;
  font-family: inherit;
  font-size: 14px;
}
div#purchaseworkshop .form-line {
  display: block;
  margin-top: 8px;
  padding: 4px;
}
div#purchaseworkshop .form-line p {
  display: block;
  text-align: center;
}
div#purchaseworkshop .form-control {
  display: inline-block;
  width: 60%;
  margin: auto;
}
div#purchaseworkshop div.button-editable {
  display: inline-block;
  width: 70%;
}
div#purchaseworkshop div.button-editable div.button-editable-flex {
  display: flex;
}
div#purchaseworkshop div.button-editable div.button-editable-flex .button-editable-edit, div#purchaseworkshop div.button-editable div.button-editable-flex .button-editable-save {
  flex: 1;
  min-width: 35px;
}
div#purchaseworkshop div.button-editable div.button-editable-flex span.button-editable-value {
  display: block;
  flex: 3;
}
div#purchaseworkshop div.button-editable div.button-editable-flex input {
  flex: 3;
}
div#purchaseworkshop label {
  width: 20%;
  display: inline-block;
  font-weight: bold;
  margin-right: 8px;
}
div#purchaseworkshop .purchase-line {
  text-align: center;
}
div#purchaseworkshop .btn {
  color: #fff;
  background: #38c;
  border-color: #38c;
  text-decoration: none;
  border-radius: 3px;
  padding: 5px 15px;
  margin: auto;
}
div#purchaseworkshop .btn:hover {
  background: #2e7ab8;
}
div#purchaseworkshop .btn.update-list-button {
  width: 90%;
}
div#purchaseworkshop .form-field-error {
  color: #c00;
}

div.manage-institution div.flex-container {
  display: flex;
  text-align: left;
}
div.manage-institution div.flex-section {
  margin: 5px;
  flex: 1 1 45%;
  min-width: 200px;
}
div.manage-institution textarea.form-control {
  height: initial;
  display: block;
  width: 90%;
  margin-left: 0;
}

#add-via-email p.current-email {
  display: inline-block;
  margin-right: 1.5rem;
}
#add-via-email p.hint {
  display: block;
  clear: both;
}
#add-via-email .viaemail-link {
  display: inline-block;
  color: #38c;
  text-decoration: none;
}
#add-via-email a:not(:last-of-type):after {
  content: " · ";
  color: rgba(0, 0, 0, 0.5);
  padding: 0 0.2em;
}
#add-via-email span.label {
  border: 1px solid #999;
  border-radius: 4px;
  margin-left: 5px;
  margin-right: 5px;
  padding: 3px;
}
#add-via-email span.label {
  background-color: #EEE;
}
#add-via-email span.label.primary {
  color: #FFF;
  background-color: green;
}

.progress {
  border: 1px solid black;
  margin: 5px;
  padding: 8px;
}

#react-librarysettings {
  margin-bottom: 1.5rem;
}
#react-librarysettings div.group-type {
  padding-bottom: 8px;
  margin-bottom: 10px;
  border-bottom: 2px solid #DDD;
}
#react-librarysettings legend {
  margin-top: 1.5rem;
}

div.batchDelete {
  padding: 1rem;
  background-color: #f0dfd8;
  border-color: #e0cfc8;
}

#manage-emails .btn {
  margin-top: 3px;
  color: #fff;
  background: #38c;
  text-shadow: none;
}
#manage-emails .btn:hover, #manage-emails .btn:focus {
  text-decoration: none;
  color: #fff;
  background: #2e7ab8;
  border-color: #245f8f;
}
#manage-emails .form-control {
  display: inline-block;
  width: 50%;
}
#manage-emails td {
  vertical-align: middle;
  padding-top: 8px;
  padding-bottom: 8px;
}
#manage-emails span.label {
  border: 1px solid #999;
  border-radius: 4px;
  margin-left: 5px;
  margin-right: 5px;
  padding: 3px;
}
#manage-emails span.label {
  background-color: #EEE;
}
#manage-emails span.label.primary {
  color: #FFF;
  background-color: green;
}
#manage-emails div.add-email-input {
  margin-top: 10px;
}
#manage-emails label {
  font-weight: bold;
}

.orcid-profile .education-entry, .orcid-profile .orcid-funding, .orcid-profile .orcid-work {
  margin-bottom: 10px;
  border: 1px solid #CCC;
  padding: 5px;
  box-shadow: 0px 2px 2px;
}

input.toggle-check {
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
  position: relative;
  display: inline-block;
  background: lightgrey;
  height: 1rem;
  width: 1.8rem;
  vertical-align: middle;
  border-radius: 1rem;
  box-shadow: 0px 1px 3px rgba(0, 0, 0, 0.2) inset;
  transition: 0.25s linear background;
}

input.toggle-check::before {
  content: "";
  display: block;
  width: 0.8rem;
  height: 0.85rem;
  background: #fff;
  border-radius: 1rem;
  position: absolute;
  top: 0.05rem;
  left: 0.2rem;
  box-shadow: 0px 1px 3px rgba(0, 0, 0, 0.2);
  transition: 0.25s linear transform;
  transform: translateX(0rem);
}

input.toggle-check:checked {
  background: green;
}

input.toggle-check:checked::before {
  transform: translateX(0.75rem);
}

input.toggle-check:focus-visible {
  outline: 2px solid dodgerblue;
  outline-offset: 1px;
}

div.vertical-expandable-container {
  overflow: hidden;
}

div.vertical-expandable {
  transition: all 0.5s ease-out;
  height: 0;
  opacity: 0;
  margin: -80%;
}

div.vertical-expandable.slideDown {
  height: initial;
  opacity: 1;
  margin: 0;
}

/*
@keyframes slideDown {
	0% {
		height:0;
		opacity:0;
	}
	100%{
		height:100%;
		opacity:1;
	}
	// 65%{
	// 	transform: translateY(-4%);
	// }
	// 80%{
	// 	transform: translateY(4%);
	// }
	// 95%{
	// 	transform: translateY(-2%);
	// }
	// 100% {
	// 	transform: translateY(0%);
	// }
}
*/
/*
div.vertical-expandable {
    overflow: hidden;

    transition: all .3s ease-in-out;
    // line-height: 0;
    padding: 0 1em;
}

div.vertical-expandable:target {
	// line-height: 1.5;
	padding-top: 1em;
	padding-bottom: 1em;
  }
  */
#qr-code {
  width: 300px;
  margin: auto;
}

#secret-text {
  font-size: 2rem;
  -webkit-text-decoration: bold;
          text-decoration: bold;
}

div#verify-code {
  margin-top: 2rem;
}

#return-div {
  margin: 1rem 0;
}

.security-key {
  margin: 0.5rem;
}

/*
.manage-two-factor-container {
    display: grid;
}
*/
div.manage-two-factor-container button, div.manage-two-factor-container button:hover {
  color: black;
  background-color: rgb(246, 248, 250);
  border-color: rgba(31, 35, 40, 0.15);
  text-shadow: none;
}
div.manage-two-factor-container .float-right {
  float: right;
}
div.manage-two-factor-container .verification-method-section {
  border-bottom: 1px solid #ccc;
  margin: 0.25rem;
  padding: 0.25rem;
}
div.manage-two-factor-container .security-key {
  padding: 0.25rem;
  border-bottom: 1px solid #ccc;
}
div.manage-two-factor-container .security-key-note {
  margin-right: 2rem;
}
div.manage-two-factor-container #new-security-key {
  margin: 0.25rem;
}
div.manage-two-factor-container #new-security-key input {
  display: inline-block;
}
div.manage-two-factor-container #verifications h4 {
  display: inline-block;
  margin: 0 1rem 0 0;
}
div.manage-two-factor-container .security-enabled-tag {
  display: none;
  border-radius: 10px;
  padding: 2px 10px;
  margin-right: 1rem;
}
div.manage-two-factor-container .security-enabled-tag.enabled {
  display: inline-block;
  border: 1px solid green;
  color: green;
}
div.manage-two-factor-container .security-enabled-tag.pending {
  display: inline-block;
  border: 1px solid #aaa;
  color: #aaa;
}
div.manage-two-factor-container .verifier-form-container {
  background-color: #eee;
  border-color: #ccc;
  padding: 0.5rem;
  border-radius: 4px;
}

div#combined-search {
  min-height: 400px;
}

div.results {
  border-top: 3px solid rgba(0, 0, 0, 0.3);
}

form.global-search-form input {
  display: table-cell;
  width: 100%;
  padding: 4px;
  border-radius: 4px;
  border: 1px solid rgba(0, 0, 0, 0.2);
}
form.global-search-form div.input-group {
  position: relative;
  display: table;
  border-collapse: separate;
}
form.global-search-form div.input-group span {
  display: table-cell;
}

form#global-search-form {
  margin: 10px;
  margin-bottom: 20px;
}

div.canonicalItem h2 {
  font-size: 16px;
}

div.canonicalItem h3 {
  font-size: 14px;
}

div.canonicalItem ul {
  list-style: none;
}

div.canonicalItem td {
  padding: 5px;
}

div.canonicalItem .search-result-body {
  border-left: 3px solid rgba(0, 0, 255, 0.6);
  padding-left: 5px;
}
