/* Schermata di accesso (wp-login.php) con l'identita' del sito e nessun riferimento a
   WordPress. I colori sono le variabili di theme.json, iniettate da functions.php con
   wp_get_global_stylesheet(['variables']): anche qui nessun colore letterale. */

body.login {
    background: var(--wp--preset--color--surface);
    color: var(--wp--preset--color--contrast);
    font-family: var(--wp--preset--font-family--body);
}

.login h1 a {
    background-image: none;
    inline-size: auto;
    block-size: auto;
    text-indent: 0;
    font-family: var(--wp--preset--font-family--display);
    font-size: 1.75rem;
    font-weight: 700;
    letter-spacing: -0.02em;
    color: var(--wp--preset--color--contrast);
    text-decoration: none;
    padding: 0;
    margin-block-end: 1.5rem;
}

.login h1 a:focus-visible {
    outline: 3px solid var(--wp--preset--color--brand);
    outline-offset: 4px;
    box-shadow: none;
}

.login form {
    border: 1px solid var(--wp--preset--color--hairline);
    border-radius: var(--wp--custom--radius--lg, 1.25rem);
    box-shadow: 0 1px 2px rgb(17 26 46 / 0.05), 0 16px 40px -24px rgb(17 26 46 / 0.25);
    padding: 2rem;
}

.login label {
    color: var(--wp--preset--color--contrast);
    font-weight: 600;
    font-size: 0.9rem;
}

.login input[type="text"],
.login input[type="password"],
.login input[type="email"] {
    border: 1px solid var(--wp--preset--color--line);
    border-radius: var(--wp--custom--radius--sm, 0.5rem);
    padding: 0.55rem 0.75rem;
    font-size: 1rem;
    min-block-size: 44px;
}

/* Il focus si VEDE: anello nel blu del brand (3:1 sul fondo, la stessa coppia che
   tools/contrast-check.py dichiara), non una tinta a 1,1:1 con outline: none. */
.login input:focus,
.login input:focus-visible {
    border-color: var(--wp--preset--color--brand);
    box-shadow: 0 0 0 3px var(--wp--preset--color--brand-tint);
    outline: 3px solid var(--wp--preset--color--brand);
    outline-offset: 2px;
}

.login .button-primary,
.wp-core-ui .button-primary {
    background: var(--wp--preset--color--brand);
    border: 0;
    border-radius: 999px;
    color: var(--wp--preset--color--base);
    font-weight: 600;
    min-block-size: 44px;
    padding-inline: 1.375rem;
    text-shadow: none;
    box-shadow: none;
}

.login .button-primary:hover,
.login .button-primary:focus {
    background: var(--wp--preset--color--brand-dark);
    color: var(--wp--preset--color--base);
}

.login .button-primary:focus-visible {
    outline: 3px solid var(--wp--preset--color--brand);
    outline-offset: 3px;
    box-shadow: none;
}

.login #nav a,
.login #backtoblog a,
.login .privacy-policy-page-link a {
    color: var(--wp--preset--color--brand);
    text-decoration: underline;
    text-underline-offset: 0.15em;
}

.login #nav a:hover,
.login #backtoblog a:hover {
    color: var(--wp--preset--color--brand-dark);
}

.login .message,
.login .notice,
.login #login_error {
    border-left-color: var(--wp--preset--color--brand);
    border-radius: var(--wp--custom--radius--sm, 0.5rem);
}

.login .language-switcher {
    display: none;
}

@media (prefers-reduced-motion: reduce) {
    .login * {
        transition: none !important;
    }
}
