/* 头像框系统（2026-10-28 站主要求）
   10 款段位框（青铜→圣辉，按累计积分等级解锁）+ 3 款免广告会员专属框（v1~v3，最炫酷）。
   用法：把头像 <img> 包一层 <span class="avf avf-t3"><img …></span>，class 由 gityx_avframe_class() 给出。

   ⚠️ 结构要点（2026-10-28 站主反馈后重做）：
   框必须画在**头像外面**，不能压在头像上、更不能看起来像一层背景色。
   实现：两个伪元素都外扩出去，再用 mask 把"头像那一块"挖掉 ——
       mask 内圈 = calc(50% - 外扩量)，而 50% 是伪元素自身半径 ⇒ 算出来正好等于头像边缘，
       **与头像尺寸无关**（40px 评论头像、84px 主页大头像都自动贴合）。
     · ::before（z-index 1）主环带：外扩 0 → --af-o1，内沿压进头像 1px 防漏缝（在头像下层，不遮脸）
     · ::after  （z-index 3）特效环带：外扩 --af-o1 → --af-o2，条纹 / 扫光 / 星芒都在这条带子里转
     · 头像 img 是 z-index 2，夹在两层中间 ⇒ 脸永远干净
   外发光用 .avf 自身的 box-shadow（画在 span 边界外，不受 mask 裁剪影响）。

   ⚠️ 全站顶栏 24px 小头像不套框（站主要求），故这里不处理 .ua-avatar。
   ⚠️ 只动 transform / opacity / filter（GPU 合成），评论页几十个头像同屏也不卡。
*/

