blockquote:before,blockquote:after,q:before,q:after {
    content: "";
    content: none
}

@media (max-width: 450px) {
    #view:after {
        height:0
    }

    #app {
        background-color: #fff
    }

    #app .viewport[data-viewport=view] {
        box-shadow: none;
        border-radius: 0
    }

    #app .view__content {
        padding: 0
    }
}

html,body {
    font-variant: normal;
    vertical-align: baseline;
    border: 0;
    margin: 0;
    padding: 0;
    font-family: inherit;
    font-size: 100%;
    font-style: normal;
    font-weight: 400
}

div,span,applet,object,iframe,h1,h2,h3,h4,h5,h6,p,blockquote,pre,a,abbr,acronym,address,big,cite,code,del,dfn,em,img,ins,kbd,q,s,samp,small,strike,strong,sub,sup,tt,var,b,u,i,center,dl,dt,dd,ol,ul,li,fieldset,form,label,legend,table,caption,tbody,tfoot,thead,tr,th,td,article,aside,canvas,details,embed,figure,figcaption,footer,header,hgroup,menu,nav,output,ruby,section,summary,time,mark,audio,video {
    font-size: inherit;
    font-family: inherit;
    font-weight: inherit;
    font-variant: inherit;
    font-style: inherit;
    vertical-align: baseline;
    border: 0;
    margin: 0;
    padding: 0
}

article,aside,details,figcaption,figure,footer,header,hgroup,menu,nav,section {
    display: block
}

body {
    line-height: 1
}

ol,ul {
    list-style: none
}

blockquote,q {
    quotes: none
}

blockquote:before,blockquote:after,q:before,q:after {
    content: "";
    content: none
}

table {
    border-collapse: collapse;
    border-spacing: 0
}

html,body {
    color: #555;
    -webkit-text-size-adjust: none;
    -ms-touch-action: manipulation;
    touch-action: manipulation;
    margin: 0;
    padding: 0;
    font-family: -apple-system,BlinkMacSystemFont,sans-serif;
    font-size: 10px;
    font-weight: 400;
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0;
    right: 0;
    overflow: hidden
}

body button:focus,body button:focus+.checkbox__box:before,body input:focus,body input:focus+.checkbox__box:before,body select:focus,body select:focus+.checkbox__box:before,body textarea:focus,body textarea:focus+.checkbox__box:before,body li:focus,body li:focus+.checkbox__box:before,body a:focus,body a:focus+.checkbox__box:before {
    outline-offset: 0;
    outline: none;
    box-shadow: 0 0 0 3px rgba(67,47,255,.6)
}

body:not(.is-tabbing) button:focus,body:not(.is-tabbing) button:focus+.checkbox__label:before,body:not(.is-tabbing) button:focus+.checkbox__label:before,body:not(.is-tabbing) input:focus,body:not(.is-tabbing) input:focus+.checkbox__label:before,body:not(.is-tabbing) input:focus+.checkbox__label:before,body:not(.is-tabbing) select:focus,body:not(.is-tabbing) select:focus+.checkbox__label:before,body:not(.is-tabbing) select:focus+.checkbox__label:before,body:not(.is-tabbing) textarea:focus,body:not(.is-tabbing) textarea:focus+.checkbox__label:before,body:not(.is-tabbing) textarea:focus+.checkbox__label:before,body:not(.is-tabbing) li:focus,body:not(.is-tabbing) li:focus+.checkbox__label:before,body:not(.is-tabbing) li:focus+.checkbox__label:before,body:not(.is-tabbing) a:focus,body:not(.is-tabbing) a:focus+.checkbox__label:before,body:not(.is-tabbing) a:focus+.checkbox__label:before {
    box-shadow: none
}

body .link__button,body .link {
    color: #6444c9;
    border: unset;
    border-radius: unset;
    font-size: 16px;
    text-decoration: underline;
    transition: box-shadow .1s ease-in-out;
    position: relative
}

body .link__button:not(:disabled):focus:after,body .link:not(:disabled):focus:after {
    background-color: transparent;
    box-shadow: 0 0 0 3px rgba(67,47,255,.6)
}

body .link__button:not(:disabled):hover,body .link__button:not(:disabled):focus,body .link:not(:disabled):hover,body .link:not(:disabled):focus {
    color: #6444c9
}

* {
    box-sizing: border-box;
    -webkit-tap-highlight-color: transparent
}

:focus {
    outline-offset: -2px;
    border: none;
    outline: none
}

:focus::-moz-focus-inner {
    border: 0
}

button {
    background: 0 0;
    border: none;
    padding: 0;
    font-family: -apple-system,BlinkMacSystemFont,sans-serif;
    font-size: 10px
}

input {
    font-family: -apple-system,BlinkMacSystemFont,sans-serif;
    font-size: 10px
}

.hidden {
    display: none!important
}

#view {
    text-align: center;
    flex-direction: column;
    align-items: center;
    width: 100%;
    height: 100%;
    margin-top: auto;
    margin-bottom: auto;
    padding-bottom: 150px;
    display: flex
}

#content-wrapper {
    flex-direction: column;
    width: 100%;
    height: 100%;
    display: flex
}

#app {
    -webkit-overflow-scrolling: touch;
    opacity: 0;
    flex-direction: column;
    display: flex;
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0;
    right: 0;
    overflow-y: auto
}

.theme-vipps #app {
    background: #f7f7f7
}

.theme-mobilepay #app {
    background: #fff
}

#app.active {
    opacity: 1
}

.toggle__container {
    flex-direction: column;
    justify-content: center;
    transition: height .4s;
    display: flex;
    position: relative
}

.toggle__component {
    -webkit-font-smoothing: antialiased;
    opacity: 0;
    width: 100%;
    max-width: 384px;
    display: none;
    transform: translate(225px)
}

.toggle__component.active {
    opacity: 1;
    display: block;
    position: relative;
    transform: translate(0)
}

