/* =====================================================================
   GameFrame player cards — all nine designs.
   Fonts: Manrope (500–800) and JetBrains Mono (500, 700). Load them once;
   on this site they are self-hosted via fonts/fonts.css. No other assets: every texture, gear, laurel, sparkle,
   facet and gradient is inline SVG/CSS inside card-templates.ts.
   Everything is namespaced gfc- so it won't collide with your app's CSS.
   ===================================================================== */

/* ---------- wrapper (sizing) ----------
   The artwork is drawn on a 520×720 stage with the card itself at 420×600
   (offset 50,60). .gfc-wrap crops to the card and scales it via --gfc-s. */
.gfc-wrap{position:relative;width:calc(420px*var(--gfc-s,1));height:calc(600px*var(--gfc-s,1));flex:none}
.gfc-wrap.gfc-with-stage{width:calc(520px*var(--gfc-s,1));height:calc(720px*var(--gfc-s,1))}
.gfc-scale{position:absolute;left:calc(-50px*var(--gfc-s,1));top:calc(-60px*var(--gfc-s,1));width:520px;height:720px;transform:scale(var(--gfc-s,1));transform-origin:0 0}
.gfc-with-stage .gfc-scale{left:0;top:0}
.gfc-wrap:not(.gfc-with-stage) .gfc{overflow:visible}
/* stage art (rays, risers, embers behind the card) — only with stage on */
.gfc-wrap:not(.gfc-with-stage) .gfc > :not(.gfc-fc){display:none}
.gfc-with-stage .gfc{--gfc-ground:var(--gfc-ground-art)}
.gfc-with-stage .gfc > :not(.gfc-fc){-webkit-mask:radial-gradient(closest-side,#000 60%,transparent);mask:radial-gradient(closest-side,#000 60%,transparent)}

/* ---------- dynamic content ---------- */
.gfc-photo{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;border-radius:50%;display:block}
.gfc-hex .gfc-photo{border-radius:0}
.gfc-initials{position:relative}
.gfc .gfc-name b{max-width:330px;overflow:hidden;text-overflow:ellipsis}
.gfc .gfc-meta{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;padding:0 30px}
.gfc .gfc-av .gfc-av-open{color:#f4c860!important}
.gfc .gfc-av .gfc-av-contracted{color:#ff8a8a!important}
.gfc .gfc-foot a{cursor:pointer}
.gfc .gfc-foot a:not([href]){cursor:default}
.gfc .gfc-foot a:focus-visible{outline:2px solid currentColor;outline-offset:3px;border-radius:3px}

/* ---------- shared effects (holo foil, sweeps, sparkles, spins, keyframes) ---------- */
.gfc-h-holo{position:absolute;inset:-25%;z-index:3;pointer-events:none;mix-blend-mode:color-dodge;background-size:200% 200%;animation:gfc-hHolo 8s ease-in-out infinite alternate}
.gfc-h-diff{position:absolute;inset:0;z-index:3;pointer-events:none;mix-blend-mode:overlay;background:repeating-linear-gradient(115deg,transparent 0 6px,rgba(255,170,220,.25) 6px 7px,rgba(160,255,225,.25) 7px 8px,rgba(150,200,255,.25) 8px 9px,transparent 9px 15px)}
.gfc-h-sweep{position:absolute;top:-10%;bottom:-10%;left:-70%;width:50%;z-index:6;pointer-events:none;mix-blend-mode:overlay;background:linear-gradient(100deg,transparent 10%,rgba(255,255,255,.6) 44%,rgba(220,255,245,.45) 52%,transparent 85%);animation:gfc-hSweep 6s ease-in-out infinite}
.gfc-tw{animation:gfc-hTw 3.4s ease-in-out infinite}
.gfc-rimh{animation:gfc-hRim 5s ease-in-out infinite alternate}
.gfc-halo{transform-origin:260px 360px;animation:gfc-hSpin 40s linear infinite}
.gfc-rise{position:absolute;inset:0;pointer-events:none}
.gfc-rise i{position:absolute;bottom:-10px;border-radius:50%;background:#ffe9a8;box-shadow:0 0 8px #ffcf5a;animation:gfc-hRise linear infinite}
.gfc-runl{animation:gfc-hRun 5s linear infinite}
.gfc-hexdrift{animation:gfc-hHex 30s linear infinite}
.gfc-spin{animation:gfc-hSpin 30s linear infinite}
@keyframes gfc-hHolo{0%{background-position:0% 0%}100%{background-position:100% 100%}}
@keyframes gfc-hSweep{0%{transform:translateX(0) skewX(-14deg)}50%,100%{transform:translateX(380%) skewX(-14deg)}}
@keyframes gfc-hTw{0%,100%{opacity:.1;transform:scale(.4)}50%{opacity:1;transform:scale(1)}}
@keyframes gfc-hRim{0%{opacity:.15}100%{opacity:.8}}
@keyframes gfc-hSpin{to{transform:rotate(360deg)}}
@keyframes gfc-hRise{0%{transform:translateY(0);opacity:0}15%{opacity:1}100%{transform:translateY(-720px);opacity:0}}
.gfc-fallw{position:absolute;inset:0;pointer-events:none;z-index:3}
.gfc-fallw i{position:absolute;top:-10px;border-radius:50%;opacity:.85;box-shadow:0 0 6px #fff;animation:gfc-hFall linear infinite}
@keyframes gfc-hFall{0%{transform:translate(0,0);opacity:0}10%{opacity:.9}100%{transform:translate(30px,620px);opacity:0}}
@keyframes gfc-hFlow{to{transform:translateX(440px)}}
@keyframes gfc-hRun{to{stroke-dashoffset:-1000}}
@keyframes gfc-hPulse{0%,100%{opacity:.55}50%{opacity:1}}
@keyframes gfc-hDrift{0%{transform:translate(0,0)}100%{transform:translate(120px,80px)}}
@keyframes gfc-hStreak{to{background-position:300px 0}}
@keyframes gfc-hHex{to{transform:translateY(44px)}}
@media (prefers-reduced-motion:reduce){.gfc-h-holo,.gfc-h-sweep,.gfc-tw,.gfc-rimh,.gfc-halo,.gfc-rise i,.gfc-runl,.gfc-hexdrift,.gfc-spin,.gfc-fallw i{animation:none}
}
.gfc-drift{animation:gfc-hCloud 60s linear infinite}
@keyframes gfc-hSilk{0%{transform:translate(0,0)}100%{transform:translate(-30px,-24px)}}
@keyframes gfc-hCloud{to{transform:translateX(-420px)}}
@media (prefers-reduced-motion:reduce){.gfc-drift{animation:none}
}
.gfc-shimmer{animation:gfc-hShim 6s ease-in-out infinite}
@keyframes gfc-hShim{0%{background-position:100% 0}100%{background-position:-50% 0}}
@media (prefers-reduced-motion:reduce){.gfc-shimmer{animation:none}
}
.gfc-gspin{animation:gfc-hSpin 20s linear infinite;transform-box:view-box}
.gfc-gspin.gfc-rev{animation-direction:reverse}
@keyframes gfc-hDust{0%{transform:translateX(0);opacity:0}15%{opacity:.9}100%{transform:translateX(440px) translateY(-30px);opacity:0}}
@media (prefers-reduced-motion:reduce){.gfc-gspin{animation:none}
}
.gfc-gemflash{animation:gfc-hSpin 14s linear infinite}
@keyframes gfc-hLeaf{0%{transform:translateY(0) rotate(0)}100%{transform:translateY(-10px) rotate(20deg)}}
@media (prefers-reduced-motion:reduce){.gfc-gspin,.gfc-gemflash{animation:none}
}
@keyframes gfc-hAur{0%{transform:skewX(-6deg) translateX(-14px);opacity:.75}100%{transform:skewX(6deg) translateX(14px);opacity:1}}
.gfc-sway{transform-origin:50% 0;animation:gfc-hSway 7s ease-in-out infinite alternate}
@keyframes gfc-hSway{0%{transform:rotate(-1deg)}100%{transform:rotate(1deg)}}
@keyframes gfc-hFly{0%{transform:translate(0,0);opacity:.2}50%{opacity:1}100%{transform:translate(24px,-30px);opacity:.3}}
@keyframes gfc-hZap{0%{opacity:1}5%{opacity:.25}8%{opacity:1}40%{opacity:.9}42%{opacity:.1}46%{opacity:1}70%{opacity:.8}72%{opacity:.3}75%{opacity:1}100%{opacity:1}}
@keyframes gfc-hFlick{0%{transform:scaleY(.82) skewX(-3deg)}100%{transform:scaleY(1.08) skewX(3deg)}}
@keyframes gfc-hRain{0%{transform:translateY(-720px)}100%{transform:translateY(620px)}}
.gfc-nebspin{animation:gfc-hSpin 90s linear infinite}
@keyframes gfc-hRip{0%{transform:scale(1);opacity:.8}100%{transform:scale(3.4);opacity:0}}
@keyframes gfc-hHx{0%,100%{stroke-opacity:.15;fill-opacity:.3}50%{stroke-opacity:.7;fill-opacity:1}}
@keyframes gfc-hScan{0%{top:-60px}100%{top:600px}}
@media (prefers-reduced-motion:reduce){.gfc-gspin,.gfc-gemflash,.gfc-sway,.gfc-nebspin{animation:none}
}
@keyframes gfc-hGrid{to{background-position:0 46px}}
.gfc-tickspin{animation:gfc-hSpin 12s linear infinite}
@keyframes gfc-hLock{0%,100%{transform:scale(1.12);opacity:.5}50%{transform:scale(1);opacity:1}}
@keyframes gfc-hGl{0%{transform:translateX(0);opacity:0}10%{transform:translateX(-24px);opacity:1}14%{transform:translateX(30px)}18%{opacity:0}55%{transform:translateX(12px);opacity:.8}58%{opacity:0}100%{opacity:0}}
@keyframes gfc-hGt{0%,100%{transform:translateX(0)}12%{transform:translateX(-6px)}14%{transform:translateX(5px)}16%{transform:translateX(0)}}
@media (prefers-reduced-motion:reduce){.gfc-gspin,.gfc-gemflash,.gfc-sway,.gfc-nebspin,.gfc-tickspin{animation:none}
}
@keyframes gfc-hRainw{to{transform:translate(-9px,34px)}}
@keyframes gfc-hFlyb{0%{transform:translate(0,0) rotate(-6deg)}100%{transform:translate(14px,-18px) rotate(6deg)}}
@keyframes gfc-hFlap{0%{transform:scaleX(1)}100%{transform:scaleX(.35)}}
@keyframes gfc-hFlapR{0%{transform:scale(-1,1)}100%{transform:scale(-.35,1)}}
@keyframes gfc-hLamp{0%{transform:translateY(0)}100%{transform:translateY(-420px)}}
@keyframes gfc-hWing{0%{transform:rotate(6deg)}100%{transform:rotate(-8deg)}}
@keyframes gfc-hWingR{0%{transform:rotate(-6deg)}100%{transform:rotate(8deg)}}
@keyframes gfc-hStreakA{0%,100%{opacity:.2}50%{opacity:1}}
@keyframes gfc-hShard{0%{transform:translate(0,0) rotate(0)}100%{transform:translate(4px,-6px) rotate(18deg)}}
@keyframes gfc-hFlick{0%{transform:scale(.86)}100%{transform:scale(1.08)}}
.gfc-tickspin.gfc-rev{animation-direction:reverse}
@media (prefers-reduced-motion:reduce){.gfc-tickspin,.gfc-gemflash{animation:none}
}
@keyframes gfc-hChase{0%,100%{opacity:.25}10%{opacity:1}30%{opacity:.25}}
.gfc-haze{animation:gfc-hDrift 14s ease-in-out infinite alternate}
@keyframes gfc-hShaft{0%{opacity:.35}100%{opacity:1}}
@keyframes gfc-hMt{0%,100%{fill:#e8b84b}50%{fill:#fffaf0}}
@media (prefers-reduced-motion:reduce){.gfc-haze{animation:none}
}
@keyframes gfc-hTrace{0%{stroke-dashoffset:100}100%{stroke-dashoffset:0}}
@keyframes gfc-hHeat{0%{transform:scale(.85)}100%{transform:scale(1.15)}}
@keyframes gfc-hPh{0%,100%{opacity:.45}50%{opacity:1}}
.gfc-aurw{animation:gfc-hAurw 9s ease-in-out infinite alternate}
@keyframes gfc-hAurw{0%{transform:translateX(-14px) skewX(-4deg)}100%{transform:translateX(14px) skewX(4deg)}}
@keyframes gfc-hVt{0%{stroke-dashoffset:1000}100%{stroke-dashoffset:-200}}
@keyframes gfc-hMane{0%{transform:rotate(-2.5deg) scale(.99)}100%{transform:rotate(2.5deg) scale(1.02)}}
@keyframes gfc-hRoar{0%{transform:scale(.8);opacity:.7}100%{transform:scale(2.2);opacity:0}}
.gfc-fflash{opacity:0;animation:gfc-hFF 4s ease-in-out infinite}
@keyframes gfc-hFF{0%,70%,100%{opacity:0}80%{opacity:.85}}
@keyframes gfc-hDF{0%{transform:translateY(-120px) rotate(var(--r0))}100%{transform:translateY(680px) rotate(var(--r1))}}
@keyframes gfc-hDrip{0%{transform:scaleY(.55)}100%{transform:scaleY(1.1)}}
@keyframes gfc-hCrn{0%{transform:translateY(-6px) rotate(-3deg)}100%{transform:translateY(6px) rotate(3deg)}}
@keyframes gfc-hJel{0%,100%{transform:translateY(0) scaleY(1)}40%{transform:translateY(-16px) scaleY(.9)}60%{transform:translateY(-22px) scaleY(1.04)}}
@keyframes gfc-hTent{0%{transform:skewX(-8deg)}100%{transform:skewX(8deg)}}
@media (prefers-reduced-motion:reduce){.gfc-fflash{animation:none}
.gfc-fflash{opacity:.3}
}
@media (prefers-reduced-motion:reduce){.gfc-aurw{animation:none}
}
@media (prefers-reduced-motion:reduce){.gfc-h-holo,.gfc-h-sweep,.gfc-tw,.gfc-rimh,.gfc-halo,.gfc-rise i,.gfc-runl,.gfc-hexdrift,.gfc-spin{animation:none}
}

/* ---------- per-design layout + colours ---------- */
/* ---------- Base ---------- */
.gfc-base{position:relative;width:520px;height:720px;overflow:hidden;background:var(--gfc-ground,transparent);--gfc-ground-art:radial-gradient(300px 380px at 50% 50%,rgba(170,176,180,.10),transparent 70%),#030303;font-family:Manrope,system-ui,sans-serif}
.gfc-base .gfc-fc{position:absolute;left:50px;top:60px;width:420px;height:600px;filter:drop-shadow(0 30px 44px rgba(0,0,0,.6))}
.gfc-base .gfc-fi{position:absolute;inset:0;clip-path:path('M62,24 C118,24 160,14 210,0 C260,14 302,24 358,24 L420,64 L420,468 C420,518 384,544 334,560 L232,592 Q210,600 188,592 L86,560 C36,544 0,518 0,468 L0,64 Z');background:#040404;overflow:hidden;color:#f2f3f4}
.gfc-base .gfc-plate{position:absolute;left:0;right:0;top:290px;bottom:0;background:linear-gradient(180deg,transparent,rgba(0,0,0,.35) 22%,rgba(0,0,0,.5));z-index:2}
.gfc-base .gfc-rate{position:absolute;left:46px;top:58px;display:flex;flex-direction:column;align-items:center;width:84px;z-index:5}
.gfc-base .gfc-rate .gfc-n{font-weight:800;font-size:68px;line-height:.84;letter-spacing:-.06em;}
.gfc-base .gfc-rate .gfc-p{font-weight:800;font-size:22px;letter-spacing:.04em;margin-top:6px;color:#c6f03a}
.gfc-base .gfc-ln{display:block;width:44px;height:1.5px;background:rgba(198,240,58,.45);margin:10px 0 8px}
.gfc-base .gfc-mi{display:flex;flex-direction:column;align-items:center;gap:5px;font-family:'JetBrains Mono',ui-monospace,monospace;font-weight:700;font-size:12px;color:#8e9196}
.gfc-base .gfc-club{width:34px;height:38px;clip-path:polygon(0 0,100% 0,100% 62%,50% 100%,0 62%);background:linear-gradient(180deg,#e4ff8a,#9cc21e);color:#0b0b0c;display:flex;align-items:center;justify-content:center;font-weight:800;font-size:12px;padding-bottom:5px;box-sizing:border-box}
.gfc-base .gfc-badge{position:absolute;left:50%;top:36px;transform:translateX(-50%);z-index:5;white-space:nowrap;font-family:'JetBrains Mono',ui-monospace,monospace;font-weight:700;font-size:9.5px;letter-spacing:.22em;padding:4px 9px 4px 11px;border-radius:3px;}
.gfc-base .gfc-por{position:absolute;left:150px;top:70px;width:226px;height:226px;z-index:4}
.gfc-base .gfc-name{position:absolute;left:30px;right:30px;top:316px;display:flex;align-items:center;justify-content:center;gap:12px;z-index:5}
.gfc-base .gfc-name b{font-weight:800;font-size:29px;letter-spacing:.04em;white-space:nowrap;}
.gfc-base .gfc-name i{flex:1;height:1.5px;background:rgba(198,240,58,.45)}
.gfc-base .gfc-meta{position:absolute;left:0;right:0;top:360px;text-align:center;font-family:'JetBrains Mono',ui-monospace,monospace;font-size:11px;color:#8e9196;z-index:5}
.gfc-base .gfc-av{position:absolute;left:0;right:0;top:380px;text-align:center;z-index:5}
.gfc-base .gfc-av span{display:inline-flex;align-items:center;gap:6px;font-size:12px;font-weight:800;color:#7fe3a6}
.gfc-base .gfc-av i{width:7px;height:7px;border-radius:50%;background:currentColor;box-shadow:0 0 8px currentColor}
.gfc-base .gfc-stats{position:absolute;left:58px;right:58px;top:412px;display:flex;gap:18px;z-index:5}
.gfc-base .gfc-col{flex:1;display:flex;flex-direction:column;gap:6px}
.gfc-base .gfc-dv{width:1.5px;background:rgba(198,240,58,.45)}
.gfc-base .gfc-st{display:flex;align-items:baseline;gap:10px;justify-content:center}
.gfc-base .gfc-st b{font-weight:800;font-size:27px;letter-spacing:-.03em;min-width:40px;text-align:right;font-variant-numeric:tabular-nums;}
.gfc-base .gfc-st span{font-weight:700;font-size:15px;letter-spacing:.06em;color:#8e9196;min-width:40px}
.gfc-base .gfc-foot{position:absolute;left:0;right:0;top:522px;display:flex;flex-direction:column;align-items:center;gap:6px;color:#f2f3f4;z-index:5}
.gfc-base .gfc-foot a{display:inline-flex;align-items:center;gap:5px;font-weight:800;font-size:11px;color:#c6f03a;text-decoration:none}
.gfc-base .gfc-em{position:absolute;left:185px;top:-22px;width:50px;height:50px;z-index:8;display:flex;align-items:center;justify-content:center}
/* ---------- Challenge Winner — Sakura ---------- */
.gfc-challenge{position:relative;width:520px;height:720px;overflow:hidden;background:var(--gfc-ground,transparent);--gfc-ground-art:radial-gradient(360px 440px at 50% 50%,rgba(255,95,168,.3),transparent 70%),#07020a;font-family:Manrope,system-ui,sans-serif}
.gfc-challenge .gfc-fc{position:absolute;left:50px;top:60px;width:420px;height:600px;filter:drop-shadow(0 0 28px rgba(255,95,168,.45)) drop-shadow(0 30px 44px rgba(0,0,0,.6))}
.gfc-challenge .gfc-fi{position:absolute;inset:0;clip-path:path('M62,24 C118,24 160,14 210,0 C260,14 302,24 358,24 L420,64 L420,468 C420,518 384,544 334,560 L232,592 Q210,600 188,592 L86,560 C36,544 0,518 0,468 L0,64 Z');background:radial-gradient(260px 240px at 62.6% 30.5%,#ffe6f0,transparent 72%),linear-gradient(170deg,#e2588f,#c23a76 50%,#8a1e4e);overflow:hidden;color:#ffffff}
.gfc-challenge .gfc-plate{position:absolute;left:0;right:0;top:290px;bottom:0;background:linear-gradient(180deg,transparent,rgba(70,6,38,.5) 18%,rgba(60,4,32,.68));z-index:2}
.gfc-challenge .gfc-rate{position:absolute;left:46px;top:58px;display:flex;flex-direction:column;align-items:center;width:84px;z-index:5}
.gfc-challenge .gfc-rate .gfc-n{font-weight:800;font-size:68px;line-height:.84;letter-spacing:-.06em;background:linear-gradient(180deg,#ffffff,#fff0f8 55%,#ffd1e8);-webkit-background-clip:text;background-clip:text;color:transparent;filter:drop-shadow(0 2px 6px rgba(90,0,45,.65))}
.gfc-challenge .gfc-rate .gfc-p{font-weight:800;font-size:22px;letter-spacing:.04em;margin-top:6px;color:#ffb3d9}
.gfc-challenge .gfc-ln{display:block;width:44px;height:1.5px;background:linear-gradient(90deg,transparent,#ff5fa8,transparent);margin:10px 0 8px}
.gfc-challenge .gfc-mi{display:flex;flex-direction:column;align-items:center;gap:5px;font-family:'JetBrains Mono',ui-monospace,monospace;font-weight:700;font-size:12px;color:#ffd6ea}
.gfc-challenge .gfc-club{width:34px;height:38px;clip-path:polygon(0 0,100% 0,100% 62%,50% 100%,0 62%);background:linear-gradient(180deg,#ffe0f0,#d6247a);color:#3a0322;display:flex;align-items:center;justify-content:center;font-weight:800;font-size:12px;padding-bottom:5px;box-sizing:border-box}
.gfc-challenge .gfc-badge{position:absolute;left:50%;top:36px;transform:translateX(-50%);z-index:5;white-space:nowrap;font-family:'JetBrains Mono',ui-monospace,monospace;font-weight:700;font-size:9.5px;letter-spacing:.22em;padding:4px 9px 4px 11px;border-radius:3px;color:#3a0322;background:linear-gradient(90deg,#ff8cc6,#ffe6f3,#ff8cc6);box-shadow:0 0 14px rgba(255,95,168,.8)}
.gfc-challenge .gfc-por{position:absolute;left:150px;top:70px;width:226px;height:226px;z-index:4}
.gfc-challenge .gfc-name{position:absolute;left:30px;right:30px;top:316px;display:flex;align-items:center;justify-content:center;gap:12px;z-index:5}
.gfc-challenge .gfc-name b{font-weight:800;font-size:29px;letter-spacing:.04em;white-space:nowrap;background:linear-gradient(180deg,#ffffff,#fff0f8 55%,#ffb3d9);-webkit-background-clip:text;background-clip:text;color:transparent}
.gfc-challenge .gfc-name i{flex:1;height:1.5px;background:linear-gradient(90deg,transparent,#ff5fa8,transparent)}
.gfc-challenge .gfc-meta{position:absolute;left:0;right:0;top:360px;text-align:center;font-family:'JetBrains Mono',ui-monospace,monospace;font-size:11px;color:#ffd6ea;z-index:5}
.gfc-challenge .gfc-av{position:absolute;left:0;right:0;top:380px;text-align:center;z-index:5}
.gfc-challenge .gfc-av span{display:inline-flex;align-items:center;gap:6px;font-size:12px;font-weight:800;color:#7fe3a6}
.gfc-challenge .gfc-av i{width:7px;height:7px;border-radius:50%;background:currentColor;box-shadow:0 0 8px currentColor}
.gfc-challenge .gfc-stats{position:absolute;left:58px;right:58px;top:412px;display:flex;gap:18px;z-index:5}
.gfc-challenge .gfc-col{flex:1;display:flex;flex-direction:column;gap:6px}
.gfc-challenge .gfc-dv{width:1.5px;background:linear-gradient(90deg,transparent,#ff5fa8,transparent)}
.gfc-challenge .gfc-st{display:flex;align-items:baseline;gap:10px;justify-content:center}
.gfc-challenge .gfc-st b{font-weight:800;font-size:27px;letter-spacing:-.03em;min-width:40px;text-align:right;font-variant-numeric:tabular-nums;}
.gfc-challenge .gfc-st span{font-weight:700;font-size:15px;letter-spacing:.06em;color:#ffd6ea;min-width:40px}
.gfc-challenge .gfc-foot{position:absolute;left:0;right:0;top:522px;display:flex;flex-direction:column;align-items:center;gap:6px;color:#ffffff;z-index:5}
.gfc-challenge .gfc-foot a{display:inline-flex;align-items:center;gap:5px;font-weight:800;font-size:11px;color:#ffd1e8;text-decoration:none}
.gfc-challenge .gfc-em{position:absolute;left:185px;top:-22px;width:50px;height:50px;z-index:8;display:flex;align-items:center;justify-content:center}
/* ---------- 3rd Place — Clockwork ---------- */
.gfc-third{position:relative;width:520px;height:720px;overflow:hidden;background:var(--gfc-ground,transparent);--gfc-ground-art:radial-gradient(340px 420px at 50% 50%,rgba(205,138,82,.2),transparent 70%),#060403;font-family:Manrope,system-ui,sans-serif}
.gfc-third .gfc-fc{position:absolute;left:50px;top:60px;width:420px;height:600px;filter:drop-shadow(0 30px 44px rgba(0,0,0,.6))}
.gfc-third .gfc-fi{position:absolute;inset:0;clip-path:path('M62,24 C118,24 160,14 210,0 C260,14 302,24 358,24 L420,64 L420,468 C420,518 384,544 334,560 L232,592 Q210,600 188,592 L86,560 C36,544 0,518 0,468 L0,64 Z');background:linear-gradient(170deg,#3a2210,#1c0f06 55%,#2a170a);overflow:hidden;color:#ffffff}
.gfc-third .gfc-plate{position:absolute;left:0;right:0;top:290px;bottom:0;background:linear-gradient(180deg,transparent,rgba(14,6,2,.6) 20%,rgba(14,6,2,.75));z-index:2}
.gfc-third .gfc-rate{position:absolute;left:46px;top:58px;display:flex;flex-direction:column;align-items:center;width:84px;z-index:5}
.gfc-third .gfc-rate .gfc-n{font-weight:800;font-size:68px;line-height:.84;letter-spacing:-.06em;background:linear-gradient(180deg,#ffffff,#f2cba0 55%,#cd8a52);-webkit-background-clip:text;background-clip:text;color:transparent}
.gfc-third .gfc-rate .gfc-p{font-weight:800;font-size:22px;letter-spacing:.04em;margin-top:6px;color:#f2cba0}
.gfc-third .gfc-ln{display:block;width:44px;height:1.5px;background:linear-gradient(90deg,transparent,#cd8a52,transparent);margin:10px 0 8px}
.gfc-third .gfc-mi{display:flex;flex-direction:column;align-items:center;gap:5px;font-family:'JetBrains Mono',ui-monospace,monospace;font-weight:700;font-size:12px;color:#f0d2b4}
.gfc-third .gfc-club{width:34px;height:38px;clip-path:polygon(0 0,100% 0,100% 62%,50% 100%,0 62%);background:linear-gradient(180deg,#f2cba0,#cd8a52);color:#140c04;display:flex;align-items:center;justify-content:center;font-weight:800;font-size:12px;padding-bottom:5px;box-sizing:border-box}
.gfc-third .gfc-badge{position:absolute;left:50%;top:36px;transform:translateX(-50%);z-index:5;white-space:nowrap;font-family:'JetBrains Mono',ui-monospace,monospace;font-weight:700;font-size:9.5px;letter-spacing:.22em;padding:4px 9px 4px 11px;border-radius:3px;color:#140c04;background:linear-gradient(90deg,#cd8a52,#f2cba0,#cd8a52)}
.gfc-third .gfc-por{position:absolute;left:150px;top:70px;width:226px;height:226px;z-index:4}
.gfc-third .gfc-name{position:absolute;left:30px;right:30px;top:316px;display:flex;align-items:center;justify-content:center;gap:12px;z-index:5}
.gfc-third .gfc-name b{font-weight:800;font-size:29px;letter-spacing:.04em;white-space:nowrap;background:linear-gradient(180deg,#ffffff,#f2cba0 55%,#cd8a52);-webkit-background-clip:text;background-clip:text;color:transparent}
.gfc-third .gfc-name i{flex:1;height:1.5px;background:linear-gradient(90deg,transparent,#cd8a52,transparent)}
.gfc-third .gfc-meta{position:absolute;left:0;right:0;top:360px;text-align:center;font-family:'JetBrains Mono',ui-monospace,monospace;font-size:11px;color:#f0d2b4;z-index:5}
.gfc-third .gfc-av{position:absolute;left:0;right:0;top:380px;text-align:center;z-index:5}
.gfc-third .gfc-av span{display:inline-flex;align-items:center;gap:6px;font-size:12px;font-weight:800;color:#7fe3a6}
.gfc-third .gfc-av i{width:7px;height:7px;border-radius:50%;background:currentColor;box-shadow:0 0 8px currentColor}
.gfc-third .gfc-stats{position:absolute;left:58px;right:58px;top:412px;display:flex;gap:18px;z-index:5}
.gfc-third .gfc-col{flex:1;display:flex;flex-direction:column;gap:6px}
.gfc-third .gfc-dv{width:1.5px;background:linear-gradient(90deg,transparent,#cd8a52,transparent)}
.gfc-third .gfc-st{display:flex;align-items:baseline;gap:10px;justify-content:center}
.gfc-third .gfc-st b{font-weight:800;font-size:27px;letter-spacing:-.03em;min-width:40px;text-align:right;font-variant-numeric:tabular-nums;}
.gfc-third .gfc-st span{font-weight:700;font-size:15px;letter-spacing:.06em;color:#f0d2b4;min-width:40px}
.gfc-third .gfc-foot{position:absolute;left:0;right:0;top:522px;display:flex;flex-direction:column;align-items:center;gap:6px;color:#ffffff;z-index:5}
.gfc-third .gfc-foot a{display:inline-flex;align-items:center;gap:5px;font-weight:800;font-size:11px;color:#f2cba0;text-decoration:none}
.gfc-third .gfc-em{position:absolute;left:185px;top:-22px;width:50px;height:50px;z-index:8;display:flex;align-items:center;justify-content:center}
/* ---------- 2nd Place — Aqua Holo ---------- */
.gfc-second{position:relative;width:520px;height:720px;overflow:hidden;background:var(--gfc-ground,transparent);--gfc-ground-art:radial-gradient(340px 420px at 50% 50%,rgba(124,200,248,.26),transparent 70%),#03070c;font-family:Manrope,system-ui,sans-serif}
.gfc-second .gfc-fc{position:absolute;left:50px;top:60px;width:420px;height:600px;filter:drop-shadow(0 30px 44px rgba(0,0,0,.6))}
.gfc-second .gfc-fi{position:absolute;inset:0;clip-path:path('M62,24 C118,24 160,14 210,0 C260,14 302,24 358,24 L420,64 L420,468 C420,518 384,544 334,560 L232,592 Q210,600 188,592 L86,560 C36,544 0,518 0,468 L0,64 Z');background:linear-gradient(160deg,#1f84d0,#063066 50%,#0a4a8a);overflow:hidden;color:#ffffff}
.gfc-second .gfc-plate{position:absolute;left:0;right:0;top:290px;bottom:0;background:linear-gradient(180deg,transparent,rgba(2,28,64,.55) 20%,rgba(2,22,54,.74));z-index:2}
.gfc-second .gfc-rate{position:absolute;left:46px;top:58px;display:flex;flex-direction:column;align-items:center;width:84px;z-index:5}
.gfc-second .gfc-rate .gfc-n{font-weight:800;font-size:68px;line-height:.84;letter-spacing:-.06em;background:linear-gradient(180deg,#ffffff,#ffffff 55%,#b9c4be);-webkit-background-clip:text;background-clip:text;color:transparent}
.gfc-second .gfc-rate .gfc-p{font-weight:800;font-size:22px;letter-spacing:.04em;margin-top:6px;color:#ffffff}
.gfc-second .gfc-ln{display:block;width:44px;height:1.5px;background:linear-gradient(90deg,transparent,#b9c4be,transparent);margin:10px 0 8px}
.gfc-second .gfc-mi{display:flex;flex-direction:column;align-items:center;gap:5px;font-family:'JetBrains Mono',ui-monospace,monospace;font-weight:700;font-size:12px;color:#e6f5ff}
.gfc-second .gfc-club{width:34px;height:38px;clip-path:polygon(0 0,100% 0,100% 62%,50% 100%,0 62%);background:linear-gradient(180deg,#ffffff,#b9c4be);color:#140c04;display:flex;align-items:center;justify-content:center;font-weight:800;font-size:12px;padding-bottom:5px;box-sizing:border-box}
.gfc-second .gfc-badge{position:absolute;left:50%;top:36px;transform:translateX(-50%);z-index:5;white-space:nowrap;font-family:'JetBrains Mono',ui-monospace,monospace;font-weight:700;font-size:9.5px;letter-spacing:.22em;padding:4px 9px 4px 11px;border-radius:3px;color:#140c04;background:linear-gradient(90deg,#b9c4be,#ffffff,#b9c4be)}
.gfc-second .gfc-por{position:absolute;left:150px;top:70px;width:226px;height:226px;z-index:4}
.gfc-second .gfc-name{position:absolute;left:30px;right:30px;top:316px;display:flex;align-items:center;justify-content:center;gap:12px;z-index:5}
.gfc-second .gfc-name b{font-weight:800;font-size:29px;letter-spacing:.04em;white-space:nowrap;background:linear-gradient(180deg,#ffffff,#ffffff 55%,#b9c4be);-webkit-background-clip:text;background-clip:text;color:transparent}
.gfc-second .gfc-name i{flex:1;height:1.5px;background:linear-gradient(90deg,transparent,#b9c4be,transparent)}
.gfc-second .gfc-meta{position:absolute;left:0;right:0;top:360px;text-align:center;font-family:'JetBrains Mono',ui-monospace,monospace;font-size:11px;color:#e6f5ff;z-index:5}
.gfc-second .gfc-av{position:absolute;left:0;right:0;top:380px;text-align:center;z-index:5}
.gfc-second .gfc-av span{display:inline-flex;align-items:center;gap:6px;font-size:12px;font-weight:800;color:#7fe3a6}
.gfc-second .gfc-av i{width:7px;height:7px;border-radius:50%;background:currentColor;box-shadow:0 0 8px currentColor}
.gfc-second .gfc-stats{position:absolute;left:58px;right:58px;top:412px;display:flex;gap:18px;z-index:5}
.gfc-second .gfc-col{flex:1;display:flex;flex-direction:column;gap:6px}
.gfc-second .gfc-dv{width:1.5px;background:linear-gradient(90deg,transparent,#b9c4be,transparent)}
.gfc-second .gfc-st{display:flex;align-items:baseline;gap:10px;justify-content:center}
.gfc-second .gfc-st b{font-weight:800;font-size:27px;letter-spacing:-.03em;min-width:40px;text-align:right;font-variant-numeric:tabular-nums;}
.gfc-second .gfc-st span{font-weight:700;font-size:15px;letter-spacing:.06em;color:#e6f5ff;min-width:40px}
.gfc-second .gfc-foot{position:absolute;left:0;right:0;top:522px;display:flex;flex-direction:column;align-items:center;gap:6px;color:#ffffff;z-index:5}
.gfc-second .gfc-foot a{display:inline-flex;align-items:center;gap:5px;font-weight:800;font-size:11px;color:#ffffff;text-decoration:none}
.gfc-second .gfc-em{position:absolute;left:185px;top:-22px;width:50px;height:50px;z-index:8;display:flex;align-items:center;justify-content:center}
/* ---------- 1st Place — Ruby Gemstone ---------- */
.gfc-first{position:relative;width:520px;height:720px;overflow:hidden;background:var(--gfc-ground,transparent);--gfc-ground-art:radial-gradient(360px 440px at 50% 50%,rgba(255,92,116,.2),transparent 70%),radial-gradient(520px 640px at 50% 50%,rgba(232,184,75,.12),transparent 75%),#070103;font-family:Manrope,system-ui,sans-serif}
.gfc-first .gfc-fc{position:absolute;left:50px;top:60px;width:420px;height:600px;filter:drop-shadow(0 0 24px rgba(232,184,75,.35)) drop-shadow(0 30px 44px rgba(0,0,0,.6))}
.gfc-first .gfc-fi{position:absolute;inset:0;clip-path:path('M62,24 C118,24 160,14 210,0 C260,14 302,24 358,24 L420,64 L420,468 C420,518 384,544 334,560 L232,592 Q210,600 188,592 L86,560 C36,544 0,518 0,468 L0,64 Z');background:#6e0414;overflow:hidden;color:#ffffff}
.gfc-first .gfc-plate{position:absolute;left:0;right:0;top:290px;bottom:0;background:linear-gradient(180deg,transparent,rgba(30,0,5,.55) 16%,rgba(25,0,4,.72));z-index:2}
.gfc-first .gfc-rate{position:absolute;left:46px;top:58px;display:flex;flex-direction:column;align-items:center;width:84px;z-index:5}
.gfc-first .gfc-rate .gfc-n{font-weight:800;font-size:68px;line-height:.84;letter-spacing:-.06em;background:linear-gradient(180deg,#ffffff,#fff4d0 55%,#e8b84b);-webkit-background-clip:text;background-clip:text;color:transparent}
.gfc-first .gfc-rate .gfc-p{font-weight:800;font-size:22px;letter-spacing:.04em;margin-top:6px;color:#fff4d0}
.gfc-first .gfc-ln{display:block;width:44px;height:1.5px;background:linear-gradient(90deg,transparent,#e8b84b,transparent);margin:10px 0 8px}
.gfc-first .gfc-mi{display:flex;flex-direction:column;align-items:center;gap:5px;font-family:'JetBrains Mono',ui-monospace,monospace;font-weight:700;font-size:12px;color:#ffd6dc}
.gfc-first .gfc-club{width:34px;height:38px;clip-path:polygon(0 0,100% 0,100% 62%,50% 100%,0 62%);background:linear-gradient(180deg,#fff4d0,#e8b84b);color:#140c04;display:flex;align-items:center;justify-content:center;font-weight:800;font-size:12px;padding-bottom:5px;box-sizing:border-box}
.gfc-first .gfc-badge{position:absolute;left:50%;top:36px;transform:translateX(-50%);z-index:5;white-space:nowrap;font-family:'JetBrains Mono',ui-monospace,monospace;font-weight:700;font-size:9.5px;letter-spacing:.22em;padding:4px 9px 4px 11px;border-radius:3px;color:#140c04;background:linear-gradient(90deg,#e8b84b,#fff4d0,#e8b84b)}
.gfc-first .gfc-por{position:absolute;left:150px;top:70px;width:226px;height:226px;z-index:4}
.gfc-first .gfc-name{position:absolute;left:30px;right:30px;top:316px;display:flex;align-items:center;justify-content:center;gap:12px;z-index:5}
.gfc-first .gfc-name b{font-weight:800;font-size:29px;letter-spacing:.04em;white-space:nowrap;background:linear-gradient(180deg,#ffffff,#fff4d0 55%,#e8b84b);-webkit-background-clip:text;background-clip:text;color:transparent}
.gfc-first .gfc-name i{flex:1;height:1.5px;background:linear-gradient(90deg,transparent,#e8b84b,transparent)}
.gfc-first .gfc-meta{position:absolute;left:0;right:0;top:360px;text-align:center;font-family:'JetBrains Mono',ui-monospace,monospace;font-size:11px;color:#ffd6dc;z-index:5}
.gfc-first .gfc-av{position:absolute;left:0;right:0;top:380px;text-align:center;z-index:5}
.gfc-first .gfc-av span{display:inline-flex;align-items:center;gap:6px;font-size:12px;font-weight:800;color:#7fe3a6}
.gfc-first .gfc-av i{width:7px;height:7px;border-radius:50%;background:currentColor;box-shadow:0 0 8px currentColor}
.gfc-first .gfc-stats{position:absolute;left:58px;right:58px;top:412px;display:flex;gap:18px;z-index:5}
.gfc-first .gfc-col{flex:1;display:flex;flex-direction:column;gap:6px}
.gfc-first .gfc-dv{width:1.5px;background:linear-gradient(90deg,transparent,#e8b84b,transparent)}
.gfc-first .gfc-st{display:flex;align-items:baseline;gap:10px;justify-content:center}
.gfc-first .gfc-st b{font-weight:800;font-size:27px;letter-spacing:-.03em;min-width:40px;text-align:right;font-variant-numeric:tabular-nums;}
.gfc-first .gfc-st span{font-weight:700;font-size:15px;letter-spacing:.06em;color:#ffd6dc;min-width:40px}
.gfc-first .gfc-foot{position:absolute;left:0;right:0;top:522px;display:flex;flex-direction:column;align-items:center;gap:6px;color:#ffffff;z-index:5}
.gfc-first .gfc-foot a{display:inline-flex;align-items:center;gap:5px;font-weight:800;font-size:11px;color:#fff4d0;text-decoration:none}
.gfc-first .gfc-em{position:absolute;left:185px;top:-22px;width:50px;height:50px;z-index:8;display:flex;align-items:center;justify-content:center}
/* ---------- Ballers' Ballot Winner — Nebula ---------- */
.gfc-ballot{position:relative;width:520px;height:720px;overflow:hidden;background:var(--gfc-ground,transparent);--gfc-ground-art:radial-gradient(360px 440px at 50% 50%,rgba(95,216,145,.3),transparent 70%),#010604;font-family:Manrope,system-ui,sans-serif}
.gfc-ballot .gfc-fc{position:absolute;left:50px;top:60px;width:420px;height:600px;filter:drop-shadow(0 0 28px rgba(95,216,145,.45)) drop-shadow(0 30px 44px rgba(0,0,0,.6))}
.gfc-ballot .gfc-fi{position:absolute;inset:0;clip-path:path('M62,24 C118,24 160,14 210,0 C260,14 302,24 358,24 L420,64 L420,468 C420,518 384,544 334,560 L232,592 Q210,600 188,592 L86,560 C36,544 0,518 0,468 L0,64 Z');background:linear-gradient(170deg,#020a12,#01060a 60%,#03100e);overflow:hidden;color:#ffffff}
.gfc-ballot .gfc-plate{position:absolute;left:0;right:0;top:290px;bottom:0;background:linear-gradient(180deg,transparent,rgba(0,6,8,.5) 18%,rgba(0,6,8,.66));z-index:2}
.gfc-ballot .gfc-rate{position:absolute;left:46px;top:58px;display:flex;flex-direction:column;align-items:center;width:84px;z-index:5}
.gfc-ballot .gfc-rate .gfc-n{font-weight:800;font-size:68px;line-height:.84;letter-spacing:-.06em;background:linear-gradient(180deg,#ffffff,#d8ffe8 55%,#5FD891);-webkit-background-clip:text;background-clip:text;color:transparent}
.gfc-ballot .gfc-rate .gfc-p{font-weight:800;font-size:22px;letter-spacing:.04em;margin-top:6px;color:#9fffcf}
.gfc-ballot .gfc-ln{display:block;width:44px;height:1.5px;background:linear-gradient(90deg,transparent,#5FD891,transparent);margin:10px 0 8px}
.gfc-ballot .gfc-mi{display:flex;flex-direction:column;align-items:center;gap:5px;font-family:'JetBrains Mono',ui-monospace,monospace;font-weight:700;font-size:12px;color:#c9f2d8}
.gfc-ballot .gfc-club{width:34px;height:38px;clip-path:polygon(0 0,100% 0,100% 62%,50% 100%,0 62%);background:linear-gradient(180deg,#d8ffe8,#2E9E5C);color:#021a0d;display:flex;align-items:center;justify-content:center;font-weight:800;font-size:12px;padding-bottom:5px;box-sizing:border-box}
.gfc-ballot .gfc-badge{position:absolute;left:50%;top:36px;transform:translateX(-50%);z-index:5;white-space:nowrap;font-family:'JetBrains Mono',ui-monospace,monospace;font-weight:700;font-size:9.5px;letter-spacing:.22em;padding:4px 9px 4px 11px;border-radius:3px;color:#021a0d;background:linear-gradient(90deg,#5FD891,#d8ffe8,#5FD891);box-shadow:0 0 14px rgba(95,216,145,.8)}
.gfc-ballot .gfc-por{position:absolute;left:150px;top:70px;width:226px;height:226px;z-index:4}
.gfc-ballot .gfc-name{position:absolute;left:30px;right:30px;top:316px;display:flex;align-items:center;justify-content:center;gap:12px;z-index:5}
.gfc-ballot .gfc-name b{font-weight:800;font-size:29px;letter-spacing:.04em;white-space:nowrap;background:linear-gradient(180deg,#ffffff,#eafff2 55%,#9fffcf);-webkit-background-clip:text;background-clip:text;color:transparent}
.gfc-ballot .gfc-name i{flex:1;height:1.5px;background:linear-gradient(90deg,transparent,#5FD891,transparent)}
.gfc-ballot .gfc-meta{position:absolute;left:0;right:0;top:360px;text-align:center;font-family:'JetBrains Mono',ui-monospace,monospace;font-size:11px;color:#c9f2d8;z-index:5}
.gfc-ballot .gfc-av{position:absolute;left:0;right:0;top:380px;text-align:center;z-index:5}
.gfc-ballot .gfc-av span{display:inline-flex;align-items:center;gap:6px;font-size:12px;font-weight:800;color:#7fe3a6}
.gfc-ballot .gfc-av i{width:7px;height:7px;border-radius:50%;background:currentColor;box-shadow:0 0 8px currentColor}
.gfc-ballot .gfc-stats{position:absolute;left:58px;right:58px;top:412px;display:flex;gap:18px;z-index:5}
.gfc-ballot .gfc-col{flex:1;display:flex;flex-direction:column;gap:6px}
.gfc-ballot .gfc-dv{width:1.5px;background:linear-gradient(90deg,transparent,#5FD891,transparent)}
.gfc-ballot .gfc-st{display:flex;align-items:baseline;gap:10px;justify-content:center}
.gfc-ballot .gfc-st b{font-weight:800;font-size:27px;letter-spacing:-.03em;min-width:40px;text-align:right;font-variant-numeric:tabular-nums;}
.gfc-ballot .gfc-st span{font-weight:700;font-size:15px;letter-spacing:.06em;color:#c9f2d8;min-width:40px}
.gfc-ballot .gfc-foot{position:absolute;left:0;right:0;top:522px;display:flex;flex-direction:column;align-items:center;gap:6px;color:#ffffff;z-index:5}
.gfc-ballot .gfc-foot a{display:inline-flex;align-items:center;gap:5px;font-weight:800;font-size:11px;color:#b8ffd8;text-decoration:none}
.gfc-ballot .gfc-em{position:absolute;left:185px;top:-22px;width:50px;height:50px;z-index:8;display:flex;align-items:center;justify-content:center}
/* ---------- Prospect — Aurora ---------- */
.gfc-prospect{position:relative;width:520px;height:720px;overflow:hidden;background:var(--gfc-ground,transparent);--gfc-ground-art:radial-gradient(360px 440px at 50% 50%,rgba(61,255,154,.22),transparent 70%),radial-gradient(520px 640px at 50% 40%,rgba(154,107,255,.12),transparent 75%),#01040a;font-family:Manrope,system-ui,sans-serif}
.gfc-prospect .gfc-fc{position:absolute;left:50px;top:60px;width:420px;height:600px;filter:drop-shadow(0 0 30px #3dff9aaa) drop-shadow(0 30px 44px rgba(0,0,0,.6))}
.gfc-prospect .gfc-fi{position:absolute;inset:0;clip-path:path('M62,24 C118,24 160,14 210,0 C260,14 302,24 358,24 L420,64 L420,468 C420,518 384,544 334,560 L232,592 Q210,600 188,592 L86,560 C36,544 0,518 0,468 L0,64 Z');background:linear-gradient(180deg,#020a1a,#04122a 45%,#062a2a 75%,#020812);overflow:hidden;color:#ffffff}
.gfc-prospect .gfc-plate{position:absolute;left:0;right:0;top:290px;bottom:0;background:linear-gradient(180deg,transparent,rgba(2,8,18,.6) 18%,rgba(2,8,18,.8));z-index:2}
.gfc-prospect .gfc-rate{position:absolute;left:46px;top:58px;display:flex;flex-direction:column;align-items:center;width:84px;z-index:5}
.gfc-prospect .gfc-rate .gfc-n{font-weight:800;font-size:68px;line-height:.84;letter-spacing:-.06em;background:linear-gradient(180deg,#ffffff,#eafff4 55%,#3dff9a);-webkit-background-clip:text;background-clip:text;color:transparent}
.gfc-prospect .gfc-rate .gfc-p{font-weight:800;font-size:22px;letter-spacing:.04em;margin-top:6px;color:#b8ffd8}
.gfc-prospect .gfc-ln{display:block;width:44px;height:1.5px;background:linear-gradient(90deg,transparent,#b8ffd8,transparent);margin:10px 0 8px}
.gfc-prospect .gfc-mi{display:flex;flex-direction:column;align-items:center;gap:5px;font-family:'JetBrains Mono',ui-monospace,monospace;font-weight:700;font-size:12px;color:#dcfff0}
.gfc-prospect .gfc-club{width:34px;height:38px;clip-path:polygon(0 0,100% 0,100% 62%,50% 100%,0 62%);background:linear-gradient(180deg,#eafff4,#1aa86a);color:#03200f;display:flex;align-items:center;justify-content:center;font-weight:800;font-size:12px;padding-bottom:5px;box-sizing:border-box}
.gfc-prospect .gfc-badge{position:absolute;left:50%;top:36px;transform:translateX(-50%);z-index:5;white-space:nowrap;font-family:'JetBrains Mono',ui-monospace,monospace;font-weight:700;font-size:9.5px;letter-spacing:.22em;padding:4px 9px 4px 11px;border-radius:3px;color:#03200f;background:linear-gradient(90deg,#3dff9a,#2ee6ff,#c86bff);box-shadow:0 0 16px #3dff9a}
.gfc-prospect .gfc-por{position:absolute;left:150px;top:70px;width:226px;height:226px;z-index:4}
.gfc-prospect .gfc-name{position:absolute;left:30px;right:30px;top:316px;display:flex;align-items:center;justify-content:center;gap:12px;z-index:5}
.gfc-prospect .gfc-name b{font-weight:800;font-size:29px;letter-spacing:.04em;white-space:nowrap;background:linear-gradient(180deg,#ffffff,#ffffff 55%,#eafff4);-webkit-background-clip:text;background-clip:text;color:transparent}
.gfc-prospect .gfc-name i{flex:1;height:1.5px;background:linear-gradient(90deg,transparent,#b8ffd8,transparent)}
.gfc-prospect .gfc-meta{position:absolute;left:0;right:0;top:360px;text-align:center;font-family:'JetBrains Mono',ui-monospace,monospace;font-size:11px;color:#dcfff0;z-index:5}
.gfc-prospect .gfc-av{position:absolute;left:0;right:0;top:380px;text-align:center;z-index:5}
.gfc-prospect .gfc-av span{display:inline-flex;align-items:center;gap:6px;font-size:12px;font-weight:800;color:#7fe3a6}
.gfc-prospect .gfc-av i{width:7px;height:7px;border-radius:50%;background:currentColor;box-shadow:0 0 8px currentColor}
.gfc-prospect .gfc-stats{position:absolute;left:58px;right:58px;top:412px;display:flex;gap:18px;z-index:5}
.gfc-prospect .gfc-col{flex:1;display:flex;flex-direction:column;gap:6px}
.gfc-prospect .gfc-dv{width:1.5px;background:linear-gradient(90deg,transparent,#b8ffd8,transparent)}
.gfc-prospect .gfc-st{display:flex;align-items:baseline;gap:10px;justify-content:center}
.gfc-prospect .gfc-st b{font-weight:800;font-size:27px;letter-spacing:-.03em;min-width:40px;text-align:right;font-variant-numeric:tabular-nums;}
.gfc-prospect .gfc-st span{font-weight:700;font-size:15px;letter-spacing:.06em;color:#dcfff0;min-width:40px}
.gfc-prospect .gfc-foot{position:absolute;left:0;right:0;top:522px;display:flex;flex-direction:column;align-items:center;gap:6px;color:#ffffff;z-index:5}
.gfc-prospect .gfc-foot a{display:inline-flex;align-items:center;gap:5px;font-weight:800;font-size:11px;color:#eafff4;text-decoration:none}
.gfc-prospect .gfc-em{position:absolute;left:185px;top:-22px;width:50px;height:50px;z-index:8;display:flex;align-items:center;justify-content:center}
/* ---------- Elite — Heart of the Cut ---------- */
.gfc-elite{position:relative;width:520px;height:720px;overflow:hidden;background:var(--gfc-ground,transparent);--gfc-ground-art:radial-gradient(380px 460px at 50% 50%,rgba(154,107,255,.45),transparent 70%),radial-gradient(560px 660px at 50% 50%,rgba(74,163,255,.16),transparent 75%),#04020c;font-family:Manrope,system-ui,sans-serif}
.gfc-elite .gfc-fc{position:absolute;left:50px;top:60px;width:420px;height:600px;filter:drop-shadow(0 0 30px #b99bffaa) drop-shadow(0 30px 44px rgba(0,0,0,.6))}
.gfc-elite .gfc-fi{position:absolute;inset:0;clip-path:path('M62,24 C118,24 160,14 210,0 C260,14 302,24 358,24 L420,64 L420,468 C420,518 384,544 334,560 L232,592 Q210,600 188,592 L86,560 C36,544 0,518 0,468 L0,64 Z');background:#2a1260;overflow:hidden;color:#ffffff}
.gfc-elite .gfc-plate{position:absolute;left:0;right:0;top:290px;bottom:0;background:linear-gradient(180deg,transparent,rgba(16,6,42,.62) 18%,rgba(12,4,32,.8));z-index:2}
.gfc-elite .gfc-rate{position:absolute;left:46px;top:58px;display:flex;flex-direction:column;align-items:center;width:84px;z-index:5}
.gfc-elite .gfc-rate .gfc-n{font-weight:800;font-size:68px;line-height:.84;letter-spacing:-.06em;background:linear-gradient(180deg,#ffffff,#d9ccff 50%,#9fd0ff);-webkit-background-clip:text;background-clip:text;color:transparent;filter:drop-shadow(0 0 10px rgba(185,155,255,.6))}
.gfc-elite .gfc-rate .gfc-p{font-weight:800;font-size:22px;letter-spacing:.04em;margin-top:6px;color:#b99bff}
.gfc-elite .gfc-ln{display:block;width:44px;height:1.5px;background:linear-gradient(90deg,transparent,#d9ccff,transparent);margin:10px 0 8px}
.gfc-elite .gfc-mi{display:flex;flex-direction:column;align-items:center;gap:5px;font-family:'JetBrains Mono',ui-monospace,monospace;font-weight:700;font-size:12px;color:#e6dcff}
.gfc-elite .gfc-club{width:34px;height:38px;clip-path:polygon(0 0,100% 0,100% 62%,50% 100%,0 62%);background:linear-gradient(180deg,#e6dcff,#7a4fd0);color:#140f30;display:flex;align-items:center;justify-content:center;font-weight:800;font-size:12px;padding-bottom:5px;box-sizing:border-box}
.gfc-elite .gfc-badge{position:absolute;left:50%;top:36px;transform:translateX(-50%);z-index:5;white-space:nowrap;font-family:'JetBrains Mono',ui-monospace,monospace;font-weight:700;font-size:9.5px;letter-spacing:.22em;padding:4px 9px 4px 11px;border-radius:3px;color:#140f30;background:linear-gradient(90deg,#ff9fe0,#b99bff,#9fd0ff,#9fffcf,#ffd27a);box-shadow:0 0 22px rgba(185,155,255,1)}
.gfc-elite .gfc-por{position:absolute;left:150px;top:70px;width:226px;height:226px;z-index:4}
.gfc-elite .gfc-name{position:absolute;left:30px;right:30px;top:316px;display:flex;align-items:center;justify-content:center;gap:12px;z-index:5}
.gfc-elite .gfc-name b{font-weight:800;font-size:29px;letter-spacing:.04em;white-space:nowrap;background:linear-gradient(180deg,#ffffff,#ffffff 55%,#e6dcff);-webkit-background-clip:text;background-clip:text;color:transparent}
.gfc-elite .gfc-name i{flex:1;height:1.5px;background:linear-gradient(90deg,transparent,#d9ccff,transparent)}
.gfc-elite .gfc-meta{position:absolute;left:0;right:0;top:360px;text-align:center;font-family:'JetBrains Mono',ui-monospace,monospace;font-size:11px;color:#e6dcff;z-index:5}
.gfc-elite .gfc-av{position:absolute;left:0;right:0;top:380px;text-align:center;z-index:5}
.gfc-elite .gfc-av span{display:inline-flex;align-items:center;gap:6px;font-size:12px;font-weight:800;color:#7fe3a6}
.gfc-elite .gfc-av i{width:7px;height:7px;border-radius:50%;background:currentColor;box-shadow:0 0 8px currentColor}
.gfc-elite .gfc-stats{position:absolute;left:58px;right:58px;top:412px;display:flex;gap:18px;z-index:5}
.gfc-elite .gfc-col{flex:1;display:flex;flex-direction:column;gap:6px}
.gfc-elite .gfc-dv{width:1.5px;background:linear-gradient(90deg,transparent,#d9ccff,transparent)}
.gfc-elite .gfc-st{display:flex;align-items:baseline;gap:10px;justify-content:center}
.gfc-elite .gfc-st b{font-weight:800;font-size:27px;letter-spacing:-.03em;min-width:40px;text-align:right;font-variant-numeric:tabular-nums;}
.gfc-elite .gfc-st span{font-weight:700;font-size:15px;letter-spacing:.06em;color:#e6dcff;min-width:40px}
.gfc-elite .gfc-foot{position:absolute;left:0;right:0;top:522px;display:flex;flex-direction:column;align-items:center;gap:6px;color:#ffffff;z-index:5}
.gfc-elite .gfc-foot a{display:inline-flex;align-items:center;gap:5px;font-weight:800;font-size:11px;color:#e6dcff;text-decoration:none}
.gfc-elite .gfc-em{position:absolute;left:185px;top:-22px;width:50px;height:50px;z-index:8;display:flex;align-items:center;justify-content:center}
/* ---------- Icon — Golden Heavens ---------- */
.gfc-icon{position:relative;width:520px;height:720px;overflow:hidden;background:var(--gfc-ground,transparent);--gfc-ground-art:radial-gradient(380px 460px at 50% 50%,rgba(255,214,120,.42),transparent 70%),radial-gradient(620px 720px at 50% 50%,rgba(232,184,75,.16),transparent 75%),#0a0703;font-family:Manrope,system-ui,sans-serif}
.gfc-icon .gfc-fc{position:absolute;left:50px;top:60px;width:420px;height:600px;filter:drop-shadow(0 0 30px #ffcf5aaa) drop-shadow(0 30px 44px rgba(0,0,0,.6))}
.gfc-icon .gfc-fi{position:absolute;inset:0;clip-path:path('M62,24 C118,24 160,14 210,0 C260,14 302,24 358,24 L420,64 L420,468 C420,518 384,544 334,560 L232,592 Q210,600 188,592 L86,560 C36,544 0,518 0,468 L0,64 Z');background:radial-gradient(200px 190px at 62.6% 30.5%,#fff4d0,#f4c860 35%,transparent 72%),linear-gradient(180deg,#7a3a0a 0%,#b4661c 30%,#8a4410 60%,#3a1804 100%);overflow:hidden;color:#fff4d0}
.gfc-icon .gfc-plate{position:absolute;left:0;right:0;top:290px;bottom:0;background:linear-gradient(180deg,transparent,rgba(28,12,4,.6) 16%,rgba(20,8,2,.8));z-index:2}
.gfc-icon .gfc-rate{position:absolute;left:46px;top:58px;display:flex;flex-direction:column;align-items:center;width:84px;z-index:5}
.gfc-icon .gfc-rate .gfc-n{font-weight:800;font-size:68px;line-height:.84;letter-spacing:-.06em;background:linear-gradient(180deg,#fffaf0,#f4d27a 55%,#b98f2e);-webkit-background-clip:text;background-clip:text;color:transparent}
.gfc-icon .gfc-rate .gfc-p{font-weight:800;font-size:22px;letter-spacing:.04em;margin-top:6px;color:#f4d27a}
.gfc-icon .gfc-ln{display:block;width:44px;height:1.5px;background:linear-gradient(90deg,transparent,#e8b84b,transparent);margin:10px 0 8px}
.gfc-icon .gfc-mi{display:flex;flex-direction:column;align-items:center;gap:5px;font-family:'JetBrains Mono',ui-monospace,monospace;font-weight:700;font-size:12px;color:#d9c9a0}
.gfc-icon .gfc-club{width:34px;height:38px;clip-path:polygon(0 0,100% 0,100% 62%,50% 100%,0 62%);background:linear-gradient(180deg,#fff4d0,#9a7322);color:#2a1d06;display:flex;align-items:center;justify-content:center;font-weight:800;font-size:12px;padding-bottom:5px;box-sizing:border-box}
.gfc-icon .gfc-badge{position:absolute;left:50%;top:36px;transform:translateX(-50%);z-index:5;white-space:nowrap;font-family:'JetBrains Mono',ui-monospace,monospace;font-weight:700;font-size:9.5px;letter-spacing:.22em;padding:4px 9px 4px 11px;border-radius:3px;color:#2a1d06;background:linear-gradient(90deg,#b98f2e,#fff4d0,#e8b84b,#fff4d0,#b98f2e);box-shadow:0 0 20px rgba(255,207,90,.9)}
.gfc-icon .gfc-por{position:absolute;left:150px;top:70px;width:226px;height:226px;z-index:4}
.gfc-icon .gfc-name{position:absolute;left:30px;right:30px;top:316px;display:flex;align-items:center;justify-content:center;gap:12px;z-index:5}
.gfc-icon .gfc-name b{font-weight:800;font-size:29px;letter-spacing:.04em;white-space:nowrap;background:linear-gradient(180deg,#fffaf0,#f4d27a 55%,#c99a2e);-webkit-background-clip:text;background-clip:text;color:transparent}
.gfc-icon .gfc-name i{flex:1;height:1.5px;background:linear-gradient(90deg,transparent,#e8b84b,transparent)}
.gfc-icon .gfc-meta{position:absolute;left:0;right:0;top:360px;text-align:center;font-family:'JetBrains Mono',ui-monospace,monospace;font-size:11px;color:#d9c9a0;z-index:5}
.gfc-icon .gfc-av{position:absolute;left:0;right:0;top:380px;text-align:center;z-index:5}
.gfc-icon .gfc-av span{display:inline-flex;align-items:center;gap:6px;font-size:12px;font-weight:800;color:#7fe3a6}
.gfc-icon .gfc-av i{width:7px;height:7px;border-radius:50%;background:currentColor;box-shadow:0 0 8px currentColor}
.gfc-icon .gfc-stats{position:absolute;left:58px;right:58px;top:412px;display:flex;gap:18px;z-index:5}
.gfc-icon .gfc-col{flex:1;display:flex;flex-direction:column;gap:6px}
.gfc-icon .gfc-dv{width:1.5px;background:linear-gradient(90deg,transparent,#e8b84b,transparent)}
.gfc-icon .gfc-st{display:flex;align-items:baseline;gap:10px;justify-content:center}
.gfc-icon .gfc-st b{font-weight:800;font-size:27px;letter-spacing:-.03em;min-width:40px;text-align:right;font-variant-numeric:tabular-nums;}
.gfc-icon .gfc-st span{font-weight:700;font-size:15px;letter-spacing:.06em;color:#d9c9a0;min-width:40px}
.gfc-icon .gfc-foot{position:absolute;left:0;right:0;top:522px;display:flex;flex-direction:column;align-items:center;gap:6px;color:#fff4d0;z-index:5}
.gfc-icon .gfc-foot a{display:inline-flex;align-items:center;gap:5px;font-weight:800;font-size:11px;color:#f4d27a;text-decoration:none}
.gfc-icon .gfc-em{position:absolute;left:185px;top:-22px;width:50px;height:50px;z-index:8;display:flex;align-items:center;justify-content:center}

.gfc-base .gfc-initials{background:linear-gradient(180deg,#ffffff,#9aa0a6);-webkit-background-clip:text;background-clip:text;color:transparent;-webkit-text-fill-color:transparent}
.paused .gfc,.paused .gfc *{animation-play-state:paused!important}

/* ---------- lite mode ----------
   Touch devices and screens up to 860px wide get static card images
   (assets/cards/*.webp). If live cards are ever on screen there (e.g. a
   desktop window resized narrow), strip the holo/blend layers and filters. */
@media (max-width:860px),(hover:none),(pointer:coarse){
  .gfc-h-holo,.gfc-h-diff,.gfc-h-sweep{display:none!important}
  .gfc,.gfc *{filter:none!important;mix-blend-mode:normal!important;animation:none!important}
}
