/* A4Pets Author Profiles — front-end styles */

.aap-profile{
  --aap-accent:#ec65ca;
  --aap-ink:#1f2430;
  --aap-muted:#667085;
  --aap-line:#ececf1;
  --aap-soft:#fdeef9;
  --aap-radius:16px;
  background:#fff;
  color:var(--aap-ink);
  border:1px solid var(--aap-line);
  border-radius:var(--aap-radius);
  box-shadow:0 4px 18px rgba(31,36,48,.06);
  overflow:hidden;
  margin:0 0 28px;
  font-size:16px;
  line-height:1.6;
}
.aap-profile *{box-sizing:border-box;}
.aap-profile img{max-width:100%;height:auto;display:block;}

.aap-name{margin:0;font-size:24px;line-height:1.2;color:var(--aap-ink);}
.aap-title{color:var(--aap-accent);font-weight:600;margin-top:4px;}
.aap-tagline{color:var(--aap-muted);margin-top:4px;}
.aap-bio{color:#3b4252;margin-top:14px;}
.aap-bio p{margin:0 0 12px;}
.aap-bio p:last-child{margin-bottom:0;}

.aap-section-label{display:block;font-size:12px;letter-spacing:.6px;text-transform:uppercase;color:var(--aap-muted);font-weight:700;margin:18px 0 10px;}

/* Avatar */
.aap-avatar img{
  width:104px;height:104px;border-radius:50%;object-fit:cover;
  border:3px solid #fff;box-shadow:0 0 0 3px var(--aap-soft);
}

/* Credentials */
.aap-credentials{
  display:inline-flex;align-items:center;gap:6px;margin-top:10px;
  background:var(--aap-soft);color:#9b2f86;border:1px solid #f4c8e8;
  padding:4px 12px;border-radius:999px;font-size:13.5px;font-weight:600;
}
.aap-cred-icon{color:var(--aap-accent);}

/* Socials */
.aap-socials{display:flex;flex-wrap:wrap;gap:8px;margin-top:14px;}
.aap-social{
  display:inline-flex;align-items:center;justify-content:center;
  width:36px;height:36px;border-radius:50%;
  background:#f4f5f8;color:#54607a;border:1px solid var(--aap-line);
  transition:.15s;text-decoration:none;
}
.aap-social:hover{background:var(--aap-accent);color:#fff;border-color:var(--aap-accent);transform:translateY(-1px);}
.aap-social svg{display:block;}

/* Expertise tags */
.aap-tags{display:flex;flex-wrap:wrap;gap:8px;}
.aap-tag{
  background:#f4f5f8;border:1px solid var(--aap-line);color:#3b4252;
  padding:4px 12px;border-radius:8px;font-size:13.5px;
}

/* Recent posts grid */
.aap-posts{display:grid;grid-template-columns:repeat(auto-fill,minmax(170px,1fr));gap:16px;}
.aap-post{
  display:flex;flex-direction:column;text-decoration:none;color:var(--aap-ink);
  border:1px solid var(--aap-line);border-radius:12px;overflow:hidden;background:#fff;transition:.15s;
}
.aap-post:hover{box-shadow:0 6px 18px rgba(31,36,48,.10);transform:translateY(-2px);border-color:#e2c2da;}
.aap-post-thumb img{width:100%;height:120px;object-fit:cover;}
.aap-post-title{padding:10px 12px 2px;font-weight:600;font-size:14.5px;line-height:1.35;}
.aap-post-date{padding:0 12px 12px;color:var(--aap-muted);font-size:12.5px;margin-top:auto;}

/* ---- CARD template ---- */
.aap-card{padding:26px;}
.aap-card .aap-head{display:flex;gap:22px;align-items:flex-start;}
.aap-card .aap-head-main{flex:1;min-width:0;}
@media(max-width:520px){
  .aap-card{padding:20px;}
  .aap-card .aap-head{flex-direction:column;align-items:center;text-align:center;}
  .aap-card .aap-socials{justify-content:center;}
}

/* ---- BANNER template ---- */
.aap-banner .aap-hero{
  background:linear-gradient(135deg,var(--aap-accent),#9b2f86);
  color:#fff;text-align:center;padding:38px 24px 30px;
}
.aap-banner .aap-hero .aap-name{color:#fff;font-size:28px;}
.aap-banner .aap-hero .aap-title{color:#fff;opacity:.95;}
.aap-banner .aap-hero .aap-tagline{color:#fff;opacity:.9;}
.aap-banner .aap-avatar{display:flex;justify-content:center;margin-bottom:12px;}
.aap-banner .aap-avatar img{width:120px;height:120px;box-shadow:0 0 0 4px rgba(255,255,255,.35);}
.aap-banner .aap-hero .aap-social{background:rgba(255,255,255,.18);color:#fff;border-color:rgba(255,255,255,.35);}
.aap-banner .aap-hero .aap-social:hover{background:#fff;color:var(--aap-accent);}
.aap-banner .aap-hero .aap-socials{justify-content:center;}
.aap-banner .aap-body{padding:24px 28px 28px;}

/* ---- MINIMAL template ---- */
.aap-minimal{box-shadow:none;border-radius:12px;padding:20px 22px;}
.aap-minimal .aap-head{display:flex;gap:14px;align-items:center;}
.aap-minimal .aap-avatar img{width:64px;height:64px;box-shadow:none;border:0;}
.aap-minimal .aap-name{font-size:19px;}
.aap-minimal .aap-title{color:var(--aap-muted);font-weight:500;font-size:14px;}
.aap-minimal .aap-meta-row{display:flex;justify-content:space-between;align-items:center;gap:14px;flex-wrap:wrap;margin-top:14px;}
.aap-minimal .aap-post-list{list-style:none;margin:8px 0 0;padding:0;}
.aap-minimal .aap-post-list li{padding:7px 0;border-bottom:1px solid var(--aap-line);display:flex;justify-content:space-between;gap:12px;}
.aap-minimal .aap-post-list li:last-child{border-bottom:0;}
.aap-minimal .aap-post-list a{color:var(--aap-ink);text-decoration:none;font-weight:600;}
.aap-minimal .aap-post-list a:hover{color:var(--aap-accent);}

/* Stat pill */
.aap-stat{color:var(--aap-muted);font-size:14px;}
.aap-stat strong{color:var(--aap-ink);font-size:18px;}

/* ---- SIDEBAR template ---- */
.aap-sidebar{display:grid;grid-template-columns:280px 1fr;gap:0;}
.aap-sidebar .aap-side{background:#fafbfd;border-right:1px solid var(--aap-line);padding:28px 24px;text-align:center;}
.aap-sidebar .aap-side .aap-avatar{display:flex;justify-content:center;margin-bottom:14px;}
.aap-sidebar .aap-side .aap-avatar img{width:120px;height:120px;}
.aap-sidebar .aap-side .aap-name{font-size:20px;}
.aap-sidebar .aap-side .aap-socials{justify-content:center;}
.aap-sidebar .aap-side .aap-stat{display:block;margin:12px 0;}
.aap-sidebar .aap-main{padding:28px 30px;}
@media(max-width:680px){
  .aap-sidebar{grid-template-columns:1fr;}
  .aap-sidebar .aap-side{border-right:0;border-bottom:1px solid var(--aap-line);}
}

/* ---- SPOTLIGHT template ---- */
.aap-spotlight{text-align:center;}
.aap-spotlight .aap-cover{height:140px;background:linear-gradient(135deg,var(--aap-accent),#9b2f86);}
.aap-spotlight .aap-spot-head{padding:0 24px 8px;margin-top:-64px;}
.aap-spotlight .aap-avatar{display:flex;justify-content:center;}
.aap-spotlight .aap-avatar img{width:128px;height:128px;box-shadow:0 0 0 5px #fff;}
.aap-spotlight .aap-name{margin-top:14px;font-size:26px;}
.aap-spotlight .aap-spot-meta{display:flex;justify-content:center;flex-wrap:wrap;gap:10px 18px;align-items:center;margin-top:12px;}
.aap-spotlight .aap-socials{justify-content:center;margin-top:14px;}
.aap-spotlight .aap-body{padding:18px 30px 30px;text-align:left;max-width:760px;margin:0 auto;}
.aap-spotlight .aap-section-label{text-align:left;}
.aap-spotlight .aap-tags,.aap-spotlight .aap-bio{text-align:left;}

/* ---- Full author bio page ---- */
.aap-author-page{padding:32px 16px 56px;}
.aap-author-page-inner{max-width:1040px;margin:0 auto;}
.aap-author-posts{margin-top:34px;}
.aap-posts-heading{font-size:22px;margin:0 0 18px;color:var(--aap-ink);position:relative;padding-bottom:10px;}
.aap-posts-heading:after{content:"";position:absolute;left:0;bottom:0;width:54px;height:3px;background:var(--aap-accent);border-radius:3px;}
.aap-posts-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(230px,1fr));gap:22px;}
.aap-author-page .aap-post{background:#fff;border:1px solid var(--aap-line);border-radius:14px;overflow:hidden;text-decoration:none;color:var(--aap-ink);transition:.15s;display:flex;flex-direction:column;}
.aap-author-page .aap-post:hover{box-shadow:0 8px 22px rgba(31,36,48,.10);transform:translateY(-2px);border-color:#e2c2da;}
.aap-author-page .aap-post-thumb img{width:100%;height:150px;object-fit:cover;display:block;}
.aap-author-page .aap-post-body{padding:14px 16px 16px;display:flex;flex-direction:column;gap:6px;}
.aap-author-page .aap-post-title{font-weight:700;font-size:16px;line-height:1.35;}
.aap-author-page .aap-post-excerpt{color:var(--aap-muted);font-size:13.5px;}
.aap-author-page .aap-post-date{color:#9aa1ad;font-size:12.5px;margin-top:4px;}
.aap-pagination{margin-top:30px;}
.aap-pagination .nav-links{display:flex;gap:8px;flex-wrap:wrap;justify-content:center;}
.aap-pagination .page-numbers{display:inline-block;padding:8px 13px;border:1px solid var(--aap-line);border-radius:8px;text-decoration:none;color:var(--aap-ink);background:#fff;}
.aap-pagination .page-numbers.current{background:var(--aap-accent);color:#fff;border-color:var(--aap-accent);}
.aap-pagination .page-numbers:hover:not(.current){border-color:var(--aap-accent);color:var(--aap-accent);}
.aap-no-posts{color:var(--aap-muted);}

/* ---- Byline link shortcode ---- */
.aap-author-link{--aap-accent:#ec65ca;}
.aap-author-link__a{color:var(--aap-accent);text-decoration:none;}
.aap-author-link__a:hover{text-decoration:underline;}

/* ===== v1.2 — layout options, centering, new sections ===== */
.aap-author-page{width:100%;}
.aap-author-page .aap-author-page-inner{max-width:var(--aap-container,1040px);margin-left:auto;margin-right:auto;width:100%;}

/* Avatar shape (circle / rounded / square) */
.aap-profile .aap-avatar img{border-radius:var(--aap-avatar-radius,50%);}

/* Article columns */
.aap-author-page .aap-posts-grid{grid-template-columns:repeat(var(--aap-article-cols,3),minmax(0,1fr));}
@media(max-width:900px){.aap-author-page .aap-posts-grid{grid-template-columns:repeat(2,minmax(0,1fr));}}
@media(max-width:560px){.aap-author-page .aap-posts-grid{grid-template-columns:1fr;}}

/* Meta row */
.aap-meta{display:flex;flex-wrap:wrap;gap:8px 16px;margin:12px 0;color:var(--aap-muted);font-size:13.5px;}
.aap-meta-item{display:inline-flex;align-items:center;gap:5px;}
.aap-meta-item .dashicons{font-size:16px;width:16px;height:16px;color:var(--aap-accent);}
.aap-spotlight .aap-meta,.aap-banner .aap-meta{justify-content:center;}
.aap-banner .aap-hero .aap-meta{color:rgba(255,255,255,.95);}
.aap-banner .aap-hero .aap-meta-item .dashicons{color:#fff;}

/* Contact button */
.aap-contact{margin-top:14px;}
.aap-spotlight .aap-contact,.aap-banner .aap-body .aap-contact{display:flex;justify-content:center;}
.aap-contact-btn{display:inline-flex;align-items:center;gap:6px;background:var(--aap-accent);color:#fff;text-decoration:none;padding:8px 18px;border-radius:999px;font-weight:600;font-size:14px;transition:.15s;}
.aap-contact-btn:hover{filter:brightness(.92);color:#fff;}
.aap-contact-btn .dashicons{font-size:16px;width:16px;height:16px;}
