@charset "UTF-8";
body.login-bg {
    min-height: 100vh;
    margin: 0;

    background-image: url('/assets/img/pa-election.png');
    background-size: cover;
    background-position: center top;
    background-repeat: no-repeat;
    background-attachment: fixed;

    position: relative;
}

/* 背景を少しだけ明るく */
body.login-bg::before {
    content: "";
    position: fixed;
    inset: 0;

    background:
        linear-gradient(
            rgba(255,255,255,0.15),
            rgba(255,255,255,0.25)
        );

    z-index: 0;
    pointer-events: none;
}

#layoutAuthentication,
#layoutAuthentication_content,
main,
.container,
.row,
.col-lg-5 {
    position: relative;
    z-index: 1;
}

.login-card {
    background: rgba(255,255,255,0.94);

    backdrop-filter: blur(4px);
    -webkit-backdrop-filter: blur(4px);

    border-radius: 20px !important;
}

.login-card .card-header {
    background: rgba(255,255,255,0.98);
}

@media (max-width: 576px) {

    body.login-bg {
        background-position: center top;
        background-size: cover;
        background-attachment: scroll;
    }

    .login-card {
        margin-top: 2rem !important;
    }
}