.forum-hub-widget {
    --fh-surface: var(--nx-color-card-bg, var(--bs-card-bg, #fff));
    --fh-soft: color-mix(in srgb, var(--fh-surface) 94%, var(--nx-color-primary, #f58220));
    --fh-border: var(--nx-color-card-border, var(--bs-border-color, #dbe1e9));
    --fh-text: var(--nx-color-on-surface, var(--bs-body-color, #182033));
    --fh-muted: var(--nx-color-muted, var(--bs-secondary-color, #667085));
    --fh-accent: var(--nx-color-primary, var(--bs-primary, #f58220));
    --fh-success: var(--nx-color-success, var(--bs-success, #1fa463));
    display: grid; gap: .7rem; width: 100%; min-width: 0; color: var(--fh-text); font: inherit;
}
.forum-hub-widget__panel {
    min-width: 0; padding: .85rem; overflow: hidden; color: var(--fh-text); background: var(--fh-surface);
    border: 1px solid var(--fh-border); border-radius: var(--nx-component-radius, .65rem);
    box-shadow: var(--nx-component-shadow, 0 .25rem 1rem rgb(15 23 42 / .05));
}
.forum-hub-widget__heading { margin: 0 0 .7rem; color: var(--fh-text); font-size: .78rem; font-weight: 750; line-height: 1.25; }
.forum-hub-widget__identity { display: flex; gap: .7rem; align-items: center; margin-bottom: .7rem; color: var(--fh-text); text-decoration: none; }
.forum-hub-widget__identity:hover strong, .forum-hub-widget__topics a:hover { color: var(--fh-accent); }
.forum-hub-widget__avatar { position: relative; flex: 0 0 2.7rem; width: 2.7rem; height: 2.7rem; }
.forum-hub-widget__avatar img, .forum-hub-widget__faces img { display: block; width: 100%; height: 100%; object-fit: cover; border-radius: 50%; }
.forum-hub-widget__avatar img { border: 2px solid color-mix(in srgb, var(--fh-accent) 38%, var(--fh-border)); }
.forum-hub-widget__avatar > i { position: absolute; right: -.05rem; bottom: .05rem; width: .65rem; height: .65rem; background: var(--fh-success); border: 2px solid var(--fh-surface); border-radius: 50%; }
.forum-hub-widget__identity > span:last-child { display: grid; min-width: 0; }
.forum-hub-widget__identity strong { overflow: hidden; font-size: .82rem; line-height: 1.25; text-overflow: ellipsis; white-space: nowrap; }
.forum-hub-widget__identity small { display: flex; gap: .35rem; align-items: center; margin-top: .14rem; color: var(--fh-success); font-size: .65rem; }
.forum-hub-widget__identity small i { width: .35rem; height: .35rem; background: currentColor; border-radius: 50%; }
.forum-hub-widget__quicklinks { display: grid; gap: .1rem; }
.forum-hub-widget__quicklinks a { display: grid; grid-template-columns: 1rem minmax(0, 1fr) auto; gap: .5rem; align-items: center; min-height: 1.8rem; padding: .24rem .15rem; color: var(--fh-text); font-size: .69rem; text-decoration: none; border-radius: .35rem; }
.forum-hub-widget__quicklinks a:hover { color: var(--fh-accent); background: var(--fh-soft); }
.forum-hub-widget__quicklinks i, .forum-hub-widget__topics > article > i, .forum-hub-widget__stats i, .forum-hub-widget__newest > i { color: var(--fh-accent); }
.forum-hub-widget__quicklinks b { min-width: 1.55rem; padding: .15rem .38rem; color: var(--fh-text); font-size: .61rem; text-align: center; background: color-mix(in srgb, var(--fh-muted) 16%, transparent); border-radius: 999px; }
.forum-hub-widget__online { display: grid; gap: .45rem; }
.forum-hub-widget__faces { display: flex; min-height: 2rem; align-items: center; }
.forum-hub-widget__faces a, .forum-hub-widget__faces > span { display: grid; flex: 0 0 2rem; width: 2rem; height: 2rem; place-items: center; margin-left: -.38rem; overflow: hidden; color: var(--fh-text); font-size: .62rem; font-weight: 700; text-decoration: none; background: var(--fh-soft); border: 2px solid var(--fh-surface); border-radius: 50%; }
.forum-hub-widget__faces > :first-child { margin-left: 0; }
.forum-hub-widget__online p, .forum-hub-widget__guest, .forum-hub-widget__empty { margin: 0; color: var(--fh-muted); font-size: .63rem; line-height: 1.45; }
.forum-hub-widget__topics { display: grid; }
.forum-hub-widget__topics article { display: grid; grid-template-columns: 1rem minmax(0, 1fr) auto; gap: .5rem; align-items: center; padding: .52rem 0; border-top: 1px solid color-mix(in srgb, var(--fh-border) 78%, transparent); }
.forum-hub-widget__topics article:first-child { padding-top: 0; border-top: 0; }
.forum-hub-widget__topics article:last-child { padding-bottom: 0; }
.forum-hub-widget__topics article > div { display: grid; min-width: 0; }
.forum-hub-widget__topics a { display: -webkit-box; overflow: hidden; color: var(--fh-text); font-size: .69rem; font-weight: 700; line-height: 1.3; text-decoration: none; -webkit-box-orient: vertical; -webkit-line-clamp: 2; }
.forum-hub-widget__topics small { overflow: hidden; margin-top: .12rem; color: var(--fh-muted); font-size: .57rem; text-overflow: ellipsis; white-space: nowrap; }
.forum-hub-widget__topics article > strong { display: grid; min-width: 2.25rem; color: var(--fh-text); font-size: .68rem; line-height: 1; text-align: right; }
.forum-hub-widget__topics article > strong small { margin-top: .25rem; font-size: .49rem; font-weight: 500; }
.forum-hub-widget__stats { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); margin-bottom: .7rem; }
.forum-hub-widget__stats > div { display: grid; place-items: center; padding: .1rem .3rem; border-left: 1px solid var(--fh-border); }
.forum-hub-widget__stats > div:first-child { border-left: 0; }
.forum-hub-widget__stats i { margin-bottom: .3rem; color: var(--fh-accent); font-size: .82rem; }
.forum-hub-widget__stats strong { font-size: .77rem; line-height: 1; }
.forum-hub-widget__stats span { margin-top: .22rem; color: var(--fh-muted); font-size: .52rem; }
.forum-hub-widget__newest { display: flex; gap: .45rem; align-items: center; padding-top: .65rem; color: var(--fh-muted); font-size: .59rem; text-decoration: none; border-top: 1px solid var(--fh-border); }
.forum-hub-widget__newest:hover, .forum-hub-widget__newest strong { color: var(--fh-accent); }
.forum-hub-widget__login { display: inline-flex; gap: .4rem; align-items: center; margin-top: .65rem; padding: .48rem .7rem; color: var(--nx-color-on-primary, #fff); font-size: .68rem; font-weight: 700; text-decoration: none; background: var(--fh-accent); border-radius: var(--nx-button-radius, .45rem); }
.forum-hub-widget__login:hover { color: var(--nx-color-on-primary, #fff); filter: brightness(.96); }
.forum-hub-widget.is-compact { gap: .5rem; }
.forum-hub-widget.is-compact .forum-hub-widget__panel { padding: .68rem; }
@media (max-width: 360px) { .forum-hub-widget__panel { padding: .7rem; } .forum-hub-widget__topics article { grid-template-columns: .9rem minmax(0, 1fr) auto; gap: .38rem; } }
