.fc-section{--ink:#0a0a0a;--ink-2:#171717;--ink-3:#1f1f1f;--rim:#ffffff14;--rim-hi:#ffffff2e;--fg:#fff;--fg-dim:#ffffffa6;--fg-mute:#fff6;--accent:#ffd60a;--accent-2:#e8c200;--accent-glow:#ffd60a59;--accent-faint:#ffd60a14;--r:16px;background:var(--ink);color:var(--fg);-webkit-font-smoothing:antialiased;background-image:radial-gradient(circle at 1px 1px,#ffffff0a 1px,#0000 0);background-size:22px 22px;font-family:Inter,sans-serif}.fc-card.accent-blue{--accent:#3b82f6;--accent-2:#2563eb;--accent-glow:#3b82f659;--accent-faint:#3b82f614}.fc-bebas{letter-spacing:.01em;font-family:Bebas Neue,sans-serif}.fc-mono{font-family:JetBrains Mono,ui-monospace,monospace}.fc-card{isolation:isolate;border-radius:var(--r);background:linear-gradient(180deg, var(--ink-3), var(--ink-2));border:1px solid var(--rim);flex-direction:column;gap:18px;min-height:290px;padding:26px;transition:transform .4s cubic-bezier(.2,.9,.3,1.4),border-color .3s,box-shadow .4s;display:flex;position:relative;overflow:hidden}.fc-card:before{content:"";border-radius:inherit;z-index:-1;background:radial-gradient(420px 220px at 80% -10%, var(--accent-faint), transparent 60%), radial-gradient(300px 200px at 10% 110%, var(--accent-faint), transparent 60%);pointer-events:none;position:absolute;inset:-1px}.fc-card:after{content:"";border-radius:inherit;z-index:-1;box-shadow:0 0 60px -10px var(--accent-glow);opacity:0;pointer-events:none;transition:opacity .4s;position:absolute;inset:0}.fc-card:hover{border-color:var(--rim-hi);transform:translateY(-4px)}.fc-card:hover:after{opacity:1}.fc-head{justify-content:space-between;align-items:center;display:flex}.fc-icon{border:1px solid var(--rim);background:#00000073;border-radius:10px;place-items:center;width:50px;height:50px;transition:background .3s,border-color .3s;display:grid}.fc-card:hover .fc-icon{background:var(--accent-faint);border-color:var(--accent)}.fc-icon svg{width:26px;height:26px;stroke:var(--accent);fill:none;stroke-width:1.6px;stroke-linecap:round;stroke-linejoin:round;transition:transform .5s}.fc-card:hover .fc-icon svg{transform:scale(1.1)rotate(4deg)}.fc-tag{letter-spacing:.22em;text-transform:uppercase;color:var(--fg-mute);border:1px solid var(--rim);background:#0006;border-radius:999px;padding:4px 9px;font-family:JetBrains Mono,monospace;font-size:9.5px}.fc-title{letter-spacing:.02em;margin:0;font-family:Bebas Neue,sans-serif;font-size:22px;line-height:1.05}.fc-body{color:var(--fg-dim);margin:0;font-size:13.5px;line-height:1.55}.fc-viz{flex:1;min-height:90px;margin-top:2px;position:relative}.fc-cta{color:#0a0a0a;border-radius:var(--r);background:linear-gradient(135deg,#ffd60a,#ffe24d);border:1px solid #1a1a1a;flex-direction:column;justify-content:space-between;padding:26px;display:flex}.viz-bracket svg{width:100%;height:110px;overflow:visible}.viz-bracket .line{stroke:var(--fg-mute);stroke-width:1px;fill:none;opacity:.4}.viz-bracket .line.active{stroke:var(--accent);opacity:.9;stroke-dasharray:120;stroke-dashoffset:120px;animation:4s ease-out infinite br-draw}.viz-bracket .node{fill:#ffffff0f;stroke:var(--fg-mute);stroke-opacity:.5}.viz-bracket .node.win{fill:var(--accent-faint);stroke:var(--accent)}.viz-bracket .pulse{fill:var(--accent);transform-origin:50%;transform-box:fill-box;animation:2.4s ease-in-out infinite br-pulse}@keyframes br-draw{0%{stroke-dashoffset:120px}50%{stroke-dashoffset:0}to{stroke-dashoffset:-120px}}@keyframes br-pulse{0%,to{opacity:.3;r:2.5}50%{opacity:1;r:4}}.viz-score{grid-template-columns:1fr auto 1fr;align-items:center;gap:12px;height:110px;font-family:JetBrains Mono,monospace;display:grid}.viz-score .player{flex-direction:column;gap:6px;display:flex}.viz-score .name{color:var(--fg-mute);letter-spacing:.18em;text-transform:uppercase;font-size:10px}.viz-score .num{font-variant-numeric:tabular-nums;font-family:Barlow Condensed,sans-serif;font-size:46px;font-weight:800;line-height:1;transition:color .3s,transform .3s}.viz-score .num.bump{color:var(--accent);transform:scale(1.08)}.viz-score .vs{color:var(--fg-mute);letter-spacing:.18em;font-size:10px}.viz-score .serve{color:var(--accent);letter-spacing:.18em;opacity:0;font-size:9px;transition:opacity .3s}.viz-score .serve.on{opacity:1}.viz-score .rhs{text-align:right;align-items:flex-end}.viz-url{justify-content:center;align-items:center;height:110px;display:flex}.viz-url .pill{border:1px solid var(--accent);background:var(--accent-faint);color:var(--accent);letter-spacing:.06em;border-radius:12px;padding:14px 18px;font-family:JetBrains Mono,monospace;font-size:13px;position:relative}.viz-url .pill:after{content:"";border:1px solid var(--accent);opacity:0;border-radius:14px;animation:2.6s ease-out infinite url-ring;position:absolute;inset:-2px}@keyframes url-ring{0%{opacity:.6;transform:scale(.92)}80%,to{opacity:0;transform:scale(1.15)}}.viz-embed{flex-direction:column;justify-content:center;gap:6px;height:110px;display:flex}.viz-embed .ln{color:var(--fg-dim);align-items:center;gap:6px;font-family:JetBrains Mono,monospace;font-size:11px;display:flex}.viz-embed .tk-yellow{color:var(--accent)}.viz-embed .tk-mute{color:var(--fg-mute)}.viz-embed .caret{background:var(--accent);vertical-align:middle;width:7px;height:13px;animation:1s steps(2,end) infinite caret;display:inline-block}@keyframes caret{50%{opacity:0}}.viz-bank{justify-content:space-between;align-items:center;height:110px;padding:0 8px;display:flex;position:relative}.viz-bank .label{color:var(--fg-mute);letter-spacing:.16em;text-transform:uppercase;flex-direction:column;align-items:center;gap:4px;font-family:JetBrains Mono,monospace;font-size:9.5px;display:flex}.viz-bank svg.icon-mid{width:36px;height:36px;stroke:var(--accent);fill:none;stroke-width:1.6px}.viz-bank .arrow{background:var(--rim);flex:1;height:1.5px;margin:0 16px;position:relative;overflow:hidden}.viz-bank .arrow:before{content:"";background:linear-gradient(90deg, transparent, var(--accent), transparent);width:50%;height:100%;animation:2.4s linear infinite bank-flow;position:absolute;top:0;left:-50%}@keyframes bank-flow{to{left:100%}}.viz-pct{flex-direction:column;justify-content:center;align-items:center;height:110px;display:flex}.viz-pct .num{background:linear-gradient(180deg, var(--accent), var(--accent-2));color:#0000;text-shadow:0 0 24px var(--accent-glow);-webkit-background-clip:text;background-clip:text;font-family:Bebas Neue,sans-serif;font-size:78px;line-height:.9}.viz-pct .lbl{letter-spacing:.22em;color:var(--fg-mute);text-transform:uppercase;margin-top:4px;font-family:JetBrains Mono,monospace;font-size:9.5px}.viz-ticker{border:1px solid var(--rim);background:#0000004d;border-radius:10px;height:110px;position:relative;overflow:hidden}.viz-ticker .head{letter-spacing:.18em;text-transform:uppercase;color:var(--fg-mute);border-bottom:1px solid var(--rim);justify-content:space-between;align-items:center;padding:7px 11px;font-family:JetBrains Mono,monospace;font-size:9px;display:flex}.viz-ticker .live{color:var(--accent);align-items:center;gap:6px;display:inline-flex}.viz-ticker .live:before{content:"";background:var(--accent);width:6px;height:6px;box-shadow:0 0 8px var(--accent);border-radius:50%;animation:1.2s ease-in-out infinite blink}@keyframes blink{50%{opacity:.3}}.viz-ticker .court{border:1px solid var(--rim-hi);background:#0003;border-radius:4px;position:absolute;inset:32px 12px 38px}.viz-ticker .court:before{content:"";border-top:1px dashed var(--rim-hi);height:0;position:absolute;inset:50% 0 0}.viz-ticker .ball{background:var(--accent);width:6px;height:6px;box-shadow:0 0 10px var(--accent);border-radius:50%;animation:3.2s ease-in-out infinite rally;position:absolute}@keyframes rally{0%{top:30%;left:10%}50%{top:70%;left:85%}to{top:30%;left:10%}}.viz-ticker .strip{color:var(--fg-dim);white-space:nowrap;gap:36px;padding-left:100%;font-family:JetBrains Mono,monospace;font-size:11px;animation:18s linear infinite scroll-x;display:flex;position:absolute;bottom:8px;left:0;right:0}.viz-ticker .strip b{color:var(--accent);margin-right:6px}@keyframes scroll-x{to{transform:translate(-100%)}}.viz-formats{place-items:center;height:110px;display:grid}.viz-formats svg{width:130px;height:110px}.viz-formats .ring{stroke:var(--rim-hi);stroke-width:1px;fill:none}.viz-formats .orb{fill:var(--accent)}.viz-formats .center{fill:var(--ink-3);stroke:var(--accent)}.viz-formats .lbl{fill:var(--accent);text-anchor:middle;dominant-baseline:middle;letter-spacing:.1em;font-family:JetBrains Mono,monospace;font-size:10px}.viz-formats .orbit-group{transform-origin:65px 55px;transform-box:fill-box;animation:14s linear infinite orbit}.viz-formats .orbit-group.r2{animation-duration:22s;animation-direction:reverse}@keyframes orbit{to{transform:rotate(360deg)}}.viz-mobile{place-items:center;height:110px;display:grid}.viz-mobile svg{width:70px;height:110px}.viz-mobile .phone{fill:#0006;stroke:var(--rim-hi);stroke-width:1.5px}.viz-mobile .scr{fill:#ffd60a1f}.fc-card.accent-blue .viz-mobile .scr{fill:#3b82f61f}.viz-mobile .num-l,.viz-mobile .num-r{fill:var(--accent);text-anchor:middle;font-family:Barlow Condensed,sans-serif;font-size:22px;font-weight:800}.viz-mobile .ripple{fill:none;stroke:var(--accent);stroke-width:1.5px;transform-origin:50%;transform-box:fill-box;animation:1.8s ease-out infinite tap-ripple}@keyframes tap-ripple{0%{opacity:.7;r:6}to{opacity:0;r:24}}.viz-cal{grid-template-columns:repeat(7,1fr);gap:4px;height:110px;padding:8px 4px;display:grid}.viz-cal .cell{border:1px solid var(--rim);background:#0000004d;border-radius:4px;animation:4.5s ease-in-out infinite cal-fill}@keyframes cal-fill{0%,8%{border-color:var(--rim);background:#0000004d}20%,to{background:var(--accent-faint);border-color:var(--accent)}}.viz-cal .cell:first-child{animation-delay:0s}.viz-cal .cell:nth-child(2){animation-delay:.18s}.viz-cal .cell:nth-child(3){animation-delay:.36s}.viz-cal .cell:nth-child(4){animation-delay:.54s}.viz-cal .cell:nth-child(5){animation-delay:.72s}.viz-cal .cell:nth-child(6){animation-delay:.9s}.viz-cal .cell:nth-child(7){animation-delay:1.08s}.viz-cal .cell:nth-child(8){animation-delay:1.26s}.viz-cal .cell:nth-child(9){animation-delay:1.44s}.viz-cal .cell:nth-child(10){animation-delay:1.62s}.viz-cal .cell:nth-child(11){animation-delay:1.8s}.viz-cal .cell:nth-child(12){animation-delay:1.98s}.viz-cal .cell:nth-child(13){animation-delay:2.16s}.viz-cal .cell:nth-child(14){animation-delay:2.34s}
