/* ============================================================
   AUTHOR PAGE & AUTHOR BOX - E-E-A-T Styles
   Dark theme, accent #e94560, border-radius 12px
   materiel-gamer.com
   ============================================================ */

/* ---- Variables auteur ---- */
:root {
    --author-accent:    #e94560;
    --author-accent-dk: #c73652;
    --author-bg:        var(--bg-secondary, #f5f5f7);
    --author-card-bg:   var(--bg-card, #ffffff);
    --author-border:    var(--border-color, #e2e8f0);
    --author-radius:    12px;
    --author-shadow:    0 4px 24px rgba(0,0,0,0.08);
}
[data-theme="dark"] {
    --author-bg:      #0e0e16;
    --author-card-bg: #1a1a2e;
    --author-border:  #2d2d44;
    --author-shadow:  0 4px 24px rgba(0,0,0,0.4);
}

/* ============================================================
   AUTHOR HERO (page auteur)
   ============================================================ */
.author-page { min-height: 60vh; }

.author-hero {
    background: var(--author-card-bg);
    border-bottom: 1px solid var(--author-border);
    padding: 48px 0 40px;
}

.author-hero__inner {
    display: flex;
    align-items: flex-start;
    gap: 36px;
}

/* Avatar */
.author-hero__avatar-wrap { flex-shrink: 0; }

.author-hero__avatar {
    position: relative;
    width: 120px;
    height: 120px;
}

.author-hero__avatar img {
    width: 120px;
    height: 120px;
    border-radius: 50%;
    object-fit: cover;
    border: 3px solid var(--author-accent);
    display: block;
}

.author-hero__badge-verified {
    position: absolute;
    bottom: 4px;
    right: 4px;
    background: var(--author-card-bg);
    border-radius: 50%;
    width: 26px;
    height: 26px;
    display: flex;
    align-items: center;
    justify-content: center;
    border: 2px solid var(--author-accent);
}

/* Infos */
.author-hero__info { flex: 1; min-width: 0; }

.author-hero__header { margin-bottom: 14px; }

.author-hero__name {
    font-size: 1.75rem;
    font-weight: 800;
    color: var(--text-primary, #1a1a2e);
    margin: 0 0 4px;
    letter-spacing: -0.02em;
}

.author-hero__title {
    font-size: 0.9375rem;
    font-weight: 600;
    color: var(--author-accent);
    margin: 0;
}

/* Spécialités */
.author-hero__specialties {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
    margin-bottom: 16px;
}

.author-badge {
    display: inline-flex;
    align-items: center;
    gap: 5px;
    padding: 4px 12px;
    background: rgba(233,69,96,0.1);
    color: var(--author-accent);
    font-size: 0.75rem;
    font-weight: 600;
    border-radius: 20px;
    border: 1px solid rgba(233,69,96,0.25);
    white-space: nowrap;
}

.author-badge svg { opacity: 0.8; }

.author-badge--sm {
    padding: 3px 9px;
    font-size: 0.6875rem;
}

/* Bio */
.author-hero__bio {
    font-size: 0.9375rem;
    line-height: 1.7;
    color: var(--text-secondary, #64748b);
    margin-bottom: 20px;
    max-width: 680px;
}

/* Footer stats + social */
.author-hero__footer {
    display: flex;
    align-items: center;
    gap: 24px;
    flex-wrap: wrap;
}

.author-hero__stats {
    display: flex;
    gap: 20px;
}

.author-stat {
    display: flex;
    flex-direction: column;
    align-items: center;
    text-align: center;
}

.author-stat__value {
    font-size: 1.375rem;
    font-weight: 800;
    color: var(--author-accent);
    line-height: 1;
}

.author-stat__label {
    font-size: 0.6875rem;
    font-weight: 600;
    text-transform: uppercase;
    letter-spacing: 0.06em;
    color: var(--text-muted, #94a3b8);
    margin-top: 3px;
}

/* Boutons sociaux auteur hero */
.author-hero__social {
    display: flex;
    gap: 10px;
    flex-wrap: wrap;
}

.author-social-btn {
    display: inline-flex;
    align-items: center;
    gap: 7px;
    padding: 8px 16px;
    border-radius: var(--author-radius);
    font-size: 0.8125rem;
    font-weight: 600;
    transition: all 200ms ease;
    text-decoration: none;
}

.author-social-btn--twitter {
    background: rgba(0,0,0,0.06);
    color: var(--text-primary, #1a1a2e);
    border: 1px solid var(--author-border);
}

.author-social-btn--twitter:hover {
    background: #000;
    color: #fff;
    border-color: #000;
}

.author-social-btn--linkedin {
    background: rgba(10,102,194,0.1);
    color: #0a66c2;
    border: 1px solid rgba(10,102,194,0.25);
}

.author-social-btn--linkedin:hover {
    background: #0a66c2;
    color: #fff;
}

[data-theme="dark"] .author-social-btn--twitter {
    background: rgba(255,255,255,0.05);
    color: var(--text-primary, #e2e8f0);
    border-color: var(--author-border);
}

[data-theme="dark"] .author-social-btn--twitter:hover {
    background: #fff;
    color: #000;
}

/* ============================================================
   AUTHOR POSTS SECTION
   ============================================================ */
.author-posts { padding-top: 40px; }

.author-posts__title {
    font-size: 1.25rem;
    font-weight: 700;
    color: var(--text-primary, #1a1a2e);
    margin-bottom: 24px;
    display: flex;
    align-items: center;
    gap: 8px;
    padding-bottom: 12px;
    border-bottom: 2px solid var(--author-accent);
    width: fit-content;
}

.author-posts__title svg { color: var(--author-accent); }

/* No posts message */
.author-no-posts {
    padding: 48px 24px;
    text-align: center;
    color: var(--text-secondary, #64748b);
    background: var(--author-bg);
    border-radius: var(--author-radius);
}

/* ============================================================
   AUTHOR SIDEBAR CARD
   ============================================================ */
.author-sidebar-card {
    background: var(--author-card-bg);
    border: 1px solid var(--author-border);
    border-radius: var(--author-radius);
    border-top: 3px solid var(--author-accent);
    padding: 20px;
    margin-bottom: 24px;
    display: flex;
    flex-direction: column;
    align-items: center;
    text-align: center;
    gap: 10px;
}

.author-sidebar-card__avatar img {
    width: 64px;
    height: 64px;
    border-radius: 50%;
    object-fit: cover;
    border: 2px solid var(--author-accent);
}

.author-sidebar-card__info { display: flex; flex-direction: column; gap: 2px; }

.author-sidebar-card__name {
    font-size: 1rem;
    font-weight: 700;
    color: var(--text-primary, #1a1a2e);
    display: block;
}

.author-sidebar-card__title {
    font-size: 0.75rem;
    color: var(--author-accent);
    font-weight: 600;
}

.author-sidebar-card__bio {
    font-size: 0.8125rem;
    line-height: 1.6;
    color: var(--text-secondary, #64748b);
}

.author-sidebar-card__meta {
    font-size: 0.75rem;
    color: var(--text-muted, #94a3b8);
    font-weight: 500;
}

/* ============================================================
   AUTHOR BOX (en bas des articles - single.php)
   ============================================================ */
.author-box {
    background: var(--author-card-bg);
    border: 1px solid var(--author-border);
    border-radius: var(--author-radius);
    border-left: 4px solid var(--author-accent);
    padding: 28px 28px 24px;
    margin: 40px 0 32px;
    box-shadow: var(--author-shadow);
}

.author-box__inner {
    display: flex;
    gap: 24px;
    align-items: flex-start;
}

/* Avatar */
.author-box__avatar {
    flex-shrink: 0;
}

.author-box__avatar a {
    display: block;
    border-radius: 50%;
    line-height: 0;
}

.author-box__avatar img {
    width: 96px;
    height: 96px;
    border-radius: 50%;
    object-fit: cover;
    border: 3px solid var(--author-accent);
    transition: transform 200ms ease;
}

.author-box__avatar img:hover { transform: scale(1.04); }

/* Contenu */
.author-box__content { flex: 1; min-width: 0; }

.author-box__header { margin-bottom: 8px; }

.author-box__label {
    display: flex;
    align-items: center;
    gap: 5px;
    font-size: 0.6875rem;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 0.08em;
    color: var(--author-accent);
    margin-bottom: 4px;
}

.author-box__identity { display: flex; align-items: baseline; gap: 10px; flex-wrap: wrap; }

.author-box__name {
    font-size: 1.125rem;
    font-weight: 800;
    margin: 0;
    color: var(--text-primary, #1a1a2e);
}

.author-box__name a {
    color: inherit;
    transition: color 200ms ease;
}

.author-box__name a:hover { color: var(--author-accent); }

.author-box__job {
    font-size: 0.8125rem;
    font-weight: 600;
    color: var(--text-secondary, #64748b);
    margin: 0;
}

/* Specialties */
.author-box__specialties {
    display: flex;
    flex-wrap: wrap;
    gap: 6px;
    margin-bottom: 10px;
}

/* Bio */
.author-box__bio {
    font-size: 0.9rem;
    line-height: 1.65;
    color: var(--text-secondary, #64748b);
    margin: 0 0 14px;
}

/* Footer */
.author-box__footer {
    display: flex;
    align-items: center;
    justify-content: space-between;
    flex-wrap: wrap;
    gap: 12px;
}

.author-box__stats { display: flex; align-items: center; }

.author-box__count {
    display: inline-flex;
    align-items: center;
    gap: 5px;
    font-size: 0.8rem;
    font-weight: 600;
    color: var(--text-muted, #94a3b8);
}

.author-box__count svg { color: var(--author-accent); opacity: 0.8; }

.author-box__links {
    display: flex;
    align-items: center;
    gap: 10px;
}

.author-box__social-link {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 32px;
    height: 32px;
    border-radius: 8px;
    background: var(--author-bg);
    color: var(--text-secondary, #64748b);
    border: 1px solid var(--author-border);
    transition: all 200ms ease;
}

.author-box__social-link:hover {
    background: var(--author-accent);
    color: #fff;
    border-color: var(--author-accent);
    transform: translateY(-2px);
}

.author-box__profile-link {
    display: inline-flex;
    align-items: center;
    gap: 5px;
    padding: 7px 16px;
    background: var(--author-accent);
    color: #fff;
    font-size: 0.8125rem;
    font-weight: 700;
    border-radius: 8px;
    transition: all 200ms ease;
    white-space: nowrap;
}

.author-box__profile-link:hover {
    background: var(--author-accent-dk);
    transform: translateY(-1px);
    color: #fff;
}

/* ============================================================
   RESPONSIVE
   ============================================================ */
@media (max-width: 768px) {
    .author-hero__inner {
        flex-direction: column;
        align-items: center;
        text-align: center;
        gap: 20px;
    }

    .author-hero__name { font-size: 1.375rem; }

    .author-hero__bio { font-size: 0.875rem; }

    .author-hero__footer {
        justify-content: center;
    }

    .author-hero__specialties { justify-content: center; }

    .author-hero__stats { justify-content: center; }

    .author-box__inner {
        flex-direction: column;
        align-items: center;
        text-align: center;
    }

    .author-box {
        padding: 20px 16px;
    }

    .author-box__footer {
        justify-content: center;
    }

    .author-box__identity {
        justify-content: center;
    }

    .author-box__label {
        justify-content: center;
    }

    .author-box__specialties {
        justify-content: center;
    }
}

@media (max-width: 480px) {
    .author-hero { padding: 32px 0 28px; }

    .author-hero__avatar img {
        width: 90px;
        height: 90px;
    }

    .author-hero__avatar {
        width: 90px;
        height: 90px;
    }

    .author-box__avatar img {
        width: 72px;
        height: 72px;
    }

    .author-social-btn span { display: none; }

    .author-social-btn {
        width: 38px;
        height: 38px;
        padding: 0;
        justify-content: center;
    }
}
