.f2c-companion{position:relative;width:52px;height:86px;pointer-events:none}.f2c-companion-fig{position:absolute;left:50%;bottom:7px;transform:translate(-50%);width:44px;height:77px;filter:drop-shadow(0 2px 2px rgba(6,18,10,.35))}.f2c-companion-shadow{position:absolute;left:50%;bottom:2px;transform:translate(-50%);width:36px;height:8px;border-radius:50%;background:#06120a61}.f2c-companion-name{position:absolute;left:50%;bottom:-13px;transform:translate(-50%);font-size:10px;font-weight:700;letter-spacing:.02em;color:#12291d;background:#f5ecdeeb;padding:1px 7px;border-radius:999px;white-space:nowrap}.f2c-companion.f2c-you-legacy{position:absolute;transform:translate(-50%,-100%);z-index:9}.ap-viz{margin:0 0 14px}.ap-viz-stage{position:relative;border-radius:var(--radius-xl);overflow:hidden;height:300px;background:var(--green-2);box-shadow:var(--shadow-lift);touch-action:none}.ap-viz-stage.tall{height:344px}.ap-viz-view{position:absolute;inset:0;z-index:1;transform-origin:0 0;will-change:transform}.ap-viz-view.is-animating{transition:transform .28s ease}.ap-viz-leaders{position:absolute;inset:0;width:100%;height:100%;z-index:3;pointer-events:none}.ap-viz-leaders line{stroke:#f7f3e8bf;stroke-width:1.1;vector-effect:non-scaling-stroke}.ap-viz-leaders circle{fill:#e9c46a}.ap-viz-cluster-face{min-width:34px;height:34px;padding:0 7px;border-radius:999px;border:2px solid #fff;background:radial-gradient(circle at 34% 28%,#2c5c40,#12291d 68%);color:#fff;font-size:.82rem;font-weight:800;letter-spacing:.01em;display:grid;place-items:center;box-shadow:0 4px 14px #00000073;transform:scale(var(--zf, 1));transition:transform .18s}.ap-viz-pin.is-match .ap-viz-cluster-face{box-shadow:0 0 0 4px #e9c46acc,0 0 18px 7px #e9c46a80,0 4px 14px #00000073}.ap-viz-pin.is-fanbase .ap-viz-cluster-face{opacity:.55;transform:scale(calc(var(--zf, 1) * .72))}.ap-viz-pin.is-fanned .ap-viz-face{box-shadow:0 0 0 3px #f7f3e8e6,0 6px 16px #00000080}.ap-viz-zoom{position:absolute;right:10px;top:52px;z-index:6;display:flex;flex-direction:column;gap:6px}.ap-viz-zoom button{width:38px;height:38px;border-radius:12px;cursor:pointer;background:#0a1a119e;color:#f3ecd4;font-size:1.05rem;font-weight:700;line-height:1;border:1px solid rgba(247,243,232,.35);backdrop-filter:blur(6px);display:grid;place-items:center;padding:0}.ap-viz-zoom button[disabled]{opacity:.38;cursor:default}.ap-viz-scene{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;opacity:0;transition:opacity 1.1s ease}.ap-viz-scene.is-on{opacity:1}.ap-viz-world{position:absolute;inset:-10% -4%;z-index:1;transform:perspective(880px) rotateX(7deg);transform-origin:50% 100%}.ap-viz-depth{position:absolute;inset:0;pointer-events:none;background:linear-gradient(180deg,#f4f8ee33,#f4f8ee00 34%,#08160d00 62%,#08160d33);box-shadow:inset 0 0 64px #06120a61,inset 0 -18px 34px #06120a38}.ap-viz-grade{position:absolute;inset:0;pointer-events:none;transition:background 1s ease;z-index:2}.ap-viz[data-moment=morning] .ap-viz-grade{background:linear-gradient(180deg,#fff4c824,#78b4780d 55%,#0a1e122e)}.ap-viz[data-moment=golden] .ap-viz-grade{background:linear-gradient(200deg,#ffa64257,#d65a1e24 52%,#280e284d)}.ap-viz[data-moment=rain] .ap-viz-grade{background:linear-gradient(180deg,#466e964d,#1e3c3229 55%,#06181457);backdrop-filter:saturate(1.25)}.ap-viz-route{position:absolute;inset:0;width:100%;height:100%;z-index:3;pointer-events:none;transition:opacity .3s ease}.ap-viz-route [data-viz-line]{filter:drop-shadow(0 3px 6px rgba(6,18,10,.55))}.ap-viz.is-searching .ap-viz-route{opacity:.4}.ap-viz-pins{position:absolute;inset:0;z-index:4}.ap-viz-pin{position:absolute;transform:translate(-50%,-50%);width:44px;height:44px;padding:0;border:0;background:transparent;cursor:pointer;display:grid;place-items:center}.ap-viz-pin-shadow{position:absolute;left:50%;top:72%;width:21px;height:6.5px;border-radius:50%;background:#06140b6b;filter:blur(2.5px);transform:translate(-50%) scale(var(--ps, 1));transition:transform .18s,opacity .18s;pointer-events:none}.ap-viz-pin.is-selected .ap-viz-pin-shadow{transform:translate(-50%) scale(calc(var(--ps, 1) * 1.45));opacity:.6}.ap-viz-face{width:24px;height:24px;border-radius:50%;border:2px solid #fff;background:radial-gradient(circle at 34% 28%,#45805e,#1d4a33 64%);color:#fff;font-size:.72rem;font-weight:800;display:grid;place-items:center;box-shadow:0 3px 10px #0006;transform:scale(calc(var(--ps, 1) * var(--zf, 1)));transition:transform .18s,background .18s,box-shadow .18s}.ap-viz-pin:not(.is-in) .ap-viz-face:after{content:"";width:8px;height:8px;border-radius:50%;background:#fff}.ap-viz-pin.is-in .ap-viz-face{background:radial-gradient(circle at 34% 28%,#f4d06a,#c99700 66%);width:27px;height:27px}.ap-viz-pin.is-match .ap-viz-face{box-shadow:0 0 0 4px #e9c46acc,0 0 18px 7px #e9c46a8c,0 3px 10px #0006}.ap-viz-pin.is-dim{opacity:.35}.ap-viz-pin.is-selected{opacity:1}.ap-viz-pin.is-selected .ap-viz-face{background:radial-gradient(circle at 34% 28%,#ffe9a8,#e9c46a 62%,#c99700);color:#12291d;transform:translateY(-6px) scale(calc(var(--ps, 1) * var(--zf, 1) * 1.3));box-shadow:0 0 0 3px #e9c46a8c,0 10px 18px #00000080}.ap-viz-pin.is-pulse .ap-viz-face{animation:apvizpulse 1.1s ease}@keyframes apvizpulse{0%{box-shadow:0 0 #e9c46ad9}to{box-shadow:0 0 0 18px #e9c46a00}}.ap-viz-chip,.ap-viz-count{position:absolute;top:10px;z-index:6;background:#0a1a119e;color:#f3ecd4;border:1px solid rgba(247,243,232,.35);backdrop-filter:blur(6px);border-radius:999px;padding:6px 11px;font-size:.72rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.ap-viz-chip{left:10px;max-width:54%}.ap-viz-count{right:10px;max-width:42%}.ap-viz-panel{position:absolute;z-index:7;left:10px;right:10px;bottom:10px;background:#fbf7eef7;border-radius:18px;padding:12px 14px;box-shadow:0 14px 34px #00000059}.ap-viz-panel-x{position:absolute;top:6px;right:10px;border:0;background:none;font-size:1.4rem;line-height:1;color:#6b6455;cursor:pointer;padding:4px}.ap-viz-panel-main{display:flex;gap:11px;align-items:flex-start}.ap-viz-panel-img{width:48px;height:48px;border-radius:13px;object-fit:cover;flex:none;background:var(--cream-2)}.ap-viz-panel-txt{flex:1;min-width:0}.ap-viz-panel h3{font-family:var(--serif);font-size:1.08rem;color:var(--green);margin:0 22px 2px 0;line-height:1.15}.ap-viz-panel-meta{margin:0;font-size:.8rem;color:#6b6455}.ap-viz-panel-grows{margin:3px 0 0;font-size:.83rem;color:var(--green-2);line-height:1.35;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.ap-viz-panel-actions{display:flex;gap:10px;align-items:center;flex-wrap:wrap;margin-top:10px}.ap-viz-panel-link{font-weight:700;font-size:.86rem;color:var(--gold-deep);text-decoration:none;padding:8px 2px}.ap-viz-moments{display:flex;gap:6px;flex-wrap:wrap;margin-top:10px}.ap-viz-moments button{border:1.5px solid var(--line);background:#fff;color:var(--green-2);border-radius:var(--radius-pill);padding:8px 13px;min-height:40px;font:inherit;font-size:.83rem;font-weight:600;cursor:pointer}.ap-viz-moments button.is-on{background:var(--green);color:var(--cream);border-color:var(--green)}@media(prefers-reduced-motion:reduce){.ap-viz-scene,.ap-viz-face,.ap-viz-view.is-animating{transition:none}.ap-viz-pin.is-pulse .ap-viz-face{animation:none}}
