.vlfs-widget{display:flex;flex-wrap:wrap;align-items:center;justify-content:center;gap:8px 12px;width:100%;box-sizing:border-box;font-family:inherit;position:relative}
.vlfs-widget *{box-sizing:border-box}
/* Botones brillantes inspirados en los botones azul y verde enviados por el usuario. */
.vlfs-widget .vlfs-follow-btn{
 display:inline-flex!important;justify-content:center;align-items:center;gap:10px;
 min-height:56px;min-width:174px;padding:12px 36px!important;
 border:4px solid #fff!important;border-radius:999px!important;
 color:#fff!important;text-decoration:none!important;text-transform:none!important;
 font-size:19px!important;font-weight:850!important;line-height:1.1!important;white-space:nowrap;
 background:#085cff url('blue-texture.webp') center / 100% 100% no-repeat!important;
 box-shadow:inset 0 1px 3px #ffffffb0,0 5px 15px #0003,0 0 0 1px #b8c6d8!important;
 text-shadow:0 1px 2px #00376a;cursor:pointer;transition:filter .15s ease,transform .15s ease;
}
.vlfs-widget .vlfs-follow-btn:hover,.vlfs-widget .vlfs-follow-btn:focus-visible{filter:brightness(1.09);color:#fff!important;transform:translateY(-1px)}
.vlfs-widget .vlfs-follow-btn.is-following{
 background:#00aa24 url('green-texture.webp') center / 100% 100% no-repeat!important;
 color:#fff!important;border-color:#fff!important;
}
.vlfs-widget .vlfs-follow-btn.is-following:hover{filter:brightness(1.06);color:#fff!important}
.vlfs-widget .vlfs-follow-btn:disabled{opacity:.68;cursor:wait;transform:none}
.vlfs-widget .vlfs-follow-btn:focus-visible{outline:3px solid #122c4b;outline-offset:3px}
.vlfs-widget .vlfs-follow-symbol{font-size:23px;font-weight:900;line-height:1}
/* En el anuncio: ancho completo, centrado, entre los datos del vendedor y mensaje. */
body.single-hp_listing .vlfs-widget, .vlfs-listing-insert .vlfs-widget{
 display:flex!important;flex-direction:column!important;align-items:center!important;justify-content:center!important;
 width:100%;max-width:100%;padding:14px 14px 18px;margin:8px auto 10px!important;
}
body.single-hp_listing .vlfs-widget .vlfs-follow-btn,.vlfs-listing-insert .vlfs-follow-btn{
 width:min(100%,440px)!important;min-height:65px!important;font-size:22px!important;
}
body.single-hp_listing .vlfs-widget .vlfs-followers-details,.vlfs-listing-insert .vlfs-followers-details{align-self:center}
body.single-hp_listing .vlfs-widget .vlfs-followers-details>summary,.vlfs-listing-insert .vlfs-followers-details>summary{justify-content:center;color:#233e36;font-size:15px}
.vlfs-listing-insert{width:100%;margin:0 auto;display:block;box-sizing:border-box}
.vlfs-own{color:#565d68;font-size:13px;font-weight:700}
.vlfs-count-link{color:#4a4e55!important;font-size:13px;text-decoration:none!important;white-space:nowrap}
.vlfs-count-link:hover{text-decoration:underline!important}
.vlfs-full .vlfs-followers-details{position:relative;min-width:116px}
.vlfs-followers-details>summary{list-style:none;cursor:pointer;display:flex;align-items:center;gap:5px;font-size:13px;color:#34383d;padding:9px 0}
.vlfs-followers-details>summary::-webkit-details-marker{display:none}
.vlfs-followers-details>summary:hover{text-decoration:underline}
.vlfs-followers-details .vlfs-number,.vlfs-count-link .vlfs-number{font-weight:800;color:#171717}
.vlfs-preview{position:absolute;z-index:9999;left:0;top:calc(100% + 8px);width:min(310px,82vw);background:#fff;border:1px solid #e2e2e6;border-radius:14px;box-shadow:0 10px 35px #0002;padding:12px;max-height:380px;overflow-y:auto;color:#222;font-size:13px}
.vlfs-hint,.vlfs-empty{margin:8px!important;color:#67707b;font-size:13px}
.vlfs-people{display:flex;flex-direction:column;gap:4px}
.vlfs-person{display:flex;align-items:center;gap:10px;padding:9px;border-radius:10px;color:#1f2937!important;text-decoration:none!important;min-height:52px}
a.vlfs-person:hover{background:#f3f4f6;color:#111!important}
.vlfs-avatar{width:40px;height:40px;border-radius:50%;object-fit:cover;flex-shrink:0}
.vlfs-person-name{font-weight:650;overflow-wrap:anywhere}
.vlfs-more{display:block;text-align:center;margin-top:8px;padding:8px;color:#161616!important;font-weight:750;text-decoration:underline!important}
.vlfs-status{flex-basis:100%;font-size:12px;line-height:1.2;color:#525b65}
.vlfs-status:empty{display:none}
.vlfs-compact{gap:7px 11px}
.vlfs-compact .vlfs-follow-btn{min-height:42px!important;min-width:135px!important;font-size:14px!important;padding:7px 18px!important}
.vlfs-directory{max-width:720px;margin:0 auto 25px;padding:20px;background:#fff;border:1px solid #e6e6e9;border-radius:16px}
.vlfs-directory h2{font-size:23px;margin:0 0 5px;color:#191919}
.vlfs-directory-count{color:#555;margin:0 0 18px}
.vlfs-directory .vlfs-people{gap:3px}
.vlfs-directory .vlfs-person{border-bottom:1px solid #eee;border-radius:3px}
.vlfs-pagination{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-top:24px;font-size:13px}
.vlfs-pagination a{padding:8px 12px;border-radius:7px;background:#ffd629;color:#111;text-decoration:none!important;font-weight:700}
@media(max-width:600px){.vlfs-widget{gap:8px}.vlfs-preview{left:auto;right:-10px;max-width:calc(100vw - 48px)}.vlfs-directory{padding:13px}.vlfs-directory h2{font-size:19px}}

@media(max-width:600px){body.single-hp_listing .vlfs-widget .vlfs-follow-btn,.vlfs-listing-insert .vlfs-follow-btn{width:100%!important;min-height:58px!important} .vlfs-widget .vlfs-follow-btn{font-size:19px!important} .vlfs-followers-details .vlfs-preview{left:50%;right:auto;transform:translateX(-50%);max-width:calc(100vw - 56px)}}

/* HivePress directory: one follow widget per seller, before message action. */
.hp-vendor--view-block .vlfs-widget,
.hp-vendor--view-block .vlfs-listing-insert,
.vlfs-listing-insert .vlfs-widget{
 width:100%!important;max-width:100%!important;
 display:flex!important;flex-direction:column!important;justify-content:center!important;align-items:center!important;
 margin:0 auto!important;clear:both;
}
.hp-vendor--view-block .vlfs-follow-btn,
.vlfs-listing-insert .vlfs-follow-btn{width:min(100%,440px)!important;max-width:100%!important}
.hp-vendor--view-block .vlfs-followers-details {align-self:center}
.hp-vendor--view-block .vlfs-followers-details summary{justify-content:center}
.hp-vendor--view-block .hp-vendor__footer .vlfs-widget{padding:12px 14px 8px}

/* Version 1.3: organized seller profile, without replacing theme name/avatar or message actions. */
.vlfs-profile-panel.vlfs-widget,
body.single-hp_listing .vlfs-profile-panel.vlfs-widget,
.vlfs-listing-insert .vlfs-profile-panel.vlfs-widget,
.hp-vendor--view-block .vlfs-profile-panel.vlfs-widget{
 display:block!important;max-width:100%!important;width:100%!important;
 margin:0 auto!important;padding:14px 16px 14px!important;
 background:transparent;border:0;color:#223b34;text-align:center;
}
.vlfs-profile-panel .vlfs-stats{
 display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr));gap:0;
 width:100%;padding:14px 4px;margin:0 auto 14px;
 background:#f0f7f3;border:1px solid #e1eee7;border-radius:16px;
}
.vlfs-profile-panel .vlfs-stats > *{
 display:flex!important;flex-direction:column;gap:4px;align-items:center;justify-content:center;
 min-width:0;min-height:51px;padding:3px 5px!important;
 border-right:1px solid #d7e7dd;color:#243f35!important;
 text-align:center;text-decoration:none!important;
}
.vlfs-profile-panel .vlfs-stats > :last-child{border-right:0}
.vlfs-profile-panel .vlfs-stats .vlfs-number{font-size:21px!important;font-weight:850;color:#1c3b2f!important;line-height:1.1}
.vlfs-profile-panel .vlfs-stats span{font-size:12px;line-height:1.25;color:#657a70}
.vlfs-profile-panel .vlfs-stats .vlfs-followers-details{position:relative;min-width:0;margin:0}
.vlfs-profile-panel .vlfs-stats .vlfs-followers-details>summary{
 display:flex!important;flex-direction:column!important;gap:4px;justify-content:center;align-items:center;
 margin:0;padding:0!important;list-style:none;cursor:pointer;
}
.vlfs-profile-panel .vlfs-stats .vlfs-followers-details>summary::-webkit-details-marker{display:none}
.vlfs-profile-panel .vlfs-stats .vlfs-followers-details>summary:hover span,
.vlfs-profile-panel .vlfs-stats .vlfs-stat-link:hover span{text-decoration:underline}
.vlfs-profile-panel .vlfs-preview{
 position:absolute;top:calc(100% + 10px);left:0;right:auto;transform:none;
 z-index:2000;width:min(320px,calc(100vw - 44px));max-width:calc(100vw - 44px);
 text-align:left!important;background:#fff!important;
}
.vlfs-profile-panel .vlfs-action-list{display:flex!important;flex-direction:column;align-items:stretch;gap:10px;width:100%;}
.vlfs-profile-panel .vlfs-action-list .vlfs-follow-btn,
body.single-hp_listing .vlfs-profile-panel .vlfs-action-list .vlfs-follow-btn,
.hp-vendor--view-block .vlfs-profile-panel .vlfs-action-list .vlfs-follow-btn{
 display:flex!important;width:100%!important;min-width:0!important;max-width:none!important;
 min-height:62px!important;margin:0!important;text-align:center;
 font-size:20px!important;box-sizing:border-box;
}
.vlfs-profile-panel .vlfs-share-btn{
 display:inline-flex!important;justify-content:center;align-items:center;gap:8px;
 width:100%;min-height:47px;padding:11px 14px!important;margin:0!important;
 border:1px solid #d6e4de!important;border-radius:13px!important;
 background:#f2f7f4!important;color:#254237!important;
 font-size:15px!important;font-weight:700!important;line-height:1.15!important;
 cursor:pointer;box-shadow:none!important;text-transform:none!important;
}
.vlfs-profile-panel .vlfs-share-btn:hover{background:#e5f3ea!important;color:#153c2e!important}
.vlfs-profile-panel .vlfs-share-btn:focus-visible{outline:3px solid #007b69;outline-offset:2px}
.vlfs-profile-panel .vlfs-own{display:block;padding:10px;color:#62746b;font-size:14px;font-weight:700}
.vlfs-profile-panel .vlfs-status:not(:empty){display:block;margin-top:8px;text-align:center;line-height:1.4}
.vlfs-organized-card .vlfs-listing-insert{margin:0!important;width:100%;max-width:100%}
@media(max-width:620px){
 .vlfs-profile-panel.vlfs-widget,
 body.single-hp_listing .vlfs-profile-panel.vlfs-widget,
 .vlfs-listing-insert .vlfs-profile-panel.vlfs-widget{padding:12px 13px!important}
 .vlfs-profile-panel .vlfs-stats .vlfs-number{font-size:20px!important}
 .vlfs-profile-panel .vlfs-stats span{font-size:11px}
 .vlfs-profile-panel .vlfs-stats{padding:12px 2px;margin-bottom:13px}
 .vlfs-profile-panel .vlfs-preview{left:0!important;right:auto!important;transform:none!important}
}
@media(prefers-reduced-motion:reduce){.vlfs-widget .vlfs-follow-btn{transition:none!important}}
