html { background: #f4f8fa; }
body.login.webcreative-customer-login {
    min-height: 100vh;
    background:
        radial-gradient(circle at 12% 10%, rgba(8,109,168,.08), transparent 32%),
        radial-gradient(circle at 88% 88%, rgba(8,109,168,.05), transparent 30%),
        #f7f9f7;
    color: #102c3d;
    font-family: Inter, -apple-system, BlinkMacSystemFont, "Segoe UI", Arial, sans-serif;
}
body.login.webcreative-customer-login::before {
    content: "KUNDPORTAL";
    position: fixed;
    top: 22px;
    left: 28px;
    z-index: 2;
    color: #0b4a70;
    font-size: 12px;
    font-weight: 800;
    letter-spacing: .16em;
}
body.login.webcreative-customer-login #login {
    width: min(440px, calc(100vw - 32px));
    padding: 72px 0 40px;
}
body.login.webcreative-customer-login #login h1 { margin: 0 0 22px; }
body.login.webcreative-customer-login #login h1 a {
    width: min(280px, 78%);
    margin: 0 auto;
    padding: 0;
    color: #0b4a70;
    font-size: 22px;
    font-weight: 800;
    line-height: 1.15;
}
body.login.webcreative-customer-login--has-logo #login h1 a {
    height: 82px;
    background-size: contain;
    background-position: center;
    background-repeat: no-repeat;
    text-indent: -9999px;
    overflow: hidden;
}
body.login.webcreative-customer-login--text-logo #login h1 a {
    height: auto;
    background: none;
    text-indent: 0;
    text-decoration: none;
}
body.login.webcreative-customer-login form {
    margin-top: 0;
    padding: 34px 34px 30px;
    border: 1px solid #d6e3e9;
    border-radius: 18px;
    background: rgba(255,255,255,.96);
    box-shadow: 0 24px 70px rgba(13,72,104,.12);
}
body.login.webcreative-customer-login form::before {
    content: "Kundportal";
    display: block;
    margin: 0 0 6px;
    color: #0b405f;
    font-family: Georgia, "Times New Roman", serif;
    font-size: 34px;
    line-height: 1.1;
    letter-spacing: -.035em;
}
body.login.webcreative-customer-login.login-action-login form::before { content: "Logga in"; }
body.login.webcreative-customer-login.login-action-lostpassword form::before { content: "Återställ lösenord"; }
body.login.webcreative-customer-login.login-action-rp form::before,
body.login.webcreative-customer-login.login-action-resetpass form::before { content: "Välj nytt lösenord"; }
body.login.webcreative-customer-login.login-action-register form::before { content: "Skapa konto"; }
body.login.webcreative-customer-login label {
    color: #173a4e;
    font-size: 13px;
    font-weight: 700;
}
body.login.webcreative-customer-login .user-pass-wrap,
body.login.webcreative-customer-login.login-action-login form > p:first-of-type { margin-top: 28px; }
body.login.webcreative-customer-login.login-action-lostpassword form > p:first-of-type,
body.login.webcreative-customer-login.login-action-rp form > p:first-of-type,
body.login.webcreative-customer-login.login-action-resetpass form > p:first-of-type { margin-top: 24px; }
body.login.webcreative-customer-login input[type="text"],
body.login.webcreative-customer-login input[type="password"],
body.login.webcreative-customer-login input[type="email"] {
    min-height: 50px;
    padding: 8px 12px;
    border: 1px solid #bfd0d8;
    border-radius: 10px;
    background: #fff;
    color: #102c3d;
    font-size: 16px;
    box-shadow: none;
}
body.login.webcreative-customer-login input[type="text"]:focus,
body.login.webcreative-customer-login input[type="password"]:focus,
body.login.webcreative-customer-login input[type="email"]:focus {
    border-color: #086da8;
    outline: 0;
    box-shadow: 0 0 0 3px rgba(8,109,168,.12);
}
body.login.webcreative-customer-login .wp-pwd button { color: #086da8; }
body.login.webcreative-customer-login .forgetmenot { margin-top: 8px; }
body.login.webcreative-customer-login .forgetmenot label { color: #49636f; font-weight: 500; }
body.login.webcreative-customer-login .submit { margin-top: 18px; }
body.login.webcreative-customer-login .button-primary {
    min-height: 48px;
    padding: 0 24px;
    border: 0;
    border-radius: 999px;
    background: #086da8;
    font-size: 15px;
    font-weight: 800;
    box-shadow: none;
    text-shadow: none;
}
body.login.webcreative-customer-login .button-primary:hover,
body.login.webcreative-customer-login .button-primary:focus {
    background: #074d79;
}
body.login.webcreative-customer-login #nav {
    margin: 18px 0 0;
    padding: 0;
    text-align: center;
}
body.login.webcreative-customer-login #nav a { color: #0b5c88; font-weight: 650; }
body.login.webcreative-customer-login #backtoblog,
body.login.webcreative-customer-login .privacy-policy-page-link,
body.login.webcreative-customer-login .language-switcher { display: none !important; }
body.login.webcreative-customer-login .message,
body.login.webcreative-customer-login #login_error,
body.login.webcreative-customer-login .success {
    margin: 0 0 18px;
    padding: 14px 16px;
    border: 1px solid #c9dce5;
    border-left: 4px solid #086da8;
    border-radius: 10px;
    background: #fff;
    box-shadow: none;
}
body.login.webcreative-customer-login #login_error { border-left-color: #c94646; }
body.login.webcreative-customer-login .button.wp-hide-pw { min-height: 50px; }
@media (max-width: 520px) {
    body.login.webcreative-customer-login::before { top: 16px; left: 18px; }
    body.login.webcreative-customer-login #login { padding-top: 58px; }
    body.login.webcreative-customer-login form { padding: 28px 22px 24px; }
    body.login.webcreative-customer-login form::before { font-size: 30px; }
}
