html {
    height: 100%;
    min-height: 100%;
}

body {
    min-height: 100vh !important;
    min-height: 100dvh !important;
    display: flex !important;
    flex-direction: column !important;
}

body > .navbar {
    flex: 0 0 auto;
}

body > main,
body > main.container {
    flex: 1 0 auto !important;
    width: 100%;
    box-sizing: border-box;
}

body > main.container {
    padding-left: 20px !important;
    padding-right: 20px !important;
}

body > main.container:has(.loco-home-page) {
    padding-left: 0 !important;
    padding-right: 0 !important;
}

.dashboard-grid,
.spoofer-page {
    width: 100%;
    max-width: 100%;
    box-sizing: border-box;
}

.dashboard-grid {
    padding-top: 20px;
    padding-bottom: 20px;
}

.spoofer-page {
    padding-top: 20px;
    padding-bottom: 20px;
}

.loco-site-footer {
    margin-top: auto !important;
    flex: 0 0 auto !important;
    border-top: 1px solid rgba(255,255,255,0.09);
    background: #05070b;
    color: #9ca3af;
}

.loco-site-footer-inner {
    width: min(100%, 1200px);
    margin: 0 auto;
    padding: 34px 20px 26px;
    display: flex;
    justify-content: space-between;
    gap: 28px;
}

.loco-site-footer p {
    max-width: 480px;
    margin: 0;
    color: #8b95a8;
    line-height: 1.6;
}

.loco-footer-links {
    display: flex;
    gap: 16px;
    flex-wrap: wrap;
    align-content: flex-start;
    justify-content: flex-end;
}

.loco-footer-links a {
    color: #9ca3af;
    text-decoration: none;
}

.loco-footer-links a:hover {
    color: #c4b5fd;
}

.loco-site-footer-bottom {
    width: min(100%, 1200px);
    margin: 0 auto;
    padding: 18px 20px 24px;
    border-top: 1px solid rgba(255,255,255,0.07);
    display: flex;
    justify-content: space-between;
    gap: 18px;
    font-size: 0.88rem;
}

@media (max-width: 720px) {
    body > main.container {
        padding-left: 14px !important;
        padding-right: 14px !important;
    }

    body > main.container:has(.loco-home-page) {
        padding-left: 0 !important;
        padding-right: 0 !important;
    }

    .loco-site-footer-inner,
    .loco-site-footer-bottom {
        display: grid;
        text-align: center;
        justify-content: center;
    }

    .loco-footer-links {
        justify-content: center;
    }
}