@media (max-width: 450px) {
    #view:after {
        height:0
    }

    #app {
        background-color: #fff
    }

    #app .viewport[data-viewport=view] {
        box-shadow: none;
        border-radius: 0
    }

    #app .view__content {
        padding: 0
    }
}

@media (min-width: 600px) {
    .viewport {
        min-height:565px;
        margin-top: auto;
        margin-bottom: auto
    }
}

.action-button {
    display: block
}

.action-button__button {
    color: #fff;
    background: #ff5b24 !important;
    cursor: pointer;
    text-align: center;
    border-radius: 70px;
    min-width: 121px;
    height: 48px;
    margin: 0 auto;
    padding: 0 27px;
    font-size: 18px;
    transition: min-width .3s,background .2s,box-shadow .1s ease-in-out;
    display: block;
    box-shadow: 0 1px 2px rgba(22,18,37,.07)
}

.theme-vipps .action-button__button {
    background: #ff5b24
}

.theme-mobilepay .action-button__button {
    background: #5c7aff
}

.action-button__button[aria-disabled] {
    cursor: default;
    background: #c9c6d7
}

.theme-vipps .action-button__button:hover:not([aria-disabled]) {
    background: linear-gradient(rgba(22,18,37,.04),rgba(22,18,37,.04)),#ff5b24
}

.theme-mobilepay .action-button__button:hover:not([aria-disabled]) {
    background: linear-gradient(rgba(22,18,37,.04),rgba(22,18,37,.04)),#5c7aff
}

.theme-vipps .action-button__button:active:not([aria-disabled]) {
    background: linear-gradient(rgba(22,18,37,.16),rgba(22,18,37,.16)),#ff5b24
}

.theme-mobilepay .action-button__button:active:not([aria-disabled]) {
    background: linear-gradient(rgba(22,18,37,.16),rgba(22,18,37,.16)),#5c7aff
}

.action-button__button:focus {
    box-shadow: 0 0 0 1px #fff,0 0 0 5px rgba(67,47,255,.6)
}

.action-button .loading-spinner {
    height: 100%;
    margin: 0 auto;
    animation: .9s linear infinite rotation;
    display: none
}

.action-button.loading .action-button__button {
    width: 48px;
    min-width: 48px;
    padding: 13px 0
}

.theme-vipps .action-button.loading .action-button__button {
    background: #ff5b24
}

.theme-mobilepay .action-button.loading .action-button__button {
    background: #5c7aff
}

.action-button.loading .loading-spinner {
    width: 22px;
    height: 22px;
    display: block
}

.action-button.loading .action-button__text {
    opacity: 0
}

.action-button__text {
    color: #fff;
    font-weight: 600
}

@keyframes rotation {
    0% {
        transform: rotate(0)
    }

    to {
        transform: rotate(360deg)
    }
}

@keyframes bounce {
    0% {
        transform: translate(15px)
    }

    20% {
        transform: translate(-15px)
    }

    40% {
        transform: translate(7px)
    }

    60% {
        transform: translate(-7px)
    }

    80% {
        transform: translate(3px)
    }

    to {
        transform: translate(0)
    }
}

@keyframes chevron-anim {
    0% {
        transform: translate(0)
    }

    50% {
        transform: translate(3px)
    }

    to {
        transform: translate(0)
    }
}

.back-button {
    cursor: pointer;
    transition: box-shadow .1s ease-in-out
}

.back-button__icon {
    vertical-align: top;
    position: relative;
    right: 4px
}

.back-button__text {
    color: #706b8b;
    font-size: 14px
}

.back-button:hover .back-button__icon {
    animation-name: chevron-anim;
    animation-duration: .25s
}

.badge-container {
    width: 150px;
    height: 150px;
    position: absolute;
    top: 0;
    left: 0;
    overflow: hidden
}

.badge {
    color: #fff;
    text-align: center;
    z-index: 1;
    min-width: 200px;
    padding-top: 10px;
    padding-bottom: 10px;
    font-size: 24px;
    line-height: 24px;
    position: absolute;
    top: 33px;
    left: -45px;
    transform: rotate(-45deg);
    box-shadow: 0 2px 4px 2px #d3d3d3
}

.badge.dev {
    background-color: #59cbe8
}

.theme-vipps .badge.uat {
    background-color: #ff5b24
}

.theme-mobilepay .badge.uat {
    background-color: #5c7aff
}

.badge.mt {
    background-color: #49367e
}

.bouncing-balls-svg {
    width: 70px;
    height: 40px;
    margin: auto;
    display: block;
    position: relative
}

.theme-vipps .bouncing-balls-svg {
    stroke: #ff5b24;
    fill: #ff5b24
}

.theme-mobilepay .bouncing-balls-svg {
    stroke: #5c7aff;
    fill: #5c7aff
}

@keyframes move {
    0% {
        transform: translate(0,0)
    }

    to {
        transform: translateY(10px)
    }
}

@keyframes opacityChange {
    0% {
        opacity: 1
    }

    to {
        opacity: .2
    }
}

.vipps-bouncing-ball,.vipps-bouncing-ball-delay-200,.vipps-bouncing-ball-delay-400 {
    animation: .45s ease-in-out infinite alternate move,.45s ease-in-out infinite alternate opacityChange
}

.vipps-bouncing-ball-delay-200 {
    animation-delay: .2s
}

.vipps-bouncing-ball-delay-400 {
    animation-delay: .4s
}

.button {
    display: block
}

.button__text {
    color: #706b8b;
    font-size: 14px
}

.button__button {
    cursor: pointer;
    transition: box-shadow .1s ease-in-out
}

.checkbox {
    display: none;
    position: relative
}

.checkbox.active {
    display: block
}

.checkbox__input {
    opacity: 0;
    clip: rect(0 0 0 0);
    position: absolute
}

.checkbox__input:checked+.checkbox__box:after {
    content: "";
    border-bottom: 2px solid #fff;
    border-left: 2px solid #fff;
    width: 10px;
    height: 4px;
    position: absolute;
    top: 5px;
    left: 5px;
    transform: rotate(-45deg)
}

