.community-hovercard{position:fixed;width:320px;background:var(--card-background-color);border:1px solid var(--block-border-color);border-radius:12px;box-shadow:0 4px 12px rgba(0,0,0,.08);z-index:1000;opacity:0;transform:translateY(4px);transition:opacity 150ms ease,transform 150ms ease;pointer-events:none;padding:16px 16px 12px 16px;box-sizing:border-box;overflow:hidden}.community-hovercard.visible{opacity:1;transform:translateY(0);pointer-events:auto}.community-hovercard.above{transform:translateY(-4px)}.community-hovercard.above.visible{transform:translateY(0)}.community-hovercard-banner{height:48px;margin:-16px -16px 12px -16px;background-size:cover;background-position:center;background-color:var(--lightest-gray-color,#e5e7eb)}.community-hovercard-icon-link{flex-shrink:0;text-decoration:none;line-height:0}.community-hovercard-header{display:flex;align-items:center;gap:12px;margin-bottom:10px}.community-hovercard-icon{width:48px;height:48px;border-radius:8px;object-fit:cover;flex-shrink:0;background:var(--lightest-gray-color,#e5e7eb)}.community-hovercard-icon-fallback{display:flex;align-items:center;justify-content:center;color:var(--white,#fff);background:var(--primary-color);font-weight:700;font-size:22px}.community-hovercard-identity{min-width:0;flex:1}.community-hovercard-name{font-size:.9375rem;font-weight:600;color:var(--primary-header-color,var(--primary-text-color));white-space:nowrap;overflow:hidden;text-overflow:ellipsis;text-decoration:none;display:block}.community-hovercard-name:hover{text-decoration:underline}.community-hovercard-verified{margin-left:4px;color:var(--primary-color);font-size:.75rem}.community-hovercard-meta{display:flex;align-items:center;gap:6px;margin-top:2px;flex-wrap:wrap;font-size:.75rem}.community-hovercard-slug{color:var(--secondary-text-color)}.community-hovercard-private{color:var(--secondary-text-color);background:var(--lightest-gray-color,#e5e7eb);border-radius:4px;padding:1px 6px;font-size:.6875rem;text-transform:uppercase;letter-spacing:.02em}.community-hovercard-bio{font-size:.8125rem;color:var(--secondary-text-color);line-height:1.4;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;margin-bottom:12px}.community-hovercard-stats{display:flex;gap:24px;margin-bottom:12px}.community-hovercard-stat{display:flex;flex-direction:column;align-items:center}.community-hovercard-stat-value{font-size:.875rem;font-weight:600;color:var(--primary-text-color)}.community-hovercard-stat-label{font-size:.6875rem;color:var(--secondary-text-color);text-transform:uppercase;letter-spacing:.02em}.community-hovercard-private-note{font-size:.8125rem;color:var(--secondary-text-color);font-style:italic;margin-bottom:12px}.community-hovercard-footer{display:flex;align-items:center;justify-content:flex-end;border-top:1px solid var(--block-border-color);padding-top:10px}.community-hovercard-join-btn{padding:5px 14px;border-radius:9999px;font-size:.8125rem;font-weight:600;cursor:pointer;border:1px solid var(--primary-color);background:0 0;color:var(--primary-color);transition:background 150ms ease,color 150ms ease;min-width:78px;text-align:center}.community-hovercard-join-btn:hover{background:var(--primary-color);color:var(--white);transform:none}.community-hovercard-join-btn .join-label-hover{display:none}.community-hovercard-join-btn.joined{background:var(--primary-color);color:var(--white);border-color:var(--primary-color)}.community-hovercard-join-btn.joined:hover{background:var(--red-color,#f87171);border-color:var(--red-color,#f87171);color:#fff;transform:none}.community-hovercard-join-btn.joined:hover .join-label-default{display:none}.community-hovercard-join-btn.joined:hover .join-label-hover{display:inline}.community-hovercard-join-btn.pending{background:0 0;color:var(--secondary-text-color);border:1px dashed var(--secondary-text-color)}.community-hovercard-join-btn.pending:hover{background:var(--red-color,#f87171);border-color:var(--red-color,#f87171);color:#fff;transform:none}.community-hovercard-join-btn.pending:hover .join-label-default{display:none}.community-hovercard-join-btn.pending:hover .join-label-hover{display:inline}.community-hovercard-join-btn.busy{cursor:progress;opacity:.7}.community-hovercard-arrow{position:absolute;width:12px;height:12px;background:var(--card-background-color);border:1px solid var(--block-border-color);transform:rotate(45deg)}.community-hovercard.above .community-hovercard-arrow{bottom:-7px;border-top:none;border-left:none}.community-hovercard.below .community-hovercard-arrow{top:-7px;border-bottom:none;border-right:none}.community-hovercard-skeleton .skeleton-bone{background:var(--lightest-gray-color,#e5e7eb);border-radius:4px;animation:community-hovercard-shimmer 1.2s ease-in-out infinite}.community-hovercard-skeleton .skeleton-icon{width:48px;height:48px;border-radius:8px}.community-hovercard-skeleton .skeleton-line{height:12px;margin-bottom:8px}.community-hovercard-skeleton .skeleton-line-short{width:60%}.community-hovercard-skeleton .skeleton-line-medium{width:80%}.community-hovercard-skeleton .skeleton-line-full{width:100%}@keyframes community-hovercard-shimmer{0%,100%{opacity:.4}50%{opacity:1}}@media (hover:none){.community-hovercard{display:none!important}}