.auth-shell{
    max-width:460px;
}

.auth-card{
    width:100%;
    max-width:440px;
    margin:0 auto;
    padding:34px;
}

.auth-card .brand-logo{
    width:min(260px,76vw);
    margin-bottom:24px;
}

.auth-card h1,
.auth-card p{
    text-align:center;
}

.auth-card form{
    margin-top:26px;
}

.auth-meta{
    margin-top:16px;
    text-align:center;
    font-size:13px;
    color:var(--color-muted);
}

.session-bar{
    position:fixed;
    top:22px;
    right:24px;
    z-index:20;
    width:min(360px,calc(100vw - 48px));
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:12px;
    padding:10px 12px;
    border:1px solid #d8e7ea;
    border-radius:8px;
    background:#fff;
    color:var(--color-text);
    box-shadow:0 10px 26px rgba(0,0,0,.06);
}

.session-user{
    min-width:0;
    max-width:210px;
}

.session-user strong,
.session-user span{
    display:block;
    overflow:hidden;
    text-overflow:ellipsis;
    white-space:nowrap;
}

.session-user span{
    margin-top:2px;
    font-size:12px;
    color:var(--color-muted);
}

.session-actions{
    display:flex;
    align-items:center;
    gap:10px;
    flex:0 0 auto;
}

.session-actions .button{
    width:auto;
    min-width:100px;
    padding:9px 12px;
    font-size:13px;
}

.button.secondary{
    background:#eef5f6;
    color:var(--color-brand);
}

.button.secondary:hover{
    background:#dcecef;
}

.auth-loading{
    visibility:hidden;
    margin-top:10px;
    text-align:center;
    font-size:13px;
    color:var(--color-muted);
}

.auth-loading.is-visible{
    visibility:visible;
}

[hidden],
.auth-hidden{
    display:none !important;
}

@media (max-width:560px){
    .session-bar{
        position:static;
        width:100%;
        align-items:flex-start;
        flex-direction:column;
        margin:0 auto 22px;
        padding:12px 14px;
    }

    .session-user{
        max-width:100%;
    }

    .session-actions,
    .session-actions .button{
        width:100%;
    }

    .auth-card{
        padding:26px;
    }
}
body[data-requires-auth] .module-shell,
body[data-requires-auth] .module-footer{
    visibility:hidden;
}

html.auth-ready body[data-requires-auth] .module-shell,
html.auth-ready body[data-requires-auth] .module-footer{
    visibility:visible;
}