.theme-vipps .checkbox__input:checked+.checkbox__box:before {
    background-color: #ff5b24;
    border-color: #ff5b24
}

.theme-mobilepay .checkbox__input:checked+.checkbox__box:before {
    background-color: #5c7aff;
    border-color: #5c7aff
}

.theme-vipps .checkbox__input:checked:hover+.checkbox__box:before {
    background-color: #ff480b;
    border-color: #ff480b
}

.theme-mobilepay .checkbox__input:checked:hover+.checkbox__box:before {
    background-color: #4365ff;
    border-color: #4365ff
}

.checkbox__input:checked:focus+.checkbox__box:before {
    box-shadow: 0 0 0 1px #fff,0 0 0 4px rgba(67,47,255,.6)
}

.theme-vipps .checkbox__input:checked:focus+.checkbox__box:before {
    background-color: #f03c00;
    border-color: #f03c00
}

.theme-mobilepay .checkbox__input:checked:focus+.checkbox__box:before {
    background-color: #2950ff;
    border-color: #2950ff
}

body:not(.is-tabbing) .checkbox__input:checked:focus+.checkbox__box:before {
    box-shadow: none
}

.theme-vipps .checkbox__input:checked:active+.checkbox__box:before {
    background-color: #f03c00;
    border-color: #f03c00
}

.theme-mobilepay .checkbox__input:checked:active+.checkbox__box:before {
    background-color: #2950ff;
    border-color: #2950ff
}

.checkbox__input:checked:disabled+.checkbox__box:before {
    background-color: #c9c6d7;
    border-color: #c9c6d7
}

.checkbox__input:not(:checked):not(:disabled):hover+.checkbox__box:before {
    border-color: #59556e
}

.checkbox__input:not(:checked):focus+.checkbox__box:before {
    box-shadow: none;
    border-color: #5e3dc2
}

.checkbox__input:disabled+.checkbox__box:before {
    background-color: #efeef3;
    border-color: #efeef3
}

.checkbox__input:not(:disabled)+.checkbox__label {
    cursor: pointer
}

.checkbox__label {
    text-align: left;
    word-break: break-all;
    color: #161225;
    -webkit-touch-callout: none;
    -webkit-user-select: none;
    -ms-user-select: none;
    user-select: none;
    -khtml-user-select: none;
    padding: 0 0 0 31px;
    font-size: 16px;
    line-height: 18px;
    display: inline-block;
    position: relative
}

.checkbox__box:before {
    content: "";
    background-color: #fff;
    border: 2px solid #706b8b;
    border-radius: 4px;
    width: 18px;
    height: 18px;
    transition: box-shadow .1s ease-in-out;
    position: absolute;
    top: 50%;
    left: 0;
    transform: translateY(-50%)
}

.country {
    color: rgba(60,60,67,.6);
    align-items: center;
    width: 100%;
    font-size: 24px;
    display: flex
}

.theme-vipps .country {
    background: #f7f7f7
}

.theme-mobilepay .country {
    background: #fff
}

.country .flag-wrapper {
    flex-grow: 1;
    align-items: center;
    margin-top: -4px;
    display: flex
}

.country .flag-wrapper .prepend-text {
    height: auto;
    margin-top: 2px;
    margin-right: 6px;
    padding-left: 6px
}

.country .country-name {
    font-size: 17px
}

.theme-vipps .country:hover {
    background: #fff
}

.theme-mobilepay .country:hover {
    background: #f5f5f2
}

.selected {
    color: #000
}

div[data-view=delegated-consent-checkbox] {
    border: 2px solid #fff;
    border-radius: 12px;
    align-items: center;
    width: 100%;
    margin-bottom: 12px
}

.theme-vipps div[data-view=delegated-consent-checkbox] {
    background: #f7f7f7
}

.theme-mobilepay div[data-view=delegated-consent-checkbox] {
    background: #fff
}

div[data-view=delegated-consent-checkbox] .custom-checkbox__input {
    display: none
}

div[data-view=delegated-consent-checkbox] .custom-checkbox__control {
    width: 100%;
    height: 100%;
    display: flex
}

div[data-view=delegated-consent-checkbox] .custom-checkbox__wrapper {
    cursor: pointer;
    width: 100%;
    height: 100%;
    display: inline-flex
}

div[data-view=delegated-consent-checkbox] .visual-checkbox {
    cursor: pointer;
    border: 2px solid #9e9e9e;
    border-radius: 50%;
    width: 24px;
    height: 24px;
    margin: 12px 16px 12px auto;
    display: inline-block;
    position: relative
}

.theme-vipps div[data-view=delegated-consent-checkbox] .visual-checkbox {
    background: #f7f7f7
}

.theme-mobilepay div[data-view=delegated-consent-checkbox] .visual-checkbox {
    background: #fff
}

div[data-view=delegated-consent-checkbox] .custom-checkbox__label {
    color: #333;
    -webkit-user-select: none;
    -ms-user-select: none;
    user-select: none;
    margin-bottom: 4px;
    font-weight: 700;
    display: flex
}

div[data-view=delegated-consent-checkbox] .custom-checkbox__status {
    color: #666
}

div[data-view=delegated-consent-checkbox] .custom-checkbox__text-wrapper {
    margin: 12px 16px
}

div[data-view=gender-choice-checkbox] {
    border: 2px solid #fff;
    border-radius: 12px;
    align-items: center;
    width: 100%;
    margin-bottom: 6px
}

.theme-vipps div[data-view=gender-choice-checkbox] {
    background: #f7f7f7
}

.theme-mobilepay div[data-view=gender-choice-checkbox] {
    background: #fff
}

div[data-view=gender-choice-checkbox] .custom-checkbox__input {
    display: none
}

div[data-view=gender-choice-checkbox] .custom-checkbox__control {
    width: 100%;
    height: 100%;
    display: flex
}

div[data-view=gender-choice-checkbox] .custom-checkbox__wrapper {
    cursor: pointer;
    width: 100%;
    height: 100%;
    display: inline-flex
}

