:root {
    --acervo-wine-dark: #2a0004;
    --acervo-wine: #620c13;
    --acervo-coral: #d94b58;
    --acervo-coral-bright: #ef6370;
    --acervo-bg: #202020;
    --acervo-panel: #29292b;
    --acervo-line: rgba(255, 255, 255, 0.14);
    --acervo-text: #ffffff;
    --acervo-muted: #aaaab0;
}

body.login.acervo-login-user {
    box-sizing: border-box;
    min-height: 100vh;
    padding: 30px 18px;
    overflow-x: hidden;
    background:
        radial-gradient(circle at 12% 14%, rgba(98, 12, 19, 0.28), transparent 34rem),
        radial-gradient(circle at 88% 86%, rgba(217, 75, 88, 0.11), transparent 30rem),
        var(--acervo-bg);
    color: var(--acervo-text);
    font-family: "Poppins", "Segoe UI", Arial, sans-serif;
}

body.login.acervo-login-user::before {
    content: "";
    position: fixed;
    inset: 0 0 auto;
    z-index: 0;
    height: 7px;
    background: linear-gradient(90deg, var(--acervo-wine-dark), var(--acervo-coral), var(--acervo-wine-dark));
}

body.login.acervo-login-user *,
body.login.acervo-login-user *::before,
body.login.acervo-login-user *::after {
    box-sizing: border-box;
}

body.login.acervo-login-user #login {
    position: relative;
    z-index: 1;
    width: min(100%, 440px);
    margin: 0 auto;
    padding: 16px 0 0;
}

body.login.acervo-login-user #login h1 {
    margin: 0 0 20px;
}

body.login.acervo-login-user #login h1 a {
    width: 190px;
    height: 82px;
    margin: 0 auto;
    background-image: var(--acervo-login-logo, url("https://acervohentai.com/wp-content/uploads/2026/06/logo2-1.webp"));
    background-position: center;
    background-size: contain;
    filter: drop-shadow(0 10px 22px rgba(0, 0, 0, 0.3));
}

body.login.acervo-login-user .acervo-login-intro {
    padding: 0 4px 20px;
    text-align: center;
}

body.login.acervo-login-user .acervo-login-intro span {
    display: inline-block;
    margin-bottom: 9px;
    padding: 5px 11px;
    border-radius: 4px;
    background: var(--acervo-wine);
    color: #fff;
    font-size: 11px;
    font-weight: 800;
    letter-spacing: 0.09em;
    line-height: 1;
    text-transform: uppercase;
}

body.login.acervo-login-user .acervo-login-intro h2 {
    margin: 0 0 8px;
    color: #fff;
    font-size: 26px;
    font-weight: 750;
    line-height: 1.2;
}

body.login.acervo-login-user .acervo-login-intro p {
    max-width: 360px;
    margin: 0 auto;
    color: var(--acervo-muted);
    font-size: 14px;
    line-height: 1.6;
}

body.login.acervo-login-user form {
    margin-top: 0;
    padding: 30px;
    border: 1px solid var(--acervo-line);
    border-top: 4px solid var(--acervo-wine);
    border-radius: 12px;
    background: linear-gradient(145deg, rgba(47, 47, 49, 0.98), rgba(35, 35, 37, 0.98));
    box-shadow: 0 24px 65px rgba(0, 0, 0, 0.42);
}

body.login.acervo-login-user label {
    color: #f3f3f4;
    font-size: 13px;
    font-weight: 650;
}

body.login.acervo-login-user .input,
body.login.acervo-login-user input[type="text"],
body.login.acervo-login-user input[type="email"],
body.login.acervo-login-user input[type="password"] {
    min-height: 48px;
    margin: 7px 0 18px;
    padding: 10px 13px;
    border: 1px solid rgba(255, 255, 255, 0.16);
    border-radius: 7px;
    outline: none;
    background: #19191a;
    box-shadow: none;
    color: #fff;
    font-size: 16px;
    transition: border-color 160ms ease, box-shadow 160ms ease, background 160ms ease;
}

body.login.acervo-login-user .input:focus,
body.login.acervo-login-user input[type="text"]:focus,
body.login.acervo-login-user input[type="email"]:focus,
body.login.acervo-login-user input[type="password"]:focus {
    border-color: var(--acervo-coral);
    background: #212123;
    box-shadow: 0 0 0 3px rgba(217, 75, 88, 0.18);
}

