.lvl-badge{--lvl-size:2.25rem;--lvl-ring:#d08a4c;--lvl-top:#6b3d1c;--lvl-bottom:#2a170a;--lvl-fg:#ffe0bd;width:var(--lvl-size);height:calc(var(--lvl-size) * 1.08);clip-path:polygon(50% 0,96% 24%,96% 76%,50% 100%,4% 76%,4% 24%);background:var(--lvl-ring);flex-shrink:0;display:inline-flex;position:relative}.lvl-badge>.lvl-badge-in{clip-path:inherit;background:linear-gradient(170deg, var(--lvl-top), var(--lvl-bottom));color:var(--lvl-fg);font-variant-numeric:tabular-nums;letter-spacing:-.02em;font-weight:900;line-height:1;font-size:calc(var(--lvl-size) * var(--lvl-digits,.44));justify-content:center;align-items:center;display:flex;position:absolute;inset:7%}.lvl-badge.lvl-silver{--lvl-ring:#d7dee8;--lvl-top:#4b5563;--lvl-bottom:#1f2937;--lvl-fg:#f8fafc}.lvl-badge.lvl-gold{--lvl-ring:#fcd34d;--lvl-top:#7c5a10;--lvl-bottom:#2e1f04;--lvl-fg:#fff4c7}.lvl-badge.lvl-platinum{--lvl-ring:#a5f3fc;--lvl-top:#155e75;--lvl-bottom:#082f3a;--lvl-fg:#ecfeff}.lvl-badge.lvl-cosmic{--lvl-ring:#f0abfc;--lvl-top:#5b21b6;--lvl-bottom:#1e1b4b;--lvl-fg:#fdf4ff}@keyframes lvl-up-pop{0%{transform:scale(.6)rotate(-12deg)}55%{transform:scale(1.25)rotate(6deg)}to{transform:scale(1)rotate(0)}}.lvl-up-pop{animation:.7s cubic-bezier(.2,1.4,.4,1) lvl-up-pop}.medal{--medal-size:3.5rem;--medal-rim-a:#f3b27a;--medal-rim-b:#8a4b1f;--medal-core-a:#4a2a14;--medal-core-b:#1d1008;--medal-glow:#f0965073;width:var(--medal-size);height:var(--medal-size);border:calc(var(--medal-size) * .07) solid transparent;background:radial-gradient(circle at 35% 30%, var(--medal-core-a), var(--medal-core-b)) padding-box, conic-gradient(from 200deg, var(--medal-rim-a), var(--medal-rim-b), var(--medal-rim-a), var(--medal-rim-b), var(--medal-rim-a)) border-box;box-shadow:0 0 calc(var(--medal-size) * .25) var(--medal-glow);border-radius:9999px;flex-shrink:0;justify-content:center;align-items:center;display:inline-flex;position:relative}.medal>.medal-icon{font-size:calc(var(--medal-size) * .46);filter:drop-shadow(0 1px 1px #0009);line-height:1}.medal:after{content:"";border-radius:inherit;pointer-events:none;background:linear-gradient(115deg,#0000 38%,#ffffff47 50%,#0000 62%) 120% 0/250% 100%;position:absolute;inset:0}.medal.medal-shine:after{animation:2.6s ease-in-out infinite medal-shine}@keyframes medal-shine{0%,55%{background-position:120% 0}to{background-position:-120% 0}}.medal.medal-t2{--medal-rim-a:#f1f5f9;--medal-rim-b:#7b8594;--medal-core-a:#3a4250;--medal-core-b:#141922;--medal-glow:#cbd5e166}.medal.medal-t3{--medal-rim-a:#fde68a;--medal-rim-b:#b7791f;--medal-core-a:#5b3f08;--medal-core-b:#1f1503;--medal-glow:#fcd34d8c}.medal.medal-locked{filter:grayscale()brightness(.55);box-shadow:none}.medal.medal-locked:after{display:none}.medal-pip{background:#3f3f46;border:1px solid #ffffff26;border-radius:9999px;width:.55rem;height:.55rem}.medal-pip.medal-pip-on.medal-pip-1{background:#d08a4c;border-color:#f3b27a}.medal-pip.medal-pip-on.medal-pip-2{background:#cbd5e1;border-color:#f1f5f9}.medal-pip.medal-pip-on.medal-pip-3{background:#fbbf24;border-color:#fde68a}@keyframes achv-card-in{0%{opacity:0;transform:translateY(18px)scale(.86)}60%{opacity:1;transform:translateY(-4px)scale(1.03)}to{opacity:1;transform:none}}.achv-card-in{animation:.52s cubic-bezier(.2,.9,.3,1.1) both achv-card-in}@keyframes achv-medal-in{0%{opacity:0;transform:perspective(400px)rotateY(-540deg)scale(.3)}70%{opacity:1;transform:perspective(400px)rotateY(20deg)scale(1.08)}to{opacity:1;transform:perspective(400px)rotateY(0)scale(1)}}.achv-medal-in{animation:1.1s cubic-bezier(.2,.8,.3,1) .12s both achv-medal-in}.achv-stage{justify-content:center;align-items:center;width:11rem;height:11rem;display:flex;position:relative}.achv-rays{background:repeating-conic-gradient(from 0deg, var(--achv-ray,#fcd34d38) 0deg 9deg, transparent 9deg 24deg);border-radius:9999px;animation:14s linear infinite achv-rays;position:absolute;inset:-12%;-webkit-mask-image:radial-gradient(circle,#000 25%,#0000 70%);mask-image:radial-gradient(circle,#000 25%,#0000 70%)}@keyframes achv-rays{to{transform:rotate(360deg)}}.achv-glow{background:radial-gradient(circle, var(--achv-ray-strong,#fcd34d73), transparent 70%);border-radius:9999px;animation:2.4s ease-in-out infinite achv-glow;position:absolute;inset:18%}@keyframes achv-glow{50%{opacity:.7;transform:scale(1.12)}}.achv-tier-1{--achv-ray:#f0965033;--achv-ray-strong:#f096506b}.achv-tier-2{--achv-ray:#e2e8f033;--achv-ray-strong:#e2e8f061}.achv-tier-3{--achv-ray:#fcd34d3d;--achv-ray-strong:#fcd34d80}.achv-spark{color:#fff7d6;opacity:0;width:.9rem;height:.9rem;animation:1.8s ease-in-out infinite achv-spark;position:absolute}.achv-spark:before,.achv-spark:after{content:"";background:currentColor;border-radius:1px;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.achv-spark:before{width:100%;height:2px}.achv-spark:after{width:2px;height:100%}@keyframes achv-spark{0%,to{opacity:0;transform:scale(.3)rotate(0)}45%{opacity:1;transform:scale(1)rotate(45deg)}}@keyframes achv-claimed{0%{transform:scale(1)}40%{filter:brightness(1.5);transform:scale(1.18)}to{transform:scale(1)}}.achv-claimed{animation:.65s ease-out achv-claimed}@media (prefers-reduced-motion:reduce){.achv-rays,.achv-glow,.achv-spark,.medal.medal-shine:after{animation:none}.achv-spark{display:none}.achv-card-in,.achv-medal-in,.achv-claimed,.lvl-up-pop{animation:none}}[data-theme^=hc-] .lvl-badge{background:#000}[data-theme^=hc-] .lvl-badge>.lvl-badge-in{color:#000;background:#fff}[data-theme^=hc-] .medal{box-shadow:none;filter:none;background:#fff;border-color:#000}[data-theme^=hc-] .medal:after{display:none}[data-theme^=hc-] .medal>.medal-icon{filter:none;color:#000}[data-theme^=hc-] .medal.medal-t2{outline-offset:2px;outline:2px solid #000}[data-theme^=hc-] .medal.medal-t3{outline-offset:2px;outline:2px double #000;box-shadow:0 0 0 7px #fff,0 0 0 9px #000}[data-theme^=hc-] .medal.medal-locked{opacity:1;border-style:dashed}[data-theme^=hc-] .medal-pip{background:#fff;border-color:#000}[data-theme^=hc-] .medal-pip.medal-pip-on{background:#000;border-color:#000}[data-theme^=hc-] .achv-rays,[data-theme^=hc-] .achv-glow,[data-theme^=hc-] .achv-spark{display:none}[data-theme^=hc-] .achv-claimed{filter:none}