div[data-view=gender-choice-checkbox] .visual-checkbox {
    cursor: pointer;
    border: 2px solid #9e9e9e;
    border-radius: 50%;
    width: 24px;
    height: 24px;
    margin: 12px 16px 12px auto;
    display: inline-block;
    position: relative
}

.theme-vipps div[data-view=gender-choice-checkbox] .visual-checkbox {
    background: #f7f7f7
}

.theme-mobilepay div[data-view=gender-choice-checkbox] .visual-checkbox {
    background: #fff
}

div[data-view=gender-choice-checkbox] .custom-checkbox__label {
    color: #333;
    -webkit-user-select: none;
    -ms-user-select: none;
    user-select: none;
    font-size: 18px;
    display: flex
}

div[data-view=gender-choice-checkbox] .custom-checkbox__text-wrapper {
    margin: auto 16px
}

.custom-checkbox.is-checked {
    border-color: #6200ee
}

.custom-checkbox.is-checked .visual-checkbox {
    border-color: #6200ee;
    background-color: #6200ee!important
}

.custom-checkbox.is-checked .visual-checkbox:after {
    content: "";
    background-image: url("data:image/svg+xml;utf8,<svg viewBox=\"0 0 16 16\" fill=\"white\" xmlns=\"http://www.w3.org/2000/svg\"><path d=\"M6.00049 10.7998L3.20049 7.9998L2.26049 8.9398L6.00049 12.6798L14.0005 4.67981L13.0605 3.73981L6.00049 10.7998Z\"/></svg>");
    background-position: 50%;
    background-repeat: no-repeat;
    border-radius: 50%;
    width: 100%;
    height: 100%;
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%,-50%)
}

.icon-button {
    display: block
}

.icon-button__button {
    color: #fff;
    cursor: pointer;
    border-radius: 70px;
    max-width: 100%;
    margin: 0 auto;
    padding: 13px 0;
    font-size: 18px;
    transition: max-width .3s,background .2s,box-shadow .1s ease-in-out;
    display: flex;
    position: relative;
    box-shadow: 0 1px 2px rgba(22,18,37,.07)
}

.theme-vipps .icon-button__button {
    background: #ff5b24
}

.theme-mobilepay .icon-button__button {
    background: #5c7aff
}

.icon-button__button[aria-disabled] {
    cursor: default;
    background-color: #c9c6d7
}

.icon-button__button.hide-icon>.icon-button__icon-container {
    display: none
}

.icon-button__button.hide-icon>.icon-button__text-container {
    padding: 0 10px
}

.icon-button__button:disabled {
    cursor: default;
    background: #c9c6d7
}

.icon-button__button:hover:not([aria-disabled]) {
    filter: brightness(.95)
}

.icon-button__button:focus {
    box-shadow: 0 0 0 1px #fff,0 0 0 4px rgba(67,47,255,.6)
}

.icon-button.loading .icon-button__button {
    max-width: 48px;
    max-height: 48px
}

.theme-vipps .icon-button.loading .icon-button__button {
    background: #ff5b24
}

.theme-mobilepay .icon-button.loading .icon-button__button {
    background: #5c7aff
}

.icon-button.loading .icon-button__button>:not(.icon-button__spinner-container) {
    opacity: 0
}

.icon-button.loading .icon-button__spinner-container {
    opacity: 1
}

.icon-button.checkmark .icon-button__button {
    max-width: 48px;
    max-height: 48px
}

.theme-vipps .icon-button.checkmark .icon-button__button {
    background: #ff5b24
}

.theme-mobilepay .icon-button.checkmark .icon-button__button {
    background: #5c7aff
}

.icon-button.checkmark .icon-button__button>:not(.icon-button__checkmark-container) {
    opacity: 0
}

.theme-vipps .icon-button.checkmark .icon-button__button:hover {
    background: #ff5b24
}

.theme-mobilepay .icon-button.checkmark .icon-button__button:hover {
    background: #5c7aff
}

.icon-button.checkmark .icon-button__checkmark-container {
    opacity: 1
}

.icon-button__icon-container {
    min-width: 40px;
    min-height: 17px;
    position: relative
}

.icon-button__icon {
    position: absolute;
    top: 2px;
    right: 0
}

.icon-button__text-container {
    box-sizing: border-box;
    min-width: 230px;
    padding-left: 10px;
    padding-right: 17px;
    font-weight: 600;
    position: relative
}

.icon-button__spinner-container {
    opacity: 0;
    flex-flow: column;
    justify-content: center;
    height: 100%;
    transition: opacity .2s;
    display: flex;
    position: absolute;
    top: 0;
    left: 50%;
    transform: translate(-50%)
}

.icon-button__spinner-container img {
    height: 25px;
    animation: .9s linear infinite rotation
}

.icon-button__checkmark-container {
    opacity: 0;
    flex-flow: column;
    justify-content: center;
    height: 100%;
    transition: opacity .2s;
    display: flex;
    position: absolute;
    top: 0;
    left: 50%;
    transform: translate(-50%)
}

.icon-button__checkmark-container img {
    height: 12px
}

.info-item {
    align-items: center;
    padding: 10px 0;
    display: flex;
    position: relative
}

.info-item__icon-container {
    width: 24px;
    display: inline-block
}

.info-item__icon-container img {
    margin: 0 auto;
    display: block;
    position: relative
}

.info-item__content-container {
    word-break: break-word;
    flex-grow: 1;
    margin-left: 10px;
    display: inline-block
}

.info-item.has-more-data {
    cursor: pointer;
    border-radius: 5px
}

.info-item.has-more-data:hover .info-item__chevron-right-container,.info-item.has-more-data:focus .info-item__chevron-right-container,.info-item.has-more-data:active .info-item__chevron-right-container {
    animation-name: chevron-anim;
    animation-duration: .25s
}

.info-item.has-more-data>.info-item__chevron-right-container {
    display: inline-block;
    transform: translateZ(0)
}

.info-item__chevron-right-container {
    height: 100%;
    display: none
}