body.login.acervo-login-user .wp-pwd .button {
    color: #e9838c;
}

body.login.acervo-login-user .forgetmenot {
    margin: 1px 0 17px;
}

body.login.acervo-login-user input[type="checkbox"] {
    border-color: rgba(255, 255, 255, 0.28);
    background: #19191a;
    box-shadow: none;
}

body.login.acervo-login-user .submit {
    clear: both;
}

body.login.acervo-login-user .button.button-primary {
    width: 100%;
    min-height: 46px;
    border: 1px solid #c3404c;
    border-radius: 7px;
    background: linear-gradient(135deg, var(--acervo-wine), var(--acervo-coral));
    box-shadow: 0 10px 24px rgba(98, 12, 19, 0.32);
    color: #fff;
    font-size: 14px;
    font-weight: 750;
    letter-spacing: 0.025em;
    text-shadow: none;
    transition: transform 160ms ease, box-shadow 160ms ease, filter 160ms ease;
}

body.login.acervo-login-user .button.button-primary:hover,
body.login.acervo-login-user .button.button-primary:focus {
    border-color: var(--acervo-coral-bright);
    background: linear-gradient(135deg, #7b111a, var(--acervo-coral-bright));
    box-shadow: 0 13px 30px rgba(217, 75, 88, 0.3);
    transform: translateY(-1px);
    filter: brightness(1.04);
}

body.login.acervo-login-user #nav,
body.login.acervo-login-user #backtoblog,
body.login.acervo-login-user .privacy-policy-page-link {
    color: var(--acervo-muted);
    text-align: center;
}

body.login.acervo-login-user #nav {
    margin: 22px 0 0;
}

body.login.acervo-login-user #backtoblog {
    margin: 12px 0 0;
}

body.login.acervo-login-user #nav a,
body.login.acervo-login-user #backtoblog a,
body.login.acervo-login-user .privacy-policy-page-link a {
    color: #e98790;
    font-weight: 600;
    text-decoration: none;
    transition: color 150ms ease;
}

body.login.acervo-login-user #nav a:hover,
body.login.acervo-login-user #nav a:focus,
body.login.acervo-login-user #backtoblog a:hover,
body.login.acervo-login-user #backtoblog a:focus,
body.login.acervo-login-user .privacy-policy-page-link a:hover {
    color: #fff;
}

body.login.acervo-login-user .message,
body.login.acervo-login-user .notice,
body.login.acervo-login-user #login_error {
    margin: 0 0 20px;
    border: 1px solid rgba(217, 75, 88, 0.3);
    border-left: 4px solid var(--acervo-coral);
    border-radius: 7px;
    background: #29292b;
    box-shadow: 0 12px 28px rgba(0, 0, 0, 0.24);
    color: #f5f5f5;
}

body.login.acervo-login-user #login_error {
    border-left-color: var(--acervo-coral-bright);
}

body.login.acervo-login-user .message a,
body.login.acervo-login-user .notice a,
body.login.acervo-login-user #login_error a {
    color: #f4a0a7;
}

body.login.acervo-login-user .language-switcher {
    margin-top: 18px;
}

body.login.acervo-login-user .language-switcher select {
    border-color: var(--acervo-line);
    border-radius: 6px;
    background: var(--acervo-panel);
    color: #fff;
}

@media (max-width: 520px) {
    body.login.acervo-login-user {
        display: block;
        padding: 18px 14px 28px;
    }

    body.login.acervo-login-user #login {
        width: 100%;
        padding-top: 8px;
    }

    body.login.acervo-login-user #login h1 {
        margin-bottom: 14px;
    }

    body.login.acervo-login-user #login h1 a {
        width: 175px;
        height: 76px;
    }

    body.login.acervo-login-user .acervo-login-intro {
        padding-bottom: 16px;
    }

    body.login.acervo-login-user .acervo-login-intro h2 {
        font-size: 23px;
    }

    body.login.acervo-login-user .acervo-login-intro p {
        font-size: 13px;
        line-height: 1.5;
    }

    body.login.acervo-login-user form {
        padding: 24px 20px;
        border-radius: 10px;
    }
}

@media (prefers-reduced-motion: reduce) {
    body.login.acervo-login-user *,
    body.login.acervo-login-user *::before,
    body.login.acervo-login-user *::after {
        transition: none !important;
    }
}

