/* Shared sticky-footer layout.
   The footer stays at the viewport bottom on short pages and remains in normal
   document flow on long pages. Keep these rules scoped to the master wrappers. */
.app-sticky-footer {
    min-height: 100vh;
    min-height: 100dvh;
    height: auto;
}

.sticky-footer-home {
    display: flex;
    flex-direction: column;
}

.sticky-footer-home > form {
    display: flex;
    flex: 1 0 auto;
    flex-direction: column;
    width: 100%;
}

.sticky-footer-home > .footer {
    flex-shrink: 0;
    margin-top: auto;
}

.sticky-footer-sidebar > form {
    min-height: 100vh;
    min-height: 100dvh;
}

.sticky-footer-sidebar > form > .main-panel {
    display: flex;
    flex-direction: column;
    height: auto;
    min-height: 100vh;
    min-height: 100dvh;
}

.sticky-footer-sidebar > form > .main-panel > .footer {
    position: static;
    flex-shrink: 0;
    margin-top: auto;
}
