.akademssr-login {
  margin-right: var(--spacing-small);
  margin-left: var(--spacing-small);
}

.button-wrapper-item {
  margin: 1rem 0;
}

.akademssr-login .other-device {
  border: solid;
  text-decoration: none;
}
/* Is this needed? */
.akademssr-login .other-device:hover,
.akademssr-login .other-device:active,
.akademssr-login .other-device:focus {
  border: solid;
  text-decoration: underline;
}

.akademssr-login h2 {
  margin-top: .83em;
  margin-bottom: .83em;
}

.akademssr-login a {
  text-decoration: underline;
}

.akademssr-login .bankid-footer .button--block {
  max-width: 312px;
}

.akademssr-login .auth-qr-code img {
  width: 330px;
}

.akademssr-login .auth-qr-code img {
  min-height: 340px;
}

.akademssr-login ul {
  margin: 0;
  padding: 0;
  list-style: none;
}

.akademssr-login ul.list-style-disc {
  list-style: disc;
  padding-left: 16px;
}

.akademssr-login li {
  margin-top: .6em;
}

.akademssr-login .content-wrapper {
  width: 100%;
  max-width: 592px;
  margin: 2rem auto;
  min-height: 350px;
  transition: min-height 0.3s ease-in-out;
}

.akademssr-login .info-area {
  padding: 2.5rem 0;
}

.akademssr-login .info-area h3 {
  margin-top: 0;
  margin-bottom: .83em;
}

.akademssr-login .info-area + .info-area {
  border-top: 1px solid #d8d8d8;
}

.akademssr-login.auth-timeout {
  text-align: center;
}

.akademssr-login.auth-timeout .icon {
  background-color: #e55224;
}

.akademssr-login.auth-timeout .bankid-footer {
  margin: 2rem 0;
}

.akademssr-login.auth-timeout .bankid-footer .button {
  margin: 0 auto;
}

.akademssr-login.auth-other .auth-qr-code + .info-area {
  padding-top: 2.5rem;
}

.akademssr-login.auth-this .button--block,
.akademssr-login.auth-other .button--block {
  max-width: 274px;
}

.akademssr-login.auth-this .button + .info-area {
  border-top: 1px solid #d8d8d8;
  padding-top: 2rem;
  margin-top: 2.5rem;
}

.button-wrapper-item {
  margin: 1rem 0;
}

.akademssr-login .other-device {
  border: solid;
  text-decoration: none;
}
/* Is this needed? */
.akademssr-login .other-device:hover,
.akademssr-login .other-device:active,
.akademssr-login .other-device:focus {
  border: solid;
  text-decoration: underline;
}

@media screen and (max-width: 640px) {

}

@media screen and (min-width: 640px) {
  #edit-bankid-button {
    margin: 4rem 0 2rem;
  }

  .akademssr-login {
    margin-left: var(--spacing-medium);
    margin-right: var(--spacing-medium);
  }

  .akademssr-login .content-wrapper {
    margin-top: 4rem;
  }

  .akademssr-login .content-inner {
    padding: 0 2rem;
  }

  .akademssr-login .content-header {
    margin-left: -2rem;
    margin-right: -2rem;
  }
}

.content-inner.loading-active {
  text-align: center;
  padding: 2rem;
}

.content-inner.loading-active h1 {
  font-size: 48px;
  margin-bottom: 80px;
  position: relative;
  display: inline-block;
}

.content-inner.loading-active h1::after {
  content: '';
  position: absolute;
  bottom: -10px;
  left: 0;
  width: 100px;
  height: 4px;
  background-color: #007AFF;
}

.loading-dots {
  margin: 40px 0;
}

.loading-dots span {
  display: inline-block;
  width: 12px;
  height: 12px;
  border-radius: 50%;
  background: #e75213;
  margin: 0 6px;
  animation: dots 1.4s infinite;
}

.loading-dots span:nth-child(2) {
  animation-delay: 0.2s;
}

.loading-dots span:nth-child(3) {
  animation-delay: 0.4s;
}

@keyframes dots {
  0%, 80%, 100% { 
    transform: scale(1);
    opacity: 0.3;
  }
  40% { 
    transform: scale(1.3);
    opacity: 1;
  }
}

.content-inner.loading-active p {
  color: #666;
  font-size: 18px;
  margin-top: 40px;
}