/* —— 通用骨架 —— */
.avf{
  position:relative;display:inline-block;border-radius:50%;line-height:0;vertical-align:middle;isolation:isolate;
  --af-o1:5px;   /* 主环带外扩量（框的"宽度"） */
  --af-o2:10px;  /* 特效环带外扩量（条纹 / 扫光所在） */
  --af-ring:linear-gradient(135deg,#e2e8f0,#94a3b8);  /* 主环带填充 */
  --af-fx:none;                                        /* 特效环带填充 */
  --af-glow:none;                                      /* 外发光 */
  box-shadow:var(--af-glow);
}
/* ⚠️ aspect-ratio:1/1 + object-fit:cover 是**必需**的（2026-10-28 修「排行榜第 11 名战州州长头像变形」）：
   很多地方给头像容器定了正方形（.rank-avatar 40×40）并写 `img{width:100%;height:100%}`，
   但 img 的百分比基准是外面的 span.avf —— .avf 是 inline-block、宽度又由内容决定 ⇒ **循环依赖**；
   浏览器这时会退化成「按图片固有比例算高度」⇒ 非正方形头像被拉高溢出容器
   （实测 175×222 的头像渲染成 40×50.7px，把 40px 容器撑破，头像被裁、头像框也被拉成椭圆）。
   强制 1:1 后高度重新按宽度走，cover 裁切居中 ⇒ 任何比例的原图都是正圆。 */
.avf img{position:relative;z-index:2;border-radius:50%;display:block;aspect-ratio:1/1;object-fit:cover;}

.avf::before,.avf::after{
  content:"";position:absolute;border-radius:50%;pointer-events:none;
}
/* 主环带：外扩 0→o1（内沿压 1px 到头像下面，避免出现一圈缝） */
.avf::before{
  inset:calc(-1 * var(--af-o1));z-index:1;
  background:var(--af-ring);
  -webkit-mask:radial-gradient(circle at 50% 50%,transparent calc(50% - var(--af-o1) - 1px),#000 calc(50% - var(--af-o1)));
          mask:radial-gradient(circle at 50% 50%,transparent calc(50% - var(--af-o1) - 1px),#000 calc(50% - var(--af-o1)));
}
/* 特效环带：外扩 o1→o2（条纹 / 扫光 / 星芒） */
.avf::after{
  inset:calc(-1 * var(--af-o2));z-index:3;
  background:var(--af-fx);
  -webkit-mask:radial-gradient(circle at 50% 50%,transparent calc(50% - var(--af-o1)),#000 calc(50% - var(--af-o1) + 1px));
          mask:radial-gradient(circle at 50% 50%,transparent calc(50% - var(--af-o1)),#000 calc(50% - var(--af-o1) + 1px));
}

/* 父容器原本 overflow:hidden 的（排行榜 / 关注列表 / 作者卡），套框后要放开，否则框被裁掉 */
.avf-host{overflow:visible !important;}
.rank-avatar:has(> .avf),.pu-avatar:has(> .avf),.author-avatar:has(> .avf),
.fa-card .img-box:has(> .avf),.pl-area-userpic:has(> .avf),.ap-avatar-wrap:has(> .avf){overflow:visible;}
/* 小头像（评论 42px / 列表）环带收窄一点，免得挤到旁边的文字。
   ⚠️ 这条 (0,2,0) 会覆盖 .avf-v4{--af-o2:17px} 等 (0,1,0) 的专属款定义 —— 是刻意的：
   42px 头像上 17~22px 环带占头像一半宽，必须压回来。 */
.pl-area-userpic .avf,.rank-avatar .avf,.pu-avatar .avf,.fa-card .avf{--af-o1:4px;--af-o2:8px;}
/* 小尺寸减负（2026-10-28）：实测 v3/v4/v6 在评论区 42px 下糊成一圈噪点光雾，三个根因——
   ① 辉光 22~26px 是固定像素，在 42px 头像上=半圈光雾 ⇒ 换中性微光；
   ② v3/v4/v6 的多段 mask（主带+缝+细环）在 8px 总厚度下每段 <1px ⇒ 退化成基类单段环带，
      条纹照转（t2 的 42px 实测条纹清晰，证明单段+条纹在小尺寸成立）；
   ③ 条纹周期是固定角度 ⇒ 小尺寸密度翻倍 —— 实测可接受，不动。 */
.pl-area-userpic .avf,.rank-avatar .avf,.pu-avatar .avf,.fa-card .avf{
  --af-glow:0 0 5px rgba(148,163,184,.35);
}
.pl-area-userpic .avf::after,.rank-avatar .avf::after,.pu-avatar .avf::after,.fa-card .avf::after{
  -webkit-mask:radial-gradient(circle at 50% 50%,transparent calc(50% - var(--af-o1)),#000 calc(50% - var(--af-o1) + 1px));
          mask:radial-gradient(circle at 50% 50%,transparent calc(50% - var(--af-o1)),#000 calc(50% - var(--af-o1) + 1px));
}

@keyframes avf-spin{to{transform:rotate(360deg);}}
@keyframes avf-spin-rev{to{transform:rotate(-360deg);}}
@keyframes avf-breathe{0%,100%{opacity:.45;}50%{opacity:1;}}
@keyframes avf-pulse{0%{transform:scale(1);opacity:.9;}100%{transform:scale(1.22);opacity:0;}}
@keyframes avf-flash{0%,100%{opacity:.55;}50%{opacity:1;filter:brightness(1.35);}}
@keyframes avf-hue{to{filter:hue-rotate(360deg);}}
/* v3 永恒圣环专用：
   ① 主环带只做 rotate —— 绝不能加 scale：mask 内圈按伪元素自身 50% 算，
      一缩放就会和头像边缘脱开（漏缝）或压到脸上。 */
@keyframes avf-v3-ring{to{transform:rotate(360deg);}}
/* ② 圣光环：反向转 + 向外扩散 + 淡出。
      ⚠️ 必须写进**同一个**动画里：多个动画同时改 transform / opacity 时后者会覆盖前者
      （原来写的 `avf-spin + avf-pulse` 就是这个坑 —— pulse 的 scale 把 spin 的 rotate 顶掉了，9s 旋转根本没生效）。 */
@keyframes avf-v3-halo{
  0%{transform:rotate(0deg) scale(1);opacity:0;}
  14%{opacity:.95;}
  100%{transform:rotate(-360deg) scale(1.18);opacity:0;}
}
/* v3 第四版启用：慢速反转 + 轻微缩放 + 亮度呼吸。
   与 halo 的区别：**不淡到 0**（.9 ↔ 1）⇒ 双环带始终可见，是「圣环在呼吸」而不是「一圈圈飘散消失」。 */
@keyframes avf-v3-pulse{
  0%,100%{transform:rotate(0deg) scale(1);opacity:.9;}
  50%{transform:rotate(-180deg) scale(1.06);opacity:1;}
}

/* —— 段位框 —— */
/* t1 青铜：古铜环 + 缓慢转动的细条纹 */
.avf-t1{
  --af-ring:linear-gradient(135deg,#e6b177,#8a5a2b 55%,#5c3a17);
  --af-fx:repeating-conic-gradient(from 0deg,rgba(255,236,200,.9) 0 5deg,transparent 5deg 26deg);
  --af-glow:0 0 5px rgba(138,90,43,.45);
}
.avf-t1::after{animation:avf-spin 14s linear infinite;}

/* t2 白银（2026-10-28 第六版·站主要求「去花纹改条纹」）：去掉 4 层互质星点（那看着像碎钻噪点），
   改成**硬边放射条纹**：18° 一周期 = 亮银 6° + 透明 12°。
   条纹刻意用**透明间隔**而不是暗色间隔 —— 暗条会把 --af-ring 的银白渐变整片盖死（同 6.365 的 conic 覆盖坑）。 */
.avf-t2{
  --af-ring:
    conic-gradient(from 0deg,#0b1220,#94a3b8 12%,#0f172a 26%,#e2e8f0 40%,#1e293b 54%,
      #cbd5e1 68%,#0b1220 82%,#64748b 94%,#0b1220);
  --af-fx:
    repeating-conic-gradient(from 0deg,rgba(255,255,255,.92) 0 6deg,transparent 6deg 18deg),
    conic-gradient(from 0deg,transparent 0 60%,rgba(255,255,255,.9) 76%,transparent 90%);
  --af-glow:0 0 10px rgba(224,242,254,.85),0 0 22px rgba(56,189,248,.5);
}
.avf-t2::before{animation:avf-spin 16s linear infinite;}
.avf-t2::after{animation:avf-spin 4.5s linear infinite;}

/* t3 黄金：金环 + 金色条纹呼吸 */
.avf-t3{
  --af-ring:linear-gradient(135deg,#fff2c2,#f5c542 45%,#b4801f);
  --af-fx:repeating-conic-gradient(from 0deg,#fff3c4 0 7deg,transparent 7deg 28deg);
  --af-glow:0 0 8px rgba(245,197,66,.65);
}
.avf-t3::after{animation:avf-spin 8s linear infinite,avf-breathe 2.8s ease-in-out infinite;}

/* t4 翡翠：翠环 + 条纹脉冲外扩 */
.avf-t4{
  --af-ring:linear-gradient(135deg,#a7f3d0,#10b981 50%,#047857);
  --af-fx:repeating-conic-gradient(from 0deg,rgba(167,243,208,.95) 0 8deg,transparent 8deg 32deg);
  --af-glow:0 0 8px rgba(16,185,129,.6);
}
.avf-t4::after{animation:avf-spin 6s linear infinite,avf-pulse 2.6s ease-out infinite;}

/* t5 碧海（2026-10-28 优化）：原来 fx 只有 5 个色标的平滑 conic ⇒ 转起来几乎没有位移感，
   再加上是线性渐变底，整款像一块蓝色塑料。这版改成 **三层浪纹 + 泡沫高光带**：
   三个不同周期的 repeating-conic（7° / 11° / 2.4°）叠出浪的层次，
   再叠一道 55% 位置的白色泡沫带 ⇒ 转动时能看出水流方向。 */
.avf-t5{
  --af-ring:
    repeating-conic-gradient(from 0deg,rgba(224,242,254,.9) 0 .8deg,transparent .8deg 5deg),
    conic-gradient(from 0deg,#7dd3fc,#0284c7 20%,#0ea5e9 40%,#0369a1 60%,#38bdf8 80%,#7dd3fc);
  --af-fx:
    repeating-conic-gradient(from 0deg,rgba(255,255,255,.75) 0 .9deg,transparent .9deg 7deg),
    repeating-conic-gradient(from 3deg,rgba(186,230,253,.6) 0 1.6deg,transparent 1.6deg 11deg),
    repeating-conic-gradient(from 6deg,rgba(14,165,233,.45) 0 .4deg,transparent .4deg 2.4deg),
    conic-gradient(from 0deg,transparent 0 40%,rgba(240,249,255,.8) 55%,transparent 70%);
  --af-glow:0 0 9px rgba(56,189,248,.7),0 0 20px rgba(14,165,233,.4);
}
.avf-t5::before{animation:avf-spin 12s linear infinite;}
.avf-t5::after{animation:avf-spin-rev 5s linear infinite;}

/* t6 紫罗兰：紫环 + 全息条纹色相流转 */
.avf-t6{
  --af-ring:linear-gradient(135deg,#ddd6fe,#8b5cf6 50%,#5b21b6);
  --af-fx:repeating-conic-gradient(from 0deg,#c4b5fd 0 6deg,#e879f9 6deg 12deg,#93c5fd 12deg 18deg,transparent 18deg 30deg);
  --af-glow:0 0 10px rgba(139,92,246,.65);
}
.avf-t6::after{animation:avf-spin 5s linear infinite,avf-hue 6s linear infinite,avf-flash 2.4s ease-in-out infinite;}

/* t7 玫瑰：玫红环 + 条纹反向双转 */
.avf-t7{
  --af-ring:conic-gradient(from 0deg,#fb7185,#f472b6,#fb923c,#fb7185);
  --af-fx:repeating-conic-gradient(from 0deg,#fecdd3 0 6deg,transparent 6deg 22deg);
  --af-glow:0 0 10px rgba(244,114,182,.6);
}
.avf-t7::before{animation:avf-spin 9s linear infinite;}
.avf-t7::after{animation:avf-spin-rev 3.6s linear infinite;}

/* t8 烈焰：橙红环 + 密集条纹疾转爆闪 */
.avf-t8{
  --af-ring:conic-gradient(from 0deg,#f97316,#ef4444,#facc15,#f97316);
  --af-fx:repeating-conic-gradient(from 0deg,#fff7ed 0 4deg,transparent 4deg 14deg);
  --af-glow:0 0 12px rgba(249,115,22,.75);
}
.avf-t8::before{animation:avf-spin 3.2s linear infinite;}
.avf-t8::after{animation:avf-spin-rev 1.6s linear infinite,avf-flash 1.1s ease-in-out infinite;}

/* t9 极光：幻彩环 + 条纹反向转 + 色相流转 */
.avf-t9{
  --af-ring:conic-gradient(from 0deg,#22d3ee,#a78bfa,#f472b6,#4ade80,#22d3ee);
  --af-fx:repeating-conic-gradient(from 0deg,#a5f3fc 0 5deg,#c4b5fd 5deg 10deg,#fbcfe8 10deg 15deg,transparent 15deg 24deg);
  --af-glow:0 0 12px rgba(34,211,238,.7);
}
.avf-t9::before{animation:avf-spin 6s linear infinite,avf-hue 8s linear infinite;}
.avf-t9::after{animation:avf-spin-rev 3s linear infinite,avf-hue 5s linear infinite;}

/* t10 圣辉：紫金环 + 放射状圣光柱（2026-10-28 与 v1 赞助星辉拉开区分）
   ← 段位顶的调性 = 紫金王朝 + 整圈放射光柱；v1 = 纯金 + 一道流星拖尾扫过。
      两者以前都是「金色 + 密集星芒 + 爆闪」，站主说几乎分不出来。 */
.avf-t10{
  --af-ring:
    repeating-conic-gradient(from 0deg,rgba(255,255,255,.45) 0 2.4deg,transparent 2.4deg 10deg),
    conic-gradient(from 0deg,#fde047,#f59e0b 18%,#a78bfa 40%,#f472b6 52%,#fbbf24 72%,#fde047);
  --af-fx:
    conic-gradient(from 8deg,
      #fff7ed 0 2.2deg, transparent 2.2deg 15deg,
      #c4b5fd 15deg 17.4deg, transparent 17.4deg 30deg,
      #fde047 30deg 32.2deg, transparent 32.2deg 45deg),
    repeating-conic-gradient(from 0deg,rgba(253,224,71,.5) 0 1deg,transparent 1deg 6deg);
  --af-glow:0 0 11px rgba(253,224,71,.7),0 0 24px rgba(167,139,250,.45);
}
.avf-t10::before{animation:avf-spin 4s linear infinite,avf-flash 1.8s ease-in-out infinite;}
.avf-t10::after{animation:avf-spin-rev 2.4s linear infinite;}

/* —— 免广告会员专属（最炫酷）—— */
/* v1 赞助星辉（2026-10-28 第三版：站主仍觉得不够）：
   从「密条纹 + 单道拖尾」改成 **三颗亮星沿轨道飞行** ——
   每颗是「极窄亮点(1.2°) + 3° 渐弱尾焰」，120° 均分，反向高速绕行 ⇒ 一眼看得出有三颗星在跑，
   而不是一圈条纹在转。主环保留暖金渐变 + 细密金纹（静态时的珠宝质感）。
   与 t10 圣辉的紫金放射光柱、v2 的七彩双环、v3 的霜白三层环，风格彻底分开。 */
.avf-v1{
  --af-ring:
    repeating-conic-gradient(from 0deg,rgba(255,255,255,.5) 0 1.6deg,transparent 1.6deg 7deg),
    conic-gradient(from 0deg,#fbbf24,#fffbeb 12%,#f59e0b 26%,#fffbeb 40%,#fbbf24 54%,#fffbeb 70%,#fbbf24);
  --af-fx:
    conic-gradient(from 0deg,
      #ffffff 0 1deg, rgba(255,247,214,.8) 1deg 2.4deg, rgba(255,247,214,.42) 2.4deg 4.4deg,
      rgba(255,247,214,.16) 4.4deg 7deg, transparent 7deg 118deg,
      #ffffff 118deg 119deg, rgba(255,247,214,.8) 119deg 120.4deg, rgba(255,247,214,.42) 120.4deg 122.4deg,
      rgba(255,247,214,.16) 122.4deg 125deg, transparent 125deg 236deg,
      #ffffff 236deg 237deg, rgba(255,247,214,.8) 237deg 238.4deg, rgba(255,247,214,.42) 238.4deg 240.4deg,
      rgba(255,247,214,.16) 240.4deg 243deg, transparent 243deg 360deg),
    repeating-conic-gradient(from 0deg,rgba(255,251,235,.42) 0 .55deg,transparent .55deg 4deg);
  --af-o2:12px;
  --af-glow:0 0 11px rgba(251,191,36,.75),0 0 24px rgba(245,158,11,.4);
}
.avf-v1::before{animation:avf-spin 3.2s linear infinite,avf-flash 1.4s ease-in-out infinite;}
.avf-v1::after{animation:avf-spin-rev 2.6s linear infinite;}

/* v2 幻彩至尊：七彩环 + 双色条纹反向疾转 + 脉冲 */
.avf-v2{
  --af-ring:conic-gradient(from 0deg,#f472b6,#a78bfa,#60a5fa,#34d399,#fbbf24,#f472b6);
  --af-fx:repeating-conic-gradient(from 0deg,#f9a8d4 0 4deg,#c4b5fd 4deg 8deg,#93c5fd 8deg 12deg,#6ee7b7 12deg 16deg,transparent 16deg 22deg);
  --af-o2:12px;
  --af-glow:0 0 12px rgba(167,139,250,.7),0 0 24px rgba(96,165,250,.4);
}
.avf-v2::before{animation:avf-spin 2.6s linear infinite,avf-hue 4s linear infinite;}
.avf-v2::after{animation:avf-spin-rev 1.9s linear infinite,avf-pulse 2.2s ease-out infinite;}

/* v3 永恒圣环（2026-10-28 第六版：站主「还是太平淡，搞复杂、醒目一点」）
   —— 从「霜白柔光」改成 **深靛宝石底 + 白金/冰蓝/香槟金三层亮纹的圣殿彩窗**。
   平淡的根因是**底色太白**（白环上再叠白纹 = 没有对比），这一版把底压成深靛紫，
   亮纹才有对比度，「复杂」和「醒目」同时解决：
   ① ::before = 贴身内环（0~4px）：深靛底 + 白金/冰蓝/金三色细纹混排 —— **慢转 8s**
   ② 缝 ≈ 4px（露背景，层次的关键）
   ③ ::after 外环用 mask 挖成**三层**：主外带（≈7px，6 颗光点 + 5 层纹理）
      + 0.9px 细分缝 + **最外一道 1.5px 细光环**（珠宝托圈感）
   ④ 五层纹理叠加：6 颗光点 / 12 道宽光束 / 60 道中纹 / 200 道超细拉丝 / 拍频星点
      —— 密度上来但不糊，因为底色够深、层次够多
   ⑤ 动画：内环慢正转 + 外环反向快转 + 呼吸缩放（avf-v3-pulse，不淡到 0）
   ⚠️ 依旧不用实心 spread 镶边（会把缝填掉），只用模糊辉光。 */
.avf-v3{
  --af-o1:4px;
  --af-o2:22px;
  --af-ring:
    repeating-conic-gradient(from 0deg,
      rgba(255,255,255,.95) 0 .9deg,
      transparent .9deg 3.2deg,
      rgba(56,189,248,.85) 3.2deg 3.9deg,
      transparent 3.9deg 6deg,
      rgba(251,191,36,.75) 6deg 6.5deg,
      transparent 6.5deg 9deg),
    conic-gradient(from 0deg,#0b1220,#1e1b4b 16%,#312e81 34%,#0f172a 52%,#1e1b4b 70%,#312e81 88%,#0b1220);
  --af-fx:
    conic-gradient(from 0deg,
      #ffffff 0 1.2deg, rgba(224,242,254,.95) 1.2deg 3.4deg, transparent 3.4deg 60deg,
      #ffffff 60deg 61.2deg, rgba(224,242,254,.95) 61.2deg 63.4deg, transparent 63.4deg 120deg,
      #ffffff 120deg 121.2deg, rgba(224,242,254,.95) 121.2deg 123.4deg, transparent 123.4deg 180deg,
      #ffffff 180deg 181.2deg, rgba(224,242,254,.95) 181.2deg 183.4deg, transparent 183.4deg 240deg,
      #ffffff 240deg 241.2deg, rgba(224,242,254,.95) 241.2deg 243.4deg, transparent 243.4deg 300deg,
      #ffffff 300deg 301.2deg, rgba(224,242,254,.95) 301.2deg 303.4deg, transparent 303.4deg 360deg),
    repeating-conic-gradient(from 4deg,rgba(186,230,253,.5) 0 2.2deg,transparent 2.2deg 15deg),
    repeating-conic-gradient(from 7deg,rgba(255,255,255,.42) 0 .5deg,transparent .5deg 3deg),
    repeating-conic-gradient(from 11deg,rgba(129,140,248,.38) 0 .16deg,transparent .16deg 1.2deg),
    repeating-conic-gradient(from 23deg,rgba(255,255,255,.55) 0 .22deg,transparent .22deg 5.5deg),
    /* 径向配色（2026-10-28 站主要求「外部再加一圈」配套）：由内到外 青蓝 → 靛紫 → 冰白，
       ⇒ 越往外越亮越冷，最外那圈自然浮起来，不会和外环糊成一片。
       ⚠️ 必须用 circle closest-side（半径=边心距=side/2）；默认 farthest-corner 是 0.707·side，
          百分比会整体缩水，色带位置全错。 */
    radial-gradient(circle closest-side at 50% 50%,
      transparent 0 60%,
      rgba(56,189,248,.45) 76%,
      rgba(167,139,250,.62) 90%,
      rgba(224,242,254,.8) 100%);
  --af-glow:
    0 0 10px rgba(224,242,254,.7),
    0 0 24px rgba(129,140,248,.45);
}
.avf-v3::before{animation:avf-v3-ring 8s linear infinite;}
/* 外环四段 mask（比例基于 o2 ⇒ 小头像自动等比缩放；o2=22 ⇒ 换算成像素）：
   .64→.32 主外带（8~15px）／ .32→.26 细缝（15~16.3px）
   ／ .26→.18 中环（16.3~18px）／ .18→.13 细缝（18~19.1px）／ .13→1px 最外环（19.1~21px）
   ⇒ 内环 + 4 段外环 = 「外面再套一圈」的层次 */
.avf-v3::after{
  animation:avf-v3-pulse 3.4s ease-in-out infinite;
  -webkit-mask:radial-gradient(circle at 50% 50%,
      transparent calc(50% - var(--af-o2) * .64),
      #000 calc(50% - var(--af-o2) * .64),
      #000 calc(50% - var(--af-o2) * .32),
      transparent calc(50% - var(--af-o2) * .32),
      transparent calc(50% - var(--af-o2) * .26),
      #000 calc(50% - var(--af-o2) * .26),
      #000 calc(50% - var(--af-o2) * .18),
      transparent calc(50% - var(--af-o2) * .18),
      transparent calc(50% - var(--af-o2) * .13),
      #000 calc(50% - var(--af-o2) * .13),
      #000 calc(50% - 1px),
      transparent calc(50% - 1px));
          mask:radial-gradient(circle at 50% 50%,
      transparent calc(50% - var(--af-o2) * .64),
      #000 calc(50% - var(--af-o2) * .64),
      #000 calc(50% - var(--af-o2) * .32),
      transparent calc(50% - var(--af-o2) * .32),
      transparent calc(50% - var(--af-o2) * .26),
      #000 calc(50% - var(--af-o2) * .26),
      #000 calc(50% - var(--af-o2) * .18),
      transparent calc(50% - var(--af-o2) * .18),
      transparent calc(50% - var(--af-o2) * .13),
      #000 calc(50% - var(--af-o2) * .13),
      #000 calc(50% - 1px),
      transparent calc(50% - 1px));
}

/* v4 赤焰凤凰（2026-10-28 第六版·去花纹改条纹）：去掉 0.25° 火星与 0.6° 火纹（密到成噪点），
   改成**三色放射条纹**：14° 一周期 = 白炽 3° + 橙 4° + 透明 7°。
   三色阶（白炽→橙→底）保住"火"的层次，透明段让 ring 的暗红透出来。 */
.avf-v4{
  --af-o1:4px;
  --af-o2:17px;
  --af-ring:
    conic-gradient(from 0deg,#1a0505,#dc2626 12%,#f97316 24%,#7f1d1d 38%,
      #ea580c 52%,#fbbf24 64%,#991b1b 78%,#1a0505);
  --af-fx:
    repeating-conic-gradient(from 0deg,#fde68a 0 3deg,#f97316 3deg 7deg,transparent 7deg 14deg),
    radial-gradient(circle closest-side at 50% 50%,
      transparent 0 52%, rgba(234,88,12,.55) 78%, rgba(253,230,138,.85) 100%);
  --af-glow:0 0 11px rgba(249,115,22,.85),0 0 26px rgba(220,38,38,.5);
}
.avf-v4::before{animation:avf-spin 6s linear infinite,avf-flash 1.8s ease-in-out infinite;}
.avf-v4::after{
  animation:avf-spin-rev 4s linear infinite,avf-flash 2.3s ease-in-out infinite;
  -webkit-mask:radial-gradient(circle at 50% 50%,
      transparent calc(50% - var(--af-o2) * .53),
      #000 calc(50% - var(--af-o2) * .53),
      #000 calc(50% - var(--af-o2) * .22),
      transparent calc(50% - var(--af-o2) * .22),
      transparent calc(50% - var(--af-o2) * .16),
      #000 calc(50% - var(--af-o2) * .16),
      #000 calc(50% - 1px),
      transparent calc(50% - 1px));
          mask:radial-gradient(circle at 50% 50%,
      transparent calc(50% - var(--af-o2) * .53),
      #000 calc(50% - var(--af-o2) * .53),
      #000 calc(50% - var(--af-o2) * .22),
      transparent calc(50% - var(--af-o2) * .22),
      transparent calc(50% - var(--af-o2) * .16),
      #000 calc(50% - var(--af-o2) * .16),
      #000 calc(50% - 1px),
      transparent calc(50% - 1px));
}
/* v5 星辰深渊（2026-10-28 新增专属）：深靛蓝星海 —— 三层密度（星云 / 中星 / 超细星尘）
   + 缓慢反向流转 + 呼吸 ⇒ 冷色、安静，和赤焰的躁动、紫雷的暴烈形成第三种气质。 */
.avf-v5{
  --af-ring:
    repeating-conic-gradient(from 0deg,rgba(255,255,255,.9) 0 .5deg,transparent .5deg 8deg),
    conic-gradient(from 0deg,#0b1220,#1e3a8a 20%,#4c1d95 42%,#0f766e 60%,#1e3a8a 80%,#0b1220);
  --af-fx:
    conic-gradient(from 30deg,
      #93c5fd 0 1.2deg, transparent 1.2deg 9deg,
      #c4b5fd 9deg 10.4deg, transparent 10.4deg 22deg),
    repeating-conic-gradient(from 0deg,rgba(255,255,255,.55) 0 .35deg,transparent .35deg 3.4deg),
    repeating-conic-gradient(from 0deg,rgba(147,197,253,.35) 0 1.4deg,transparent 1.4deg 6deg);
  --af-o2:13px;
  --af-glow:0 0 10px rgba(147,197,253,.7),0 0 24px rgba(76,29,149,.45);
}
.avf-v5::before{animation:avf-spin 9s linear infinite,avf-breathe 3.2s ease-in-out infinite;}
.avf-v5::after{animation:avf-spin-rev 4.5s linear infinite;}

/* v6 紫雷天罚（2026-10-28 第六版·去花纹改条纹）：去掉两层电弧细丝（0.25°/0.15° 太密），
   改成**放射条纹**：14° 一周期 = 白核 2° + 亮紫 3° + 透明 9°。
   白核条 + 紫条并排 ⇒ 仍保留"电"的白炽边缘感，但整体是干净的条带。 */
.avf-v6{
  --af-o1:4px;
  --af-o2:17px;
  --af-ring:
    conic-gradient(from 0deg,#0b0416,#7c3aed 14%,#1e1b4b 28%,#8b5cf6 42%,
      #4c1d95 56%,#a78bfa 70%,#2e1065 84%,#0b0416);
  --af-fx:
    repeating-conic-gradient(from 0deg,
      rgba(255,255,255,.95) 0 2deg, rgba(167,139,250,.85) 2deg 5deg, transparent 5deg 14deg),
    radial-gradient(circle closest-side at 50% 50%,
      transparent 0 52%, rgba(139,92,246,.55) 78%, rgba(233,213,255,.85) 100%);
  --af-glow:0 0 11px rgba(196,181,253,.9),0 0 26px rgba(124,58,237,.6);
}
.avf-v6::before{animation:avf-spin 14s linear infinite,avf-flash 2.4s ease-in-out infinite;}
.avf-v6::after{
  animation:avf-spin-rev 9s linear infinite,avf-flash 3.1s ease-in-out infinite;
  -webkit-mask:radial-gradient(circle at 50% 50%,
      transparent calc(50% - var(--af-o2) * .53),
      #000 calc(50% - var(--af-o2) * .53),
      #000 calc(50% - var(--af-o2) * .22),
      transparent calc(50% - var(--af-o2) * .22),
      transparent calc(50% - var(--af-o2) * .16),
      #000 calc(50% - var(--af-o2) * .16),
      #000 calc(50% - 1px),
      transparent calc(50% - 1px));
          mask:radial-gradient(circle at 50% 50%,
      transparent calc(50% - var(--af-o2) * .53),
      #000 calc(50% - var(--af-o2) * .53),
      #000 calc(50% - var(--af-o2) * .22),
      transparent calc(50% - var(--af-o2) * .22),
      transparent calc(50% - var(--af-o2) * .16),
      #000 calc(50% - var(--af-o2) * .16),
      #000 calc(50% - 1px),
      transparent calc(50% - 1px));
}
@media (prefers-reduced-motion: reduce){
  .avf::before,.avf::after{animation:none !important;}
}
