.tmv-author-page,
.tmv-author-directory {
    padding: 28px 0 80px;
    color: #3c3150;
    background:
        radial-gradient(circle at 10% 2%, rgba(255, 226, 104, .18), transparent 28rem),
        radial-gradient(circle at 92% 14%, rgba(121, 92, 199, .12), transparent 30rem),
        #fff;
}

.tmv-author-page *,
.tmv-author-directory * { box-sizing: border-box; }

.tmv-author-breadcrumbs { margin-bottom: 22px; font-size: .9rem; color: #786d82; }
.tmv-author-breadcrumbs .rank-math-breadcrumb p { margin: 0; }
.tmv-author-breadcrumbs a { color: #644d98; text-decoration: none; }
.tmv-author-breadcrumbs a:hover { text-decoration: underline; }

.tmv-author-hero {
    display: grid;
    grid-template-columns: minmax(220px, 330px) minmax(0, 1fr);
    gap: clamp(30px, 6vw, 76px);
    align-items: center;
    padding: clamp(30px, 5vw, 64px);
    overflow: hidden;
    background: linear-gradient(135deg, #f5efff 0%, #fff7d5 100%);
    border: 1px solid #e9defa;
    border-radius: 34px;
    box-shadow: 0 24px 70px rgba(65, 43, 87, .09);
}

.tmv-author-avatar-wrap { position: relative; width: min(100%, 320px); margin-inline: auto; }
.tmv-author-avatar-wrap::before {
    content: "";
    position: absolute;
    inset: 10% -7% -6% 7%;
    background: #ffe26a;
    border-radius: 45% 55% 48% 52% / 54% 45% 55% 46%;
    transform: rotate(-5deg);
}
.tmv-author-avatar {
    position: relative;
    display: block;
    width: 100%;
    aspect-ratio: 1;
    object-fit: cover;
    background: #fff;
    border: 8px solid #fff;
    border-radius: 38% 62% 55% 45% / 48% 42% 58% 52%;
    box-shadow: 0 20px 48px rgba(70, 48, 92, .18);
}
.tmv-author-avatar-badge {
    position: absolute;
    right: 2px;
    bottom: 8px;
    display: grid;
    place-items: center;
    width: 58px;
    aspect-ratio: 1;
    color: #fff;
    background: #6f53bb;
    border: 5px solid #fff;
    border-radius: 50%;
    box-shadow: 0 12px 24px rgba(61, 38, 84, .2);
}

.tmv-author-kicker,
.tmv-author-section-heading > p,
.tmv-author-section-heading > div > p {
    margin: 0 0 8px;
    color: #7657bc;
    font-size: .78rem;
    font-weight: 900;
    letter-spacing: .11em;
    text-transform: uppercase;
}
.tmv-author-hero h1,
.tmv-author-directory-hero h1 {
    margin: 0;
    color: #3f285b;
    font-size: clamp(2.5rem, 6vw, 5rem);
    line-height: .98;
    letter-spacing: -.05em;
}
.tmv-author-role { margin: 15px 0 0; color: #9a6b1c; font-size: 1.12rem; font-weight: 850; }
.tmv-author-intro { max-width: 760px; margin-top: 18px; color: #62576e; font-size: 1.04rem; line-height: 1.78; }
.tmv-author-intro p:last-child { margin-bottom: 0; }

.tmv-author-stats {
    display: flex;
    flex-wrap: wrap;
    gap: 12px;
    margin: 24px 0 0;
}
.tmv-author-stats > div {
    min-width: 155px;
    padding: 15px 18px;
    background: rgba(255,255,255,.78);
    border: 1px solid rgba(107, 78, 153, .14);
    border-radius: 17px;
}
.tmv-author-stats dt { color: #4d326d; font-size: 1.5rem; font-weight: 950; line-height: 1; }
.tmv-author-stats dd { margin: 6px 0 0; color: #74687e; font-size: .8rem; }

.tmv-author-socials { display: flex; flex-wrap: wrap; gap: 9px; margin-top: 22px; }
.tmv-author-socials a {
    display: grid;
    place-items: center;
    width: 42px;
    aspect-ratio: 1;
    color: #624694;
    background: #fff;
    border: 1px solid #e4daf2;
    border-radius: 13px;
    text-decoration: none;
    transition: transform .18s ease, background-color .18s ease, color .18s ease;
}
.tmv-author-socials a:hover { color: #fff; background: #694ca3; transform: translateY(-2px); }

.tmv-author-biography,
.tmv-author-work,
.tmv-author-directory-intro {
    margin-top: 42px;
    padding: clamp(24px, 4vw, 46px);
    background: #fff;
    border: 1px solid #ebe5f1;
    border-radius: 28px;
    box-shadow: 0 18px 48px rgba(66, 44, 88, .06);
}
.tmv-author-section-heading { margin-bottom: 24px; }
.tmv-author-section-heading h2 { margin: 0; color: #432c5e; font-size: clamp(1.65rem, 3.5vw, 2.65rem); line-height: 1.12; }
.tmv-author-section-heading-row { display: flex; align-items: end; justify-content: space-between; gap: 24px; }
.tmv-author-section-heading-row > span {
    flex: 0 0 auto;
    padding: 9px 13px;
    color: #6d558f;
    background: #f5effd;
    border-radius: 999px;
    font-size: .78rem;
    font-weight: 800;
}
.tmv-author-rich-text { color: #5e5368; font-size: 1rem; line-height: 1.82; }
.tmv-author-rich-text > :first-child { margin-top: 0; }
.tmv-author-rich-text > :last-child { margin-bottom: 0; }
.tmv-author-rich-text h2,
.tmv-author-rich-text h3 { color: #432c5e; }

.tmv-author-post-grid { margin-top: 0; }
.tmv-author-illustrated { background: linear-gradient(180deg, #fff 0%, #fffaf0 100%); border-color: #efe2b7; }

/* Author directory */
.tmv-author-directory-hero {
    display: grid;
    grid-template-columns: minmax(0, 1fr) 310px;
    gap: 40px;
    align-items: center;
    padding: clamp(32px, 5vw, 62px);
    background: linear-gradient(135deg, #f3edff 0%, #fff7d5 100%);
    border: 1px solid #eadff8;
    border-radius: 32px;
    overflow: hidden;
}
.tmv-author-directory-hero p:not(.tmv-author-kicker) { max-width: 730px; margin: 18px 0 0; color: #665b70; font-size: 1.03rem; line-height: 1.75; }
.tmv-author-directory-art { position: relative; height: 220px; }
.tmv-author-directory-art span {
    position: absolute;
    display: block;
    width: 132px;
    aspect-ratio: 1;
    background: #fff;
    border: 5px solid #fff;
    border-radius: 50%;
    box-shadow: 0 17px 38px rgba(66,43,88,.16);
}
.tmv-author-directory-art span::before {
    content: "";
    position: absolute;
    inset: 20%;
    background: #d9c9f4;
    border-radius: 50% 50% 44% 56%;
}
.tmv-author-directory-art span:nth-child(1) { left: 0; top: 54px; }
.tmv-author-directory-art span:nth-child(2) { left: 90px; top: 0; z-index: 2; }
.tmv-author-directory-art span:nth-child(3) { right: 0; top: 62px; background: #fff3b5; }
.tmv-author-directory-intro { max-width: 900px; margin-inline: auto; }

.tmv-author-directory-grid {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 24px;
    margin-top: 38px;
}
.tmv-author-directory-card {
    overflow: hidden;
    background: #fff;
    border: 1px solid #e8e0ef;
    border-radius: 26px;
    box-shadow: 0 16px 42px rgba(65, 43, 87, .07);
    transition: transform .2s ease, box-shadow .2s ease;
}
.tmv-author-directory-card:hover { transform: translateY(-4px); box-shadow: 0 24px 54px rgba(65, 43, 87, .12); }
.tmv-author-directory-avatar { display: block; padding: 22px 22px 0; background: linear-gradient(145deg, #f5efff, #fff8dc); }
.tmv-author-directory-avatar img { display: block; width: 100%; aspect-ratio: 1; object-fit: cover; border-radius: 22px 22px 10px 10px; }
.tmv-author-directory-card-body { padding: 22px; }
.tmv-author-directory-role { margin: 0 0 7px; color: #8c6a29; font-size: .75rem; font-weight: 900; letter-spacing: .07em; text-transform: uppercase; }
.tmv-author-directory-card h2 { margin: 0; font-size: 1.45rem; line-height: 1.15; }
.tmv-author-directory-card h2 a { color: #432c5e; text-decoration: none; }
.tmv-author-directory-description { margin: 13px 0 0; color: #6d6275; font-size: .91rem; line-height: 1.62; }
.tmv-author-directory-stats { display: grid; grid-template-columns: 1fr 1fr; gap: 9px; margin-top: 18px; }
.tmv-author-directory-stats span { padding: 10px; color: #766b7e; background: #f8f5fb; border-radius: 12px; font-size: .73rem; }
.tmv-author-directory-stats strong { display: block; color: #543876; font-size: 1.05rem; }
.tmv-author-directory-socials { margin-top: 16px; }
.tmv-author-directory-socials a { width: 36px; border-radius: 11px; }
.tmv-author-profile-link { display: inline-flex; gap: 9px; align-items: center; margin-top: 20px; color: #674b9e; font-weight: 850; text-decoration: none; }
.tmv-author-profile-link:hover { text-decoration: underline; }

@media (max-width: 1020px) {
    .tmv-author-directory-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}

@media (max-width: 820px) {
    .tmv-author-page,
    .tmv-author-directory { padding-top: 22px; }
    .tmv-author-hero,
    .tmv-author-directory-hero { grid-template-columns: 1fr; }
    .tmv-author-avatar-wrap { width: min(260px, 80vw); }
    .tmv-author-hero-copy { text-align: center; }
    .tmv-author-intro { margin-inline: auto; }
    .tmv-author-stats,
    .tmv-author-socials { justify-content: center; }
    .tmv-author-directory-art { display: none; }
}

@media (max-width: 640px) {
    .tmv-author-page .tmv-container,
    .tmv-author-directory .tmv-container { width: min(100% - 24px, 1180px); }
    .tmv-author-hero,
    .tmv-author-directory-hero { padding: 26px 20px; border-radius: 23px; }
    .tmv-author-hero h1,
    .tmv-author-directory-hero h1 { font-size: clamp(2.35rem, 13vw, 3.4rem); }
    .tmv-author-stats { display: grid; grid-template-columns: 1fr 1fr; width: 100%; }
    .tmv-author-stats > div { min-width: 0; padding: 13px; }
    .tmv-author-biography,
    .tmv-author-work,
    .tmv-author-directory-intro { margin-top: 28px; padding: 22px 17px; border-radius: 21px; }
    .tmv-author-section-heading-row { display: block; }
    .tmv-author-section-heading-row > span { display: inline-block; margin-top: 13px; }
    .tmv-author-directory-grid { grid-template-columns: 1fr; gap: 18px; }
}

/* Author contribution archive tabs (v5.1). */
.tmv-author-stats dt a {
    color: inherit;
    text-decoration: none;
}
.tmv-author-stats dt a:hover { text-decoration: underline; }

.tmv-author-work-tabs {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 14px;
    margin-top: 34px;
}
.tmv-author-work-tabs a {
    display: grid;
    grid-template-columns: auto 1fr auto;
    align-items: center;
    gap: 12px;
    min-height: 74px;
    padding: 16px 18px;
    color: #5f526a;
    background: #fff;
    border: 1px solid #e7ddec;
    border-radius: 19px;
    box-shadow: 0 12px 30px rgba(66, 42, 86, .055);
    font-weight: 850;
    text-decoration: none;
    transition: transform .18s ease, border-color .18s ease, box-shadow .18s ease, background .18s ease;
}
.tmv-author-work-tabs a:hover {
    transform: translateY(-2px);
    border-color: #bfa9d3;
    box-shadow: 0 18px 38px rgba(66, 42, 86, .09);
}
.tmv-author-work-tabs a.is-active {
    color: #fff;
    background: linear-gradient(135deg, #7354a8, #9d73c8);
    border-color: transparent;
    box-shadow: 0 18px 42px rgba(104, 74, 145, .22);
}
.tmv-author-work-tabs i {
    display: grid;
    place-items: center;
    width: 40px;
    height: 40px;
    color: #74549d;
    background: #f4eff9;
    border-radius: 13px;
    font-size: 1.05rem;
}
.tmv-author-work-tabs a.is-active i {
    color: #694794;
    background: #fff;
}
.tmv-author-work-tabs strong {
    display: grid;
    place-items: center;
    min-width: 36px;
    height: 36px;
    padding-inline: 8px;
    color: #66488d;
    background: #f5f0f9;
    border-radius: 999px;
    font-size: .88rem;
}
.tmv-author-work-tabs a.is-active strong {
    color: #65468d;
    background: #fff;
}
.tmv-author-work-tabs + .tmv-author-work { margin-top: 18px; }
.tmv-author-work .tmv-empty-state { margin-top: 12px; }

@media (max-width: 720px) {
    .tmv-author-work-tabs { grid-template-columns: 1fr; }
    .tmv-author-work-tabs a { min-height: 66px; }
}
