/* FOOD VIBES STEP 57 — scoped to Admin / Manager login ONLY.
   Earlier site-wide header and pseudo-element rules left an empty pale strip.
   This page has its own login card and needs no outer website navigation. */
html, html body.fv57-admin-login { min-height: 100%; }
html body.fv57-admin-login {
    margin: 0 !important;
    min-height: 100vh;
    padding: 0 16px 32px !important;
}
/* Remove legacy decorative bars; don't affect other pages. */
html body.fv57-admin-login::before,
html body.fv57-admin-login::after {
    content: none !important;
    display: none !important;
    height: 0 !important;
    border: 0 !important;
    box-shadow: none !important;
}
/* Hide redundant site headers only on this standalone login screen. */
html body.fv57-admin-login > :is(
    header, nav, [role="banner"],
    .customer-top, .admin-top, .dash-top, .site-header, .site-nav,
    .fv-admin-header, .fv-cust-header, .header, .navbar, .topbar,
    .auth-page-header, .fv-announcement, .fv-notice-top, .fv-mobile-shortcuts
) { display: none !important; }
/* Some legacy layouts leave an empty, unnamed full-width wrapper. */
html body.fv57-admin-login > div:empty:not([id]):not([class]) { display: none !important; }
/* Keep the card centred and spaced appropriately on phones and desktops. */
html body.fv57-admin-login > main.auth-card {
    box-sizing: border-box;
    position: relative;
    z-index: 1;
    display: block;
    width: min(100%, 450px) !important;
    margin: clamp(25px, 6vh, 75px) auto 24px !important;
}
@media (max-width: 560px) {
    html body.fv57-admin-login { padding: 0 12px 24px !important; }
    html body.fv57-admin-login > main.auth-card {
        width: 100% !important;
        margin: 24px auto !important;
    }
}

/* FOOD VIBES 2026-10-14: Keep the first login card's top margin inside body
   so the page background fills the pale strip above the card. */
html body.fv57-admin-login {
    display: flow-root !important;
}
