/* Footer Velzon Zone18 — barre fine en bas. */

html,
body.z18-velzon-test {
    min-height: 100%;
}

body.z18-velzon-test #layout-wrapper {
    min-height: 100vh;
}

body.z18-velzon-test .navbar-menu.app-menu {
    top: 0 !important;
    bottom: 36px !important;
    height: auto !important;
    max-height: none !important;
    padding-bottom: 0 !important;
    z-index: 1002 !important;
}

/* Hauteur du menu gérée dans zone18-velzon-test.css (flex + météo). */

body.z18-velzon-test footer.zone18-footer,
body.z18-velzon-test footer.footer:not(.z18-app-footer),
body.z18-velzon-test .info-tooter {
    display: none !important;
}

body.z18-velzon-test .z18-app-footer,
body.z18-velzon-test footer.z18-app-footer {
    position: fixed !important;
    top: auto !important;
    right: 0 !important;
    bottom: 0 !important;
    left: 0 !important;
    z-index: 1100 !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    float: none !important;
    clear: both !important;
    width: 100% !important;
    max-width: none !important;
    height: 36px !important;
    min-height: 36px !important;
    max-height: 36px !important;
    margin: 0 !important;
    padding: 0 !important;
    border: 0 !important;
    border-top: 1px solid var(--z18-fire, #c24f47) !important;
    border-radius: 0 !important;
    color: rgba(255, 255, 255, .5) !important;
    background: var(--z18-chrome, #3a4048) !important;
    background-image: none !important;
    box-shadow: none !important;
    overflow: hidden !important;
    flex: none !important;
    box-sizing: border-box !important;
    transform: none !important;
    clip-path: none !important;
}

body.z18-velzon-test .main-content {
    display: flex;
    position: relative;
    min-height: 100vh;
    flex-direction: column;
    padding-bottom: 36px !important;
    box-sizing: border-box;
}

body.z18-velzon-test .main-content > .page-content {
    width: 100%;
    flex: 1 0 auto;
    padding-bottom: 1rem !important;
}

body.z18-velzon-test .z18-app-footer-inner {
    display: flex;
    flex-wrap: nowrap !important;
    align-items: center !important;
    justify-content: center;
    gap: 6px 14px;
    width: 100%;
    max-width: none;
    height: 36px !important;
    margin: 0;
    padding: 0 clamp(12px, 2vw, 22px);
    box-sizing: border-box;
    background: transparent !important;
    border: 0 !important;
    text-align: center !important;
    overflow: hidden;
}

body.z18-velzon-test .z18-app-footer-inner > * {
    display: inline-flex !important;
    align-items: center !important;
    height: 36px !important;
    margin: 0 !important;
    line-height: 1 !important;
}

.z18-app-footer-brand-line {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 0;
    margin: 0;
    max-width: none;
}

.z18-app-footer-rule {
    display: none;
}

.z18-app-footer-brand {
    display: inline-flex;
    align-items: baseline;
    gap: 1px;
    padding: 0;
    color: #fff !important;
    font-size: 12px;
    font-weight: 700;
    letter-spacing: .03em;
    line-height: 1;
    text-decoration: none !important;
    background: transparent !important;
}

.z18-app-footer-brand::before,
.z18-app-footer-brand::after {
    display: none !important;
    content: none !important;
}

.z18-app-footer-brand span {
    color: #e8a19b !important;
}

.z18-app-footer-links {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    justify-content: center;
    gap: 0;
    margin: 0 !important;
    padding: 0 !important;
    border: 0 !important;
    background: transparent !important;
    box-shadow: none !important;
}

body.z18-velzon-test .z18-app-footer-links a,
body.z18-velzon-test .z18-app-footer-links a:link,
body.z18-velzon-test .z18-app-footer-links a:visited {
    position: relative;
    padding: 0 10px;
    margin: 0 !important;
    border: 0 !important;
    color: rgba(255, 255, 255, .55) !important;
    font-size: 11px;
    font-weight: 500 !important;
    line-height: 1.2;
    text-decoration: none !important;
    background: transparent !important;
    box-shadow: none !important;
}

body.z18-velzon-test .z18-app-footer-links a:not(:last-child)::after {
    position: absolute;
    top: 50%;
    right: 0;
    width: 1px;
    height: 9px;
    background: rgba(255, 255, 255, .14);
    content: "";
    transform: translateY(-50%);
}

body.z18-velzon-test .z18-app-footer-links a:hover,
body.z18-velzon-test .z18-app-footer-links a:focus-visible {
    color: #e8a19b !important;
    text-decoration: none !important;
}

.z18-app-footer-copy {
    margin: 0 !important;
    color: rgba(255, 255, 255, .32) !important;
    font-size: 11px !important;
    font-weight: 400 !important;
    letter-spacing: .01em;
    line-height: 1 !important;
    white-space: nowrap;
}

@media (max-width: 575.98px) {
    body.z18-velzon-test .z18-app-footer,
    body.z18-velzon-test footer.z18-app-footer {
        height: 36px !important;
        min-height: 36px !important;
        max-height: 36px !important;
    }

    body.z18-velzon-test .z18-app-footer-inner {
        flex-direction: row !important;
        flex-wrap: nowrap !important;
        justify-content: center;
        gap: 4px 8px;
        height: 36px !important;
        padding: 0 10px !important;
    }

    body.z18-velzon-test .z18-app-footer-inner > * {
        height: 36px !important;
    }

    body.z18-velzon-test .z18-app-footer-copy {
        display: none !important;
    }

    body.z18-velzon-test .z18-app-footer-links a {
        padding: 0 6px;
        font-size: 10px;
    }

    body.z18-velzon-test .navbar-menu.app-menu {
        top: 0 !important;
        bottom: 36px !important;
        height: auto !important;
    }
}

@media (min-width: 768px) {
    body.z18-velzon-test.z18-sidebar-collapsed .navbar-menu.app-menu,
    body.z18-velzon-test.z18-sidebar-collapsed .app-menu.navbar-menu {
        top: 0 !important;
        bottom: 36px !important;
        height: auto !important;
        z-index: 1050 !important;
    }
}
