:root {
    --kleur-rood: #F91E43;
    --kleur-groen: #3cf0c5;
    --kleur-zwart: #000000;
    --kleur-wit: #ffffff;

    --login-width: 300px;
    --radius: 0;
    --shadow-soft: 0 1px 5px rgba(0, 0, 0, 0.1);
    --input-bg: rgba(239, 239, 239, 1);
}

/* Login layout */
body.login {
    overflow-y: hidden;
    display: flex;
    background: var(--kleur-groen) url(../img/background.png) no-repeat;
    background-size: contain;
}

body.login #login {
    margin: auto;
    width: var(--login-width);
    padding: 0;
    background-color: transparent;
}

/* Hide language UI (duplicated rules consolidated) */
body.login .language-switcher,
.language-switcher label {
    display: none;
}

/* Header / logo */
body.login #login h1 {
    margin: 0 auto;
    height: 100px;
    text-align: center;
    background-color: var(--kleur-zwart);
}

body.login #login h1 a {
    display: block;
    width: 100%;
    height: 100%;
    margin: 0;
    background: url(../img/beeldmerk_catapult_animatie.gif) center / 75px no-repeat;
}

/* Form */
body.login form {
    margin-top: 0;
    padding: 30px 35px;
    border: none;
    border-radius: var(--radius);
    box-shadow: var(--shadow-soft);
}

/* Inputs */
body.login form .input,
body.login form input[type="checkbox"],
body.login input[type="text"] {
    background: var(--input-bg);
    border: none;
    border-radius: var(--radius);
    box-shadow: none;
}

/* Buttons */
body.login .button-primary,
body.wp-core-ui .button-group.button-large .button,
body.wp-core-ui .button.button-large {
    width: 100%;
    margin-top: 15px;
    padding: 20px;
    line-height: 0;
    border: none;
    border-radius: var(--radius);
    box-shadow: none;
    text-shadow: none;
    background-color: var(--kleur-rood);
}

body.login .button-primary:hover,
body.wp-core-ui .button-group.button-large .button:hover,
body.wp-core-ui .button.button-large:hover {
    color: var(--kleur-wit);
    background-color: var(--kleur-zwart);
}

/* Nav links */
body.login #nav {
    margin: 15px 0;
}

p#backtoblog {
    display: none;
}

body.login #backtoblog a,
body.login #nav a {
    display: block;
    max-width: 180px;
    margin: 0 auto;
    padding: 10px;
    text-align: center;

    color: var(--kleur-rood);
    background-color: var(--kleur-wit);
    border-radius: var(--radius);
}

body.login #backtoblog a:hover,
body.login #nav a:hover {
    color: var(--kleur-wit);
    background-color: var(--kleur-rood);
}

/* Messages */
body.login .message,
body.login .notice,
body.login .success {
    margin-bottom: 0;
    border-color: var(--kleur-rood);
}

/* Footer logo */
.ccms_logo {
    position: absolute;
    left: 30px;
    bottom: 30px;
}

.ccms_logo img {
    width: 100%;
    height: auto;
}