/* ═══════════════════════════════════════════════════════
   AXIOM — author.css
   Author profile page · Author archive · Follow system
   ═══════════════════════════════════════════════════════ */

.axm-author-page { max-width: 56rem; margin: 0 auto; padding: 2.5rem 1.5rem; }

/* Hero section */
.axm-author-hero {
    display: flex; flex-direction: column; gap: 1.5rem;
    align-items: center; text-align: center;
    padding: 2.5rem; margin-bottom: 2.5rem;
    border-radius: var(--r-xl);
    background: var(--axm-surface); box-shadow: var(--neo-raised);
}
@media (min-width: 640px) {
    .axm-author-hero { flex-direction: row; text-align: left; }
}

.axm-author-hero__avatar {
    width: 7rem; height: 7rem; flex-shrink: 0;
    border-radius: var(--r-full);
    object-fit: cover; box-shadow: var(--neo-raised);
}

.axm-author-hero__info { flex: 1; }
.axm-author-hero__name {
    font-size: 1.875rem; font-weight: 700;
    color: var(--axm-on-surface); margin-bottom: 0.375rem;
    letter-spacing: -0.01em;
}
.axm-author-hero__role {
    font-size: 0.875rem; font-weight: 600;
    color: var(--axm-primary); margin-bottom: 0.75rem;
}
.axm-author-hero__bio {
    font-size: 0.9375rem; line-height: 1.65;
    color: var(--axm-on-surface-variant); margin-bottom: 1.25rem;
}
.axm-author-hero__stats {
    display: flex; gap: 1.5rem; flex-wrap: wrap;
    margin-bottom: 1.25rem;
}
.axm-author-stat { display: flex; flex-direction: column; }
.axm-author-stat__num {
    font-size: 1.375rem; font-weight: 700; color: var(--axm-on-surface);
}
.axm-author-stat__label {
    font-size: 0.75rem; font-weight: 600;
    color: var(--axm-on-surface-variant); text-transform: uppercase;
    letter-spacing: 0.06em;
}

/* ═══════════════════════════════════════════════════════
   AXIOM — footer styles (included in author.css for bundle)
   ═══════════════════════════════════════════════════════ */

.axm-footer {
    background: var(--axm-surface);
    box-shadow: var(--neo-pressed);
    padding: 3rem 2rem;
    margin-top: auto;
    position: relative; z-index: 10;
}

.axm-footer__inner {
    display: flex; flex-direction: column; gap: 1.5rem;
    align-items: center;
    max-width: 1440px; margin: 0 auto;
    width: 100%;
}
@media (min-width: 1024px) {
    .axm-footer__inner {
        flex-direction: row;
        justify-content: space-between;
        flex-wrap: wrap;
    }
}

.axm-footer__brand {
    font-size: 1.25rem; font-weight: 700;
    color: var(--axm-primary); text-decoration: none;
    letter-spacing: -0.02em;
}

.axm-footer__links {
    display: flex; flex-wrap: wrap; justify-content: center; gap: 1.5rem;
    list-style: none;
}
.axm-footer__links a {
    font-size: 0.875rem; color: var(--axm-on-surface-variant);
    text-decoration: underline; text-underline-offset: 3px;
    transition: all var(--t-base);
}
.axm-footer__links a:hover { color: var(--axm-primary); transform: translateY(-2px); }

.axm-footer__copy { font-size: 0.8125rem; color: var(--axm-on-surface-variant); }

/* Shift footer on layout templates with left sidebar to prevent overlaps */
@media (min-width: 768px) {
    body.has-sidebar .axm-footer__inner {
        padding-left: 16rem;
        transition: padding var(--t-base);
    }
}

/* bottom padding for mobile bottom nav */
@media (max-width: 767px) { body { padding-bottom: 5rem; } }

/* ═══════════════════════════════════════════════════════
   AXIOM — admin-bar.css  (WP admin bar adjustment)
   ═══════════════════════════════════════════════════════ */

#wpadminbar { font-family: 'Plus Jakarta Sans', sans-serif !important; }

/* Offset sticky nav when admin bar is shown */
body.admin-bar .axm-nav { top: 32px; }
@media (max-width: 782px) { body.admin-bar .axm-nav { top: 46px; } }
body.admin-bar .axm-sidebar { top: calc(5rem + 32px); }
@media (max-width: 782px) { body.admin-bar .axm-sidebar { top: calc(5rem + 46px); } }
body.admin-bar .axm-reading-topbar { top: calc(5rem + 32px); }

/* ── Submissions Dashboard Extra-Small Viewports (Under 480px) ── */
@media (max-width: 480px) {
    /* Main Feed & Dashboard Header Adjustments */
    .axm-main-feed header {
        flex-direction: column !important;
        align-items: flex-start !important;
        gap: 0.75rem !important;
        margin-bottom: 1.75rem !important;
    }

    .axm-main-feed header h1 {
        font-size: 1.75rem !important;
        font-weight: 800 !important;
        margin-bottom: 0.35rem !important;
    }

    .axm-main-feed header p {
        font-size: 0.9375rem !important;
    }

    /* Make New Article button touch-friendly full-width */
    .axm-main-feed header a.axm-btn-primary {
        align-self: stretch !important;
        justify-content: center !important;
        height: 2.25rem !important;
        font-size: 0.875rem !important;
    }

    /* Format status filters as a neat 2-column grid to prevent text squeeze/wrapping */
    .axm-my-articles-status-filters {
        gap: 0.5rem !important;
        margin-bottom: 1.75rem !important;
        width: 100% !important;
    }

    .axm-my-articles-status-filters a {
        flex: 1 1 calc(50% - 0.25rem) !important; /* Uniform 2-column grid button style */
        justify-content: center !important;
        padding: 0.5rem 0.65rem !important;
        font-size: 0.785rem !important;
        border-radius: var(--r-md) !important;
        box-sizing: border-box !important;
        text-align: center !important;
    }

    /* Convert card horizontal layout to responsive vertical block */
    .axm-my-article-card-header {
        flex-direction: column !important;
        gap: 1rem !important;
        align-items: stretch !important;
    }

    .axm-my-article-card-actions {
        width: 100% !important;
        justify-content: flex-start !important;
        gap: 0.5rem !important;
        margin-top: 0.25rem !important;
        flex-wrap: nowrap !important; /* Keep buttons strictly aligned side by side */
    }

    /* Allow the main edit action to expand, preventing it from turning into a square */
    .axm-my-article-card-actions a {
        flex: 1 1 auto !important;
        justify-content: center !important;
        font-size: 0.8125rem !important;
        padding: 0.5rem 0.75rem !important;
        border-radius: var(--r-lg) !important;
    }

    .axm-my-article-card-actions a.axm-icon-btn {
        flex: 0 0 2.25rem !important; /* Keep live view icon button perfectly square */
        width: 2.25rem !important;
        height: 2.25rem !important;
    }
}
