/* Author page – theme-switch aware */

.author-archive{
  width:100%;
  margin:0 auto;
  padding:12px;
  max-width:1200px;
  /* local tokens */
  --chip-bg: var(--base-3);
  --text-alt: color-mix(in srgb, var(--text) 70%, var(--muted) 30%);
}

.author-card{
  display:grid;
  grid-template-columns:110px 1fr auto;
  gap:16px;
  align-items:center;
  padding:16px;
  border:1px solid var(--line);
  border-radius:14px;
  box-shadow:0 2px 12px rgba(0,0,0,.04);
  background:var(--base-2);
}

/* Avatar */
.author-avatar-wrap{ --avt:96px; position:relative; width:var(--avt); height:var(--avt); }
.author-avatar{ width:100%; height:100%; border-radius:50%; object-fit:cover; display:block; position:relative; z-index:1; }
.author-frame{ position:absolute; top:50%; left:50%; transform:translate(-50%,-50%); pointer-events:none; max-width:250%; z-index:2; }
.user-avatar{ position:relative; width:var(--avatar); height:var(--avatar); border-radius:50%; flex:0 0 var(--avatar); }

/* Header info */
.author-info{ padding-left:30px; min-width:0; }
.author-name{
  margin:30px 0 6px;
  font-size:1.5rem;
  line-height:1.2;
  font-weight:800;
  color:var(--text);
}
.author-meta{
  display:flex;
  gap:12px;
  flex-wrap:wrap;
  color:var(--muted);
  font-size:.9rem;
  margin:15px 0;
}
.badges-wrap{ display:flex; gap:10px; flex-wrap:wrap; justify-content:flex-end; }
.vip-pill{
  display:inline-flex; align-items:center; gap:8px;
  padding:6px 12px;
  border:1px solid var(--line);
  border-radius:999px;
  font-weight:600;
  background:var(--base-2);
  color:var(--text);
}
.badge-chip{
  display:inline-flex; align-items:center; gap:8px;
  padding:6px 10px;
  border:1px solid var(--line);
  border-radius:999px;
  background:var(--chip-bg);
  font-weight:600;
  color:var(--text);
}
.badge-chip .stars{ color:#f7b500; font-size:13px; }

/* Summary stats */
.author-stats{
  display:grid;
  grid-auto-flow:column;
  gap:18px;
  text-align:center;
  margin:15px 0;
}
.stat{ display:flex; flex-direction:column; align-items:center; line-height:1; text-align:center; }
.stat b{ display:block; font-size:1.25rem; font-weight:800; color:var(--text); }
.stat em{ font-style:normal; color:var(--muted); font-size:12px; }

/* Topic list */
.author-topics{ margin-top:20px; }
.topic-list{ list-style:none; margin:0; padding:0; }
.topic-row{
  display:grid;
  grid-template-columns:1fr auto;
  gap:18px;
  align-items:center;
  background:var(--base-2);
  border:1px solid var(--line);
  border-radius:14px;
  padding:14px 16px;
  box-shadow:0 2px 10px rgba(0,0,0,.04);
  margin-bottom:12px;
}
.col-topic{ display:flex; gap:12px; align-items:flex-start; min-width:0; }
.topic-main{ min-width:0; }
.topic-title{ text-decoration:none; color:var(--text); font-weight:600; }
.topic-title:hover{ color:var(--brand); }
.topic-sub{
  display:flex; gap:10px; align-items:center;
  color:var(--muted); font-size:12px; margin-top:4px;
}
.user-chip {
    display: inline-flex;
    gap: 6px;
    align-items: center;
    height: 36px;
    width: 36px;
}
.avatar-img {
    width: 100% !important;
    height: 100% !important;
    border-radius: 50%;
    object-fit: cover;
    border: 2px solid transparent;
    z-index: 1;
    position: relative;
}

.user-name{
  font-weight:600; font-size:.92rem; color:var(--text-alt);
  max-width:180px; white-space:nowrap; overflow:hidden; text-overflow:ellipsis;
}
.node-pill{
  display:inline-flex; align-items:center; gap:6px;
  font-weight:700; font-size:.78rem;
  padding:.25rem .5rem; border-radius:999px;
  background:var(--chip-bg);
  color:#7c3aed;
}
.node-pill.in-meta{ margin-left:6px; }

/* Right-column stats per topic */
.col-stats{
  display:grid;
  grid-template-columns:80px 80px 1fr;
  align-items:center;
  gap:12px;
  justify-items:center;
}
.col-stats .stat b{ font-size:16px; color:var(--text); }
.col-stats .stat em{ font-style:normal; font-size:.78rem; color:var(--muted); margin-top:1px; }

/* Last activity */
.last-activity{ display:flex; gap:.5rem; align-items:center; color:var(--text-alt); font-size:.85rem; }
.last-activity time{ color:var(--muted); }
.col-stats .last-activity{
  display:grid; grid-template-columns:auto 1fr;
  grid-auto-rows:min-content; align-items:center; justify-items:end; text-align:right; row-gap:2px; white-space:normal;
}
.col-stats .last-activity .latest-who{ grid-column:2; grid-row:2; display:inline-flex; align-items:center; gap:.35rem; }
.col-stats .last-activity time{ grid-column:2; grid-row:1; display:block; opacity:.95; }
.vip-dot{ width:8px; height:8px; border-radius:999px; background:#10b981; display:inline-block; }

/* Responsive */
@media (max-width:920px){
  .topic-row{ grid-template-columns:1fr; }
  .col-stats{ grid-template-columns:repeat(3,minmax(0,1fr)); }
}
@media (max-width:768px){
  .author-info{ padding-left:0; }
  .author-card{
    display:block;
    grid-template-columns:72px 1fr;
    grid-auto-rows:auto;
    justify-items:center;
    text-align:center;
  }
  .author-stats{ grid-column:1/-1; }
  .badges-wrap{ justify-content:center; }
  .col-stats{ display:flex; gap:10px; justify-content:space-between; justify-self:normal; }
  .col-stats .stat.is-views{ display:none; }
  .col-stats .last-activity .latest-who{ display:none !important; }
  .topic-row{ grid-template-columns:1fr; }
  .col-stats .stat b, .stat b{ padding-right:12px; }
  .stat{ flex-direction:row; }
  span.author-joined, span.author-vip-until{ margin:0 auto; }
}

/* Khung hiển thị frame bằng ::after */
.avatar-frame-wrapper {
  position: relative;
  display: inline-block;
  width: 40px; height: 40px;
}
.avatar-frame-wrapper.has-frame::after {
  content: "";
  position: absolute;
  top: 50%; left: 50%;
  width: 200%; height: 200%;
  transform: translate(-50%, -50%);
  background-repeat: no-repeat;
  background-position: center;
  background-size: contain;
  pointer-events: none;
  z-index: 3;
}
/* User profile: nick, badge, rank */
.user-info{display:grid}
img.badge-icon{width:18px !important;height:18px !important;object-fit:contain;border-radius:0}
.nickname-mask-text{display:inline-block;font-weight:700;font-size:16px;background-size:cover;background-position:center;background-repeat:no-repeat;-webkit-background-clip:text;-webkit-text-fill-color:transparent;color:transparent;text-shadow:none;line-height:1.4;max-width:100%;font-family:'Parisienne',cursive}
.badge-text{font-family:cursive;font-weight:700;font-style:italic;letter-spacing:1px;color:#fff;text-shadow:0 0 1px rgba(0,0,0,.3)}
[class*="rank-"]{background-repeat:no-repeat;background-position:center;background-size:cover}
[class^="rank-"]{background-repeat:no-repeat;background-position:center;background-size:cover}

.rank-commoner{background-color:#898989}
.rank-dou-fighter{background-color:#d8a9d9}
.rank-dou-master{background-color:#a9d9cf}
.rank-dou-grandmaster{background-color:#67ca60}
.rank-dou-spirit{background-color:#e0e719}
.rank-dou-king{background-color:#2bff03}
.rank-dou-emperor{background-color:#ff0303}

.rank-dou-sect{background-image:url('/wp-content/themes/animestream-child/user-system/assets/gif/dou-sect.gif')}
.rank-dou-venerate{background-image:url('/wp-content/themes/animestream-child/user-system/assets/gif/dou-venerate.gif')}
.rank-dou-saint{background-image:url('/wp-content/themes/animestream-child/user-system/assets/gif/dou-saint.gif')}
.rank-dou-god{background-image:url('/wp-content/themes/animestream-child/user-system/assets/gif/dou-god.gif')}
.rank-heavenly-emperor{background-image:url('/wp-content/themes/animestream-child/user-system/assets/gif/heavenly-emperor.gif')}
.rank-admin{background-image:url('/wp-content/themes/animestream-child/user-system/assets/gif/admin.gif')}

.vip-basic{background:linear-gradient(180deg,#f8fafc,#eef2f7);color:#0f172a;border-color:#e5e7eb}
.vip-basic .vip-dot{background:#9ca3af}
.vip-silver{background:linear-gradient(180deg,#f6f7fb,#e9edf5);color:#0f172a;border-color:#e5e7eb}
.vip-silver .vip-dot{background:#a1a1aa}
.vip-gold{background:linear-gradient(180deg,#fff4cc,#ffe3a7);color:#0f172a;border-color:#f5d27a}
.vip-gold .vip-dot{background:#f59e0b}
.vip-platinum{background:linear-gradient(180deg,#eef5ff,#dce8ff);color:#0f172a;border-color:#c7d7ff}
.vip-platinum .vip-dot{background:#60a5fa}
.vip-diamond{background:linear-gradient(180deg,#e6fbff,#ccf6ff);color:#0f172a;border-color:#99e9f8}
.vip-diamond .vip-dot{background:#06b6d4}
.vip-legend{background:linear-gradient(180deg,#fdf2ff,#f6d9ff);color:#0f172a;border-color:#e9b9ff}
.vip-legend .vip-dot{background:#a855f7}
.vip-admin{background:linear-gradient(180deg,#eef2ff,#dae2ff);color:#0f172a;border-color:#c7d2fe}
.vip-admin .vip-dot{background:#6366f1}

/* Avatar/frames */
.avatar-wrapper{width:48px;height:48px;position:relative;flex-shrink:0}
.avatar-wrapper img{width:40px;height:40px;border-radius:50%;object-fit:cover;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);box-shadow:none !important}
.avatar-wrapper::after{content:"";position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:250%;height:250%;background-size:cover;background-repeat:no-repeat;pointer-events:none;z-index:2}
.frame-basic::after{background-image:url('/wp-content/themes/animestream-child/user-system/assets/frames/basic.png')}
.frame-silver::after{background-image:url('/wp-content/themes/animestream-child/user-system/assets/frames/silver.png')}
.frame-gold::after{background-image:url('/wp-content/themes/animestream-child/user-system/assets/frames/gold.png')}
.frame-platinum::after{background-image:url('/wp-content/themes/animestream-child/user-system/assets/frames/platinum.png')}
.frame-diamond::after{background-image:url('/wp-content/themes/animestream-child/user-system/assets/frames/diamond.png')}
.frame-legend::after{background-image:url('/wp-content/themes/animestream-child/user-system/assets/frames/legend.png')}
.frame-admin::after{background-image:url('/wp-content/themes/animestream-child/user-system/assets/frames/admin.png')}