/* Public-profile follow controls. Counts are aggregate-only. */

/* A cached public profile receives its private relation state after paint.
   Its action remains visually neutral until then, then acknowledges a toggle
   before the network round-trip returns. */
.ofm-follows__button.is-hydrating{border-color:rgba(244,196,48,.34);box-shadow:inset 0 0 0 1px rgba(244,196,48,.035)}
.ofm-follows__button.is-hydrating svg{animation:ofm-follow-hydrate 1.25s ease-in-out infinite}
.ofm-follows__button.is-loading{cursor:progress;pointer-events:none}
.ofm-follows__button.is-loading:not(.is-following){border-color:rgba(244,196,48,.72);background:rgba(244,196,48,.15)}
.ofm-follows__button.is-loading.is-following{border-color:rgba(134,218,163,.68);background:rgba(134,218,163,.14)}
.ofm-follows__button.is-follow-activated{animation:ofm-follow-affirm .54s cubic-bezier(.18,.85,.27,1.18)}
.ofm-follows__button.is-unfollow-activated{animation:ofm-follow-release .42s cubic-bezier(.2,.72,.28,1)}
@keyframes ofm-follow-hydrate{0%,100%{opacity:.68;transform:scale(1)}50%{opacity:1;transform:scale(1.09)}}
@keyframes ofm-follow-affirm{0%{transform:scale(1)}42%{transform:translateY(-2px) scale(1.1)}100%{transform:scale(1)}}
@keyframes ofm-follow-release{0%{transform:scale(1)}42%{transform:scale(.93)}100%{transform:scale(1)}}

@media(prefers-reduced-motion:reduce){.ofm-follows__button.is-hydrating svg,.ofm-follows__button.is-follow-activated,.ofm-follows__button.is-unfollow-activated{animation:none}}
.ofm-follows{display:flex;align-items:center;justify-content:center;flex-wrap:wrap;gap:9px;margin:17px 0 0}.ofm-follows__button{display:inline-flex;align-items:center;justify-content:center;gap:7px;min-height:35px;padding:8px 12px;border:1px solid rgba(244,196,48,.48);border-radius:999px;background:rgba(244,196,48,.09);color:#f6d563;font:inherit;font-size:.73rem;font-weight:850;line-height:1;text-decoration:none;cursor:pointer;transition:border-color .18s ease,background .18s ease,color .18s ease,transform .18s ease,box-shadow .18s ease}.ofm-follows__button svg{width:15px;height:15px;fill:none;stroke:currentColor;stroke-linecap:round;stroke-linejoin:round;stroke-width:1.8}.ofm-follows__button:hover,.ofm-follows__button:focus-visible{border-color:#ffe28a;background:rgba(244,196,48,.18);color:#fff;box-shadow:0 6px 16px rgba(0,0,0,.18);outline:0;transform:translateY(-1px)}.ofm-follows__button.is-following{border-color:rgba(134,218,163,.45);background:rgba(134,218,163,.09);color:#b9e8c5}.ofm-follows__button.is-following:hover,.ofm-follows__button.is-following:focus-visible{border-color:rgba(134,218,163,.82);background:rgba(134,218,163,.17);color:#fff}.ofm-follows__button:disabled{cursor:wait;opacity:.66;transform:none}.ofm-follows__count{display:inline-flex;align-items:center;gap:5px;min-height:31px;color:#a9a9a9;font-size:.68rem;font-weight:750;line-height:1}.ofm-follows__count svg{width:14px;height:14px;fill:none;stroke:#d5b84e;stroke-linecap:round;stroke-linejoin:round;stroke-width:1.8}.ofm-follows__count strong{color:#f1f1f1;font-size:.76rem;font-variant-numeric:tabular-nums}.ofm-follows__self{color:#aaa;font-size:.7rem;font-weight:750}.ofm-follows .screen-reader-text{position:absolute;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;clip:rect(0,0,0,0);border:0}.ofm-creator__identity>.ofm-follows{justify-content:flex-start}.ofm-member-profile__followers{display:grid;gap:6px;margin:18px 0 0;padding:13px 14px;border:1px solid rgba(244,196,48,.2);border-radius:13px;background:rgba(244,196,48,.045)}.ofm-member-profile__followers>.ofm-eyebrow{margin:0}.ofm-member-profile__followers>div{display:flex;align-items:center;gap:7px}.ofm-member-profile__followers>div>span{display:grid;place-items:center;width:28px;height:28px;border:1px solid rgba(244,196,48,.26);border-radius:9px;background:rgba(244,196,48,.07);color:#f4c430}.ofm-member-profile__followers>div svg{width:14px;height:14px;fill:none;stroke:currentColor;stroke-linecap:round;stroke-linejoin:round;stroke-width:1.8}.ofm-member-profile__followers strong{color:#fff;font-size:1.12rem;font-variant-numeric:tabular-nums;letter-spacing:-.035em}.ofm-member-profile__followers small{color:#c8b062;font-size:.69rem;font-weight:800;letter-spacing:.05em;text-transform:uppercase}.ofm-member-profile__followers>p:last-child{margin:0;color:#9d9d9d;font-size:.7rem;font-weight:650;line-height:1.4}@media(max-width:620px){.ofm-follows{margin-top:14px}.ofm-follows__button{min-height:38px;padding:9px 13px;font-size:.75rem}.ofm-follows__count{min-height:30px}.ofm-member-profile__followers{margin-top:15px}}@media(prefers-reduced-motion:reduce){.ofm-follows__button{transition:none}}