.info-item__content--title {
    color: #161225;
    margin-top: 1px;
    font-size: 16px
}

.info-item__content--data {
    color: #706b8b;
    font-size: 14px
}

.info-text {
    margin-top: 21px
}

.info-text--inline-link .infoText {
    display: inline
}

.info-text .text {
    color: #706b8b;
    font-size: 14px
}

.info-text .text .link button {
    font-size: 14px
}

.info-text-with-links .text {
    color: #706b8b
}

.info-text-with-links .text .link {
    padding-right: 5px
}

.input {
    position: relative
}

.input__input,.input__placeholder {
    width: 100%;
    font-size: 24px;
    overflow: hidden
}

.input__input {
    caret-color: #5e3dc2;
    border: none;
    font-weight: 400
}

.input__input:disabled {
    color: #c9c6d7;
    -webkit-text-fill-color: #c9c6d7;
    opacity: 1
}

.input__input.has-value+.input__placeholder {
    display: none
}

.input__placeholder {
    color: #706b8b;
    pointer-events: none;
    font-weight: 300;
    position: absolute;
    top: 0;
    left: 0
}

.language-item {
    font-size: 24px;
    line-height: 28px
}

.theme-vipps .language-item {
    color: #5e3dc2
}

.theme-mobilepay .language-item {
    color: #5c7aff
}

.link__button {
    color: #666;
    border-bottom: 1px solid rgba(0,120,189,.5);
    border-radius: 0;
    padding: 0 0 1px;
    font-size: 14px;
    display: inline-block;
    position: relative
}

.link__button:not(:disabled) {
    cursor: pointer
}

.link__button:not(:disabled):hover,.link__button:not(:disabled):focus {
    color: #555;
    border-color: #0078bd
}

.link__button:not(:disabled):focus:after {
    content: "";
    background-color: rgba(0,120,189,.05);
    border-bottom: 2px solid #0078bd;
    position: absolute;
    top: -2px;
    bottom: -2px;
    left: -2px;
    right: -2px
}

.link__button:active {
    background-color: rgba(0,0,0,.05)
}

.link {
    display: inline-block
}

#merchant-logo {
    width: 100px;
    height: 100px;
    margin: 0 auto;
    display: block
}

.header-logo {
    z-index: 2;
    position: relative
}

.theme-vipps .header-logo {
    width: 100px
}

.theme-mobilepay .header-logo {
    width: 200px
}

#merchant-logo {
    width: 88px;
    height: 88px;
    margin: 0 auto
}

.secondary-button {
    display: block
}

.secondary-button__button {
    color: #5e3dc2;
    cursor: pointer;
    border: 1px solid #efeef3;
    border-radius: 12px;
    padding: 4px 12px;
    transition: box-shadow .1s ease-in-out
}

.secondary-button__text {
    font-size: 12px
}

.warning-text,.warning-text__boxLow,.warning-text__boxHigh {
    border: 2px solid transparent;
    border-radius: 20px;
    flex-direction: column;
    align-items: flex-start;
    padding: 19px 16px;
    font-size: 16px;
    display: flex
}

.warning-text__boxHigh {
    background-color: rgba(250,0,0,.11)
}

.warning-text__boxLow {
    background-color: rgba(255,144,107,.1)
}

.warning-text .warningTextHigh,.warning-text__boxHigh .warningTextHigh,.warning-text__boxLow .warningTextHigh {
    color: #c60000
}

.warning-text .warningTextLow,.warning-text__boxHigh .warningTextLow,.warning-text__boxLow .warningTextLow {
    color: #5e3dc2
}

.accounts-list .info-item:not(:last-child),.address-list .info-item:not(:last-child) {
    border-bottom: 1px solid #eee
}

.country-selector {
    visibility: hidden;
    z-index: 2;
    border-radius: 6px;
    width: 100%;
    max-width: 384px;
    margin-top: 19px;
    line-height: 1.3;
    display: block;
    position: absolute;
    top: 45px;
    box-shadow: 0 4px 9px -1px #a09c9b
}

.theme-vipps .country-selector {
    background: #f7f7f7
}

.theme-mobilepay .country-selector {
    background: #fff
}

.country-selector button {
    border-bottom: 1px solid rgba(0,0,0,.1);
    padding: 12px 20px 12px 41px
}

.country-selector button:first-child {
    border-radius: 6px 6px 0 0
}

.country-selector button:last-child {
    border-bottom: 0;
    border-radius: 0 0 6px 6px
}

.info-list .info-item {
    min-height: 60px
}

.info-list .info-item:not(:last-child) {
    border-bottom: 1px solid #eee
}

.language-list {
    display: none
}

.language-list.open {
    display: block
}

.phone-input {
    border-radius: 6px;
    flex-direction: row;
    align-items: center;
    padding: 12px 9px;
    line-height: 1.3;
    display: flex
}

.theme-vipps .phone-input {
    background: #f7f7f7
}

.theme-mobilepay .phone-input {
    background: #fff
}

.phone-input label {
    opacity: 0;
    pointer-events: none;
    position: absolute
}

.phone-input .input {
    flex: 1
}

.phone-input input {
    line-height: inherit;
    background: 0 0;
    margin: 0;
    padding: 0;
    font-size: 24px
}

.phone-input input:focus {
    box-shadow: none
}

.phone-input .input__placeholder {
    line-height: inherit
}

.phone-input .prepend-text {
    color: #000;
    height: auto;
    margin-right: 6px;
    padding-left: 6px;
    font-size: 24px
}

.phone-input .flag-wrapper {
    justify-content: center;
    align-items: center;
    display: flex
}

.delegated-consent-container {
    text-align: left
}

.delegated-consent-container .info-text {
    color: #706b8b;
    text-align: center;
    margin-top: 16px;
    font-size: 14px;
    line-height: 21px
}

.vipps-footer {
    flex-direction: column;
    justify-content: end;
    display: flex
}

.vipps-footer.hide {
    display: none
}

