:root {
    --trek-login-deep: #0b3a35;
    --trek-login-mid: #12564f;
    --trek-login-accent: #f4b24d;
}

body.login {
    min-height: 100vh;
    background:
        linear-gradient(135deg, rgba(11, 58, 53, 0.92), rgba(18, 86, 79, 0.82)),
        var(--trek-login-bg) center / cover no-repeat,
        linear-gradient(180deg, #0f403a 0%, #1f7a6e 100%);
    display: grid;
    place-items: center;
}

body.login div#login {
    width: min(420px, calc(100vw - 32px));
    padding: 0;
}

.login h1 {
    margin-bottom: 18px;
}

.login h1 a {
    width: 100%;
    height: 82px;
    margin: 0 auto;
    background-image: var(--trek-login-logo);
    background-size: contain;
    background-position: center;
}

.login form {
    margin-top: 0;
    padding: 28px;
    border: 1px solid rgba(255, 255, 255, 0.08);
    border-radius: 24px;
    background: rgba(255, 255, 255, 0.96);
    box-shadow: 0 22px 45px rgba(9, 36, 33, 0.28);
}

.login form .input,
.login input[type="text"],
.login input[type="password"] {
    min-height: 48px;
    border: 1px solid #cad7d2;
    border-radius: 14px;
    box-shadow: none;
}

.login label {
    color: #21423b;
    font-weight: 600;
}

.login .button.wp-hide-pw {
    color: #21423b;
}

.login .button-primary {
    width: 100%;
    min-height: 48px;
    border: 0;
    border-radius: 999px;
    background: linear-gradient(135deg, var(--trek-login-accent), #ffca70);
    color: #173630;
    font-weight: 700;
    box-shadow: none;
}

.login .button-primary:hover,
.login .button-primary:focus {
    background: linear-gradient(135deg, #eba63b, #ffc35f);
    color: #173630;
}

.login #nav,
.login #backtoblog,
.login .privacy-policy-page-link {
    text-align: center;
}

.login #nav a,
.login #backtoblog a,
.login .privacy-policy-page-link a {
    color: rgba(255, 255, 255, 0.92);
}

.login .message,
.login .notice,
.login #login_error {
    border-left: 4px solid var(--trek-login-accent);
    border-radius: 14px;
}
