/**
 * File Path: assets/css/front/mbs-front-pro-author-hero.css
 * Author Hero (architecturally unscoped from .mbs-wrapper)
 * Component of mbs-front-pro.css — extracted Session 94.
 * Enqueued by MBS_Front_Assets with dep: mbs-front-pro (PRO tier only).
 * UX-012 + UX-015 (Session 113): social badge rules added; CSS nesting
 * flattened to top-level selectors for broad browser compatibility.
 */
/* ========================================================= */
/* AUTHOR HERO — architecturally unscoped from .mbs-wrapper   */
/*                                                            */
/* Rendered by templates/partials/section-author-hero.php on  */
/* the enhanced (PRO) taxonomy-mbs-author.php template.       */
/* Contains author photo, bio, and social links row.          */
/* ========================================================= */

.mbs-author-hero {
    display: flex;
    flex-wrap: wrap;
    gap: 24px;
    align-items: flex-start;
    margin: 24px 0 32px;
    padding: 24px;
    background: var(--mbs-hero-bg, #f8f9fa);
    border-radius: 8px;
}

@media (max-width: 600px) {
    .mbs-author-hero {
        flex-direction: column;
        padding: 18px;
        gap: 16px;
    }
}

.mbs-author-hero-photo-wrap {
    flex-shrink: 0;
    width: 140px;
}

@media (max-width: 600px) {
    .mbs-author-hero-photo-wrap {
        width: 110px;
    }
}

.mbs-author-hero-photo {
    width: 140px;
    height: 140px;
    object-fit: cover;
    border-radius: 50%;
    display: block;
}

@media (max-width: 600px) {
    .mbs-author-hero-photo {
        width: 110px;
        height: 110px;
    }
}

.mbs-author-hero-body {
    flex: 1;
    min-width: 240px;
}

.mbs-author-hero-bio {
    font-size: 15px;
    line-height: 1.6;
    color: var(--mbs-ink, #1f2937);
    margin-bottom: 12px;
}

.mbs-author-hero-bio p {
    margin: 0 0 10px 0;
}

.mbs-author-hero-bio p:last-child {
    margin-bottom: 0;
}

/* ----- Social links row ----- */

.mbs-author-social-links {
    display: flex;
    flex-wrap: wrap;
    gap: 8px 10px;
    margin-top: 10px;
}

.mbs-author-social-link {
    display: inline-flex;
    align-items: center;
    padding: 6px 12px;
    background: var(--mbs-card-bg, #fff);
    border: 1px solid var(--mbs-border-ui, #d1d5db);
    border-radius: 4px;
    color: var(--mbs-ink, #1f2937);
    font-size: 13px;
    font-weight: 500;
    text-decoration: none;
    line-height: 1.3;
}

.mbs-author-social-link:hover,
.mbs-author-social-link:focus {
    background: var(--mbs-ink, #1f2937);
    color: #fff;
    border-color: var(--mbs-ink, #1f2937);
}

/* ----- Social badge (monogram disc) ----- */

.mbs-social-badge {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 18px;
    height: 18px;
    border-radius: 50%;
    background: var(--mbs-ink, #1f2937);
    color: #fff;
    font-size: 9px;
    font-weight: 700;
    line-height: 1;
    vertical-align: middle;
    margin-right: 5px;
    flex-shrink: 0;
}

.mbs-author-social-link:hover .mbs-social-badge,
.mbs-author-social-link:focus .mbs-social-badge {
    background: #fff;
    color: var(--mbs-ink, #1f2937);
}

.mbs-social-badge-label {
    vertical-align: middle;
}
/* ==========================================================================
   UX-020: Per-platform badge colors (Sprint A3 — Session 115)
   Rest-state background only — hover-invert rule above remains unchanged.
   Flat selectors (CSS-002 / CSS-NEST-001 compliance).
   ========================================================================== */

.mbs-social-badge-facebook     { background: #1877f2; }
.mbs-social-badge-instagram    { background: #e1306c; }
.mbs-social-badge-tiktok       { background: #010101; }
.mbs-social-badge-youtube      { background: #ff0000; }
.mbs-social-badge-twitter      { background: #000000; }
.mbs-social-badge-linkedin     { background: #0077b5; }
.mbs-social-badge-pinterest    { background: #e60023; }
.mbs-social-badge-bluesky      { background: #0085ff; }
.mbs-social-badge-threads      { background: #000000; }
.mbs-social-badge-whatsapp     { background: #25d366; }
.mbs-social-badge-telegram     { background: #2aabee; }
.mbs-social-badge-reddit       { background: #ff4500; }
.mbs-social-badge-discord      { background: #5865f2; }
.mbs-social-badge-goodreads    { background: #553b08; }
.mbs-social-badge-bookbub      { background: #e80f87; }
.mbs-social-badge-rumble       { background: #85c742; }
.mbs-social-badge-twitch       { background: #9146ff; }
.mbs-social-badge-truth-social { background: #5448ee; }
.mbs-social-badge-snapchat     { background: #fffc00; color: #000000; }
.mbs-social-badge-amazon-author { background: #ff9900; color: #000000; }
.mbs-social-badge-substack     { background: #ff6719; }
.mbs-social-badge-patreon      { background: #ff424d; }
.mbs-social-badge-medium       { background: #000000; }
.mbs-social-badge-wattpad      { background: #f96600; }

/* ==========================================================================
   Author photo placeholder SVG (UX-014, Session 115)
   Rendered when mbs_author_photo_id is not set.
   ========================================================================== */

.mbs-author-hero-photo-placeholder {
    display: flex;
    align-items: center;
    justify-content: center;
}

.mbs-author-hero-placeholder-svg {
    display: block;
    width: 120px;
    height: 120px;
    border-radius: 50%;
    flex-shrink: 0;
}