.vipps-footer .cancel-button {
    height: 0;
    position: absolute;
    left: 50%;
    transform: translate(-50%)
}

.vipps-footer .cancel-button .button__button {
    border-radius: 48px;
    height: 27px;
    margin: 0 auto 25px;
    padding: 0 10px;
    display: block;
    transform: translateY(25px)
}

.vipps-footer .cancel-button .button__button:hover {
    background: #e7e7ef
}

.vipps-footer .cancel-button .button__button:active {
    background: #e1e1eb
}

.gender-choice-container {
    text-align: left
}

.gender-choice-container .info-text {
    color: #706b8b;
    text-align: center;
    margin-top: 16px;
    font-size: 14px;
    line-height: 21px
}

.vipps-header {
    transition: margin-top .1s ease-in-out;
    display: block;
    position: relative
}

@media (min-width: 600px) {
    .vipps-header {
        margin-top:40px
    }
}

body.is-tabbing .vipps-header:focus {
    outline: 1px dotted rgba(0,0,0,.5)
}

.vipps-header__title,.vipps-header__subtitle {
    text-align: center;
    display: block
}

.vipps-header__title {
    color: #000;
    margin: 25px auto 5px;
    padding: 0 10px;
    font-size: 24px;
    font-weight: 600
}

.vipps-header__subtitle {
    color: #000;
    margin-top: 10px;
    font-size: 17px;
    font-weight: 600;
    line-height: 20px
}

.vipps-header .back-button {
    display: none;
    position: absolute;
    top: -15px;
    left: 39px
}

.vipps-header.has-back-button .back-button {
    display: block
}

#udd .vipps-header {
    min-width: 450px
}

.info-container {
    text-align: left;
    min-height: 330px
}

.info-container .info-text {
    color: #706b8b;
    text-align: center;
    margin-top: 16px;
    font-size: 14px;
    line-height: 21px
}

.info-container .terms-link {
    text-align: center
}

.locale-switcher-container {
    z-index: 1;
    flex-direction: column;
    align-items: start;
    height: 28px;
    display: flex;
    position: absolute;
    top: 10px;
    right: 10px
}

@media (min-width: 600px) {
    .locale-switcher-container {
        top:50px;
        right: 50px
    }
}

.locale-switcher-container .locale-switch-top-row {
    flex-direction: row;
    align-items: center;
    display: flex
}

.locale-switcher-container>div {
    margin-top: auto;
    margin-bottom: auto
}

.locale-switcher-container .locale-switcher-text {
    height: 100%;
    font-size: 24px;
    line-height: 28px
}

.theme-vipps .locale-switcher-container .locale-switcher-text {
    color: #5e3dc2
}

.theme-mobilepay .locale-switcher-container .locale-switcher-text {
    color: #5c7aff
}

.locale-switcher-container .caret {
    margin-left: 14px
}

.theme-vipps .locale-switcher-container .caret svg {
    stroke: #5e3dc2;
    fill: #5e3dc2
}

.theme-mobilepay .locale-switcher-container .caret svg {
    stroke: #5c7aff;
    fill: #5c7aff
}

.theme-vipps .locale-switcher-container .caret svg path {
    stroke: #5e3dc2;
    fill: #5e3dc2
}

.theme-mobilepay .locale-switcher-container .caret svg path {
    stroke: #5c7aff;
    fill: #5c7aff
}

.locale-switcher-container .caret.up {
    transform: rotate(180deg)
}

div[data-view=accounts] {
    padding: 24px 30px 0;
    display: flex
}

div[data-view=accounts] .accounts-list {
    padding-left: 15px
}

div[data-view=accounts] .view__content {
    flex-direction: column;
    justify-content: center;
    display: flex
}

div[data-view=accounts] .text {
    text-align: center;
    color: #706b8b;
    max-width: 240px;
    margin: 23px auto 0;
    font-size: 14px;
    line-height: 20px
}

div[data-view=accounts] .action-button {
    padding-top: 20px;
    padding-bottom: 35px
}

div[data-view=accounts] .action-button button {
    width: 80px;
    padding: 0
}

div[data-view=address] {
    padding: 24px 30px 0
}

div[data-view=address] .view__content {
    flex-direction: column;
    justify-content: center;
    display: flex
}

div[data-view=address] .address-list {
    width: 100%;
    padding-left: 15px
}

div[data-view=address] .address-list li {
    width: 100%
}

div[data-view=address] .text {
    text-align: center;
    color: #706b8b;
    max-width: 400px;
    margin: 23px auto 0;
    font-size: 14px;
    line-height: 20px
}

div[data-view=address] .action-button {
    padding-top: 20px;
    padding-bottom: 35px
}

div[data-view=address] .action-button button {
    width: 80px;
    padding: 0
}

div[data-view=app-switch] {
    text-align: center;
    min-height: 261px;
    padding-top: 60px
}

div[data-view=app-switch] .warning-text,div[data-view=app-switch] .warning-text__boxHigh,div[data-view=app-switch] .warning-text__boxLow {
    margin-bottom: 40px;
    margin-left: 10%;
    margin-right: 10%;
    font-size: 14px
}

div[data-view=app-switch] .retryBtn {
    margin-top: 50px;
    margin-bottom: 40px
}

div[data-view=app-switch] .retryBtn .secondary-button__button {
    color: #fff;
    background-color: #5e3dc2;
    border: none;
    border-radius: 24px;
    padding: 6px 15px 8px;
    font-size: 14px;
    font-weight: 600
}

div[data-view=app-switch] .text {
    color: #aaa;
    padding-left: 15px;
    padding-right: 15px;
    font-size: 14px
}

@media (max-width: 450px) {
    div[data-view=app-switch-error] .download-links {
        display:block
    }
}

@media (min-width: 451px) {
    div[data-view=app-switch-error] .download-links {
        display:none
    }
}

@media (max-width: 360px) {
    .download-links {
        width:80%
    }
}

@media (min-width: 361px) {
    .download-links {
        width:70%
    }
}

div[data-view=app-switch-error] {
    display: block
}

