/* =============================================
   FOOTER COMPACT (utilisateurs connectés)
   The full marketing footer (.app-footer, navbar.css) stays for anonymous visitors.
   Colors come from theme tokens so it follows both the default and Obsidian themes.
   ============================================= */

.app-footer-compact {
    margin-top: 2.5rem;
    border-top: 1px solid var(--border, #E5E7EB);
    background: var(--surface, #FFFFFF);
    color: var(--muted, #6B7280);
    font-size: 0.78rem;
    padding-block: 0.25rem;
    padding-left: max(0.5rem, env(safe-area-inset-left, 0px));
    padding-right: max(0.5rem, env(safe-area-inset-right, 0px));
}

.app-footer-compact__nav {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    justify-content: center;
    column-gap: 0.15rem;
}

.app-footer-compact__copy,
.app-footer-compact__nav a {
    display: inline-flex;
    align-items: center;
    min-height: 44px;
    padding-inline: 0.45rem;
    white-space: nowrap;
}

.app-footer-compact__nav a {
    color: var(--muted, #6B7280);
    text-decoration: none;
    border-radius: 8px;
}
.app-footer-compact__nav a:hover,
.app-footer-compact__nav a:focus-visible {
    color: var(--primary, #4F72E3);
    text-decoration: underline;
}

/* Middle dot separators between links (never in front of a wrapped line start) */
.app-footer-compact__nav > a + a::before {
    content: "\00B7";
    margin-right: 0.6rem;
    margin-left: -0.15rem;
    color: var(--muted, #6B7280);
    opacity: 0.6;
    text-decoration: none;
    display: inline-block;
}

@media (max-width: 575.98px) {
    /* Copyright on its own line, then the links on one line */
    .app-footer-compact__copy {
        flex-basis: 100%;
        justify-content: center;
        min-height: 32px;
    }
    .app-footer-compact__long {
        display: none;
    }
}