div[data-view=app-switch-error] .image-container {
    margin-top: 59px
}

div[data-view=app-switch-error] .image-container img {
    margin: 0 auto;
    display: block
}

div[data-view=app-switch-error] .button-container {
    margin-top: 60px
}

div[data-view=app-switch-fallback] {
    text-align: center;
    min-height: 261px;
    padding-top: 60px
}

div[data-view=app-switch-fallback] .appSwitchFallback {
    visibility: hidden;
    margin-bottom: 40px
}

div[data-view=app-switch-fallback] .text {
    color: #aaa;
    padding-left: 15px;
    padding-right: 15px;
    font-size: 14px
}

div[data-view=app-switch-retry] {
    text-align: center;
    min-height: 261px;
    padding-top: 60px
}

div[data-view=app-switch-retry] .retryBtn {
    margin-top: 40px;
    margin-bottom: 40px
}

div[data-view=app-switch-retry] .retryBtn .secondary-button__button {
    color: #fff;
    background-color: #5e3dc2;
    border: none;
    border-radius: 24px;
    padding: 6px 15px 8px;
    font-size: 14px;
    font-weight: 600
}

div[data-view=app-switch-retry] .retryLink {
    text-align: center
}

div[data-view=app-switch-retry] .retryLink a {
    display: inline-block
}

div[data-view=app-switch-retry] .text {
    color: #aaa;
    padding-left: 15px;
    padding-right: 15px;
    font-size: 14px
}

.vipps-header.waiting {
    margin-top: 64px
}

div[data-view=confirm-information] {
    cursor: default;
    padding-bottom: 10px;
    font-size: 16px
}

div[data-view=confirm-information] .view__content {
    flex-direction: column;
    justify-content: center;
    display: flex
}

div[data-view=confirm-information] .info-container {
    padding-left: 15px
}

div[data-view=confirm-information] .icon-button {
    margin-top: auto;
    padding-bottom: 30px
}

div[data-view=confirm-information] .icon-button .icon-button__text-container {
    min-width: 130px
}

div[data-view=confirm-information] .image-container img {
    margin: 0 auto;
    display: block
}

div[data-view=confirm-information] .infoText {
    color: #706b8b;
    text-align: center;
    margin-top: 16px;
    padding-bottom: 5px;
    font-size: 14px;
    line-height: 21px
}

div[data-view=confirm-information] .title {
    padding: 20px 0;
    font-size: 20px;
    font-weight: 700
}

div[data-view=confirm-information] .text {
    text-align: center;
    padding-bottom: 40px
}

div[data-view=confirm-information] .secondary-button {
    padding-bottom: 26px
}

div[data-view=confirm-information] .secondary-button__button {
    margin: 0 auto;
    display: block
}

div[data-view=consent] .view__content {
    flex-direction: column;
    justify-content: center;
    display: flex
}

div[data-view=consent] .info-container {
    padding-left: 15px
}

div[data-view=consent] .icon-button {
    margin-top: auto;
    padding-top: 30px;
    padding-bottom: 15px
}

div[data-view=consent] .secondary-button {
    padding-bottom: 26px
}

div[data-view=consent] .secondary-button__button {
    margin: 0 auto;
    display: block
}

div[data-view=cookie-blocker] {
    display: block
}

div[data-view=cookie-blocker] .view__content {
    line-height: 22px;
    max-width: 350px!important
}

div[data-view=cookie-blocker] .cookie-blocker-text {
    color: #161225;
    margin-top: 12px;
    font-size: 16px
}

div[data-view=cookie-blocker] .button-container {
    margin-top: 60px
}

div[data-view=cookie-blocker] .hide {
    display: none
}

div[data-view=delegated-consent] {
    cursor: default;
    padding-bottom: 10px;
    font-size: 16px
}

div[data-view=delegated-consent] .view__content {
    flex-direction: column;
    justify-content: center;
    display: flex
}

div[data-view=delegated-consent] .info-container {
    padding-left: 15px
}

div[data-view=delegated-consent] .icon-button {
    margin-top: auto;
    padding-bottom: 30px
}

div[data-view=delegated-consent] .icon-button .icon-button__text-container {
    min-width: 130px
}

div[data-view=delegated-consent] .infoText {
    color: #706b8b;
    text-align: center;
    margin-top: 16px;
    padding-bottom: 5px;
    font-size: 14px;
    line-height: 21px
}

div[data-view=delegated-consent] .title {
    padding: 20px 0;
    font-size: 20px;
    font-weight: 700
}

div[data-view=delegated-consent] .text {
    text-align: center;
    padding: 40px 0
}

div[data-view=delegated-consent] .secondary-button {
    padding-bottom: 26px
}

div[data-view=delegated-consent] .secondary-button__button {
    margin: 0 auto;
    display: block
}

div[data-view=error] {
    display: block
}

div[data-view=error] .image-container img {
    margin: 0 auto;
    display: block
}

div[data-view=error] .action-button {
    margin-top: auto;
    padding-bottom: 65px
}

div[data-view=error] .vipps-error__title,div[data-view=error] .vipps-error__subtitle {
    text-align: center;
    display: block
}

div[data-view=error] .vipps-error__title {
    color: #000;
    margin: 25px auto 5px;
    font-size: 24px;
    font-weight: 600
}

div[data-view=error] .vipps-error__subtitle {
    color: #000;
    margin-top: 10px;
    font-size: 17px;
    font-weight: 400;
    line-height: 20px
}

div[data-view=error] .button-container {
    margin-top: 60px
}

@media (min-width: 320px) {
    div[data-view=force-user-interaction] {
        padding-top:50px
    }
}

@media (min-width: 600px) {
    div[data-view=force-user-interaction] {
        padding-top:100px
    }
}

div[data-view=force-user-interaction] .view__content {
    flex-direction: column;
    justify-content: center;
    display: flex
}

div[data-view=gender-choice] {
    cursor: default;
    padding-bottom: 10px;
    font-size: 16px
}

div[data-view=gender-choice] .view__content {
    flex-direction: column;
    justify-content: center;
    display: flex
}

div[data-view=gender-choice] .info-container {
    padding-left: 15px
}

div[data-view=gender-choice] .icon-button {
    margin-top: auto;
    padding-bottom: 30px
}

div[data-view=gender-choice] .icon-button .icon-button__text-container {
    min-width: 130px
}

div[data-view=gender-choice] .infoText {
    color: #706b8b;
    text-align: center;
    margin-top: 16px;
    padding-bottom: 5px;
    font-size: 14px;
    line-height: 21px
}

div[data-view=gender-choice] .title {
    padding: 20px 0;
    font-size: 20px;
    font-weight: 700
}

div[data-view=gender-choice] .text {
    text-align: center;
    padding: 10px 0;
    font-weight: 400
}

div[data-view=gender-choice] .text-wrapper {
    margin: 10px 0
}

div[data-view=gender-choice] .secondary-button {
    padding-bottom: 26px
}

div[data-view=gender-choice] .secondary-button__button {
    margin: 0 auto;
    display: block
}

div[data-view=generic-description] {
    display: block
}

div[data-view=generic-description] .descriptionText {
    margin: 20px 0;
    font-size: 16px
}

div[data-view=generic-error] {
    display: block
}

div[data-view=generic-error] .generic-error-text {
    color: #161225;
    margin-top: 35px;
    font-size: 16px;
    line-height: 23px
}

div[data-view=invalid-session] {
    display: block
}

div[data-view=invalid-session] .generic-error-text {
    color: #161225;
    margin-top: 35px;
    font-size: 16px;
    line-height: 23px
}

div[data-view=invalid-session] .vipps-footer {
    display: none!important
}

div[data-view=login] {
    display: block
}

div[data-view=login] .view__content {
    height: 300px
}

div[data-view=login] .warning-text,div[data-view=login] .warning-text__boxHigh,div[data-view=login] .warning-text__boxLow {
    margin-bottom: 15px
}

div[data-view=login] .checkbox {
    margin-top: 19px
}

div[data-view=login] .checkbox input {
    width: 16px;
    height: 15px
}

div[data-view=login] .action-button {
    margin-top: auto;
    padding-top: 30px;
    padding-bottom: 65px
}

div[data-view=login] .error-text {
    color: #c60000;
    margin-top: 15px;
    font-size: 14px;
    display: none
}

div[data-view=login].has-error .error-text {
    display: block
}

div[data-view=login].has-error .checkbox {
    display: none
}

div[data-view=login].has-error .phone-input {
    animation-name: bounce;
    animation-duration: .4s
}

div[data-view=login] form {
    flex-direction: column;
    height: 100%;
    display: flex
}

div[data-view=notification] {
    display: block
}

div[data-view=notification] .challenge-container {
    height: 146px;
    margin: 32px auto 0;
    display: block;
    position: relative
}

div[data-view=notification] .challenge-container--icon {
    width: 136px;
    height: 136px;
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%,-50%)
}

div[data-view=notification] .text {
    color: #161225;
    text-align: center;
    margin: 32px auto 0;
    font-size: 16px
}

div[data-view=notification] .text div {
    text-align: center;
    width: 100%
}

div[data-view=notification] .phone-number {
    justify-content: center;
    margin-top: 15px;
    margin-bottom: 15px;
    display: flex
}

div[data-view=notification] .phone-number span {
    color: #706b8b;
    padding: 5px 15px;
    font-size: 16px;
    font-weight: 500
}

div[data-view=notification] .device {
    justify-content: center;
    margin-top: 5px;
    display: flex
}

div[data-view=notification] .device span {
    color: #706b8b;
    font-size: 14px;
    font-weight: 500
}

div[data-view=spinner] {
    opacity: 0;
    margin-top: -50px;
    animation: 1s .2s forwards spinnerOpacity
}

div[data-view=spinner] .view__content {
    flex-direction: column;
    justify-content: center;
    height: 370px;
    display: flex
}

@keyframes spinnerOpacity {
    0% {
        opacity: 0
    }

    to {
        opacity: 1
    }
}

#top-header {
    flex-direction: column;
    width: 100%;
    height: 70px;
    min-height: 50px;
    display: flex
}

@media (min-width: 600px) {
    #top-header {
        min-height:137px
    }
}

#top-header .header-logo {
    margin: auto;
    padding-top: 10px
}

#top-header>div {
    flex-direction: column;
    align-items: center;
    height: 100%;
    display: flex
}

#header-and-content {
    height: 527px;
    max-height: 527px
}

.viewport {
    text-align: left;
    vertical-align: middle;
    -webkit-font-smoothing: antialiased;
    border-radius: 20px;
    flex-direction: column;
    flex-shrink: 0;
    width: 100%;
    max-width: 480px;
    height: auto;
    min-height: 400px;
    font-family: -apple-system,BlinkMacSystemFont,sans-serif;
    line-height: 1.3;
    display: flex;
    box-shadow: 0 1px 4px rgba(22,18,37,.17),0 1px 1px rgba(22,18,37,.05)
}

@media (min-width: 600px) {
    .viewport {
        min-height:565px;
        margin-top: auto;
        margin-bottom: auto
    }
}

.theme-vipps .viewport {
    background: #fff
}

.theme-mobilepay .viewport {
    background: #f5f5f2
}

.viewport .main-content {
    flex-flow: column;
    flex-grow: 1;
    margin-top: 20px;
    transition: height .4s;
    display: flex;
    position: relative;
    overflow: hidden
}

.viewport .main-content .view {
    overflow: initial;
    box-sizing: border-box;
    width: 100%;
    height: 100%;
    padding: 0 10px;
    display: none;
    position: relative
}

.viewport .main-content .view.active {
    display: block
}

.viewport .main-content .view .view__content {
    box-sizing: content-box;
    flex-direction: column;
    max-width: 384px;
    height: 100%;
    margin: auto;
    padding: 0 20px;
    display: flex;
    position: relative
}
