/* One viewer surface, one video and one chat: B by default, A when expanded. */
@layer falue-approved-typography {
 /* Caption adapters place the preview beside the media in legacy Live wrappers.
    Keep that wrapper a vertical media/description stack at every breakpoint. */
 html body [data-falue-post-placard] .tag_post_full_img:has(> .flv-ended-preview, > .flv){display:block!important;}
 /* A timeline card contains media only. The shared post supplies its footer. */
 html body :is([data-falue-post-placard][data-kind=live],[data-falue-repost-original][data-falue-shared-media-type=live]) .flv:not(.flv-open){display:block!important;background:transparent!important;gap:0!important;margin:0!important;padding:0!important;}
 html body :is([data-falue-post-placard][data-kind=live],[data-falue-repost-original][data-falue-shared-media-type=live]) .flv:not(.flv-open) :is(.flv-header,.flv-identity,.flv-title,.flv-conversation,.flv-composer,.flv-notice){display:none!important;}
 html body :is([data-falue-post-placard][data-kind=live],[data-falue-repost-original][data-falue-shared-media-type=live]) .flv:not(.flv-open) .flv-placard{border-radius:0!important;box-shadow:none!important;border:0!important;}
 html body :is([data-falue-post-placard][data-kind=live],[data-falue-repost-original][data-falue-shared-media-type=live]) .flv:not(.flv-open) .flv-stage{width:100%!important;height:auto!important;min-height:0!important;max-height:none!important;aspect-ratio:16/9!important;border-radius:0!important;}
 html body .flv-ended-preview{display:block!important;position:relative!important;width:100%!important;aspect-ratio:16/9!important;min-height:0!important;height:auto!important;margin:0!important;padding:0!important;overflow:hidden!important;background:var(--fsc-paper,#fff)!important;}
 html body .flv-ended-preview .flv-ended-thumbnail{display:block!important;position:relative!important;inset:auto!important;width:100%!important;height:auto!important;max-height:none!important;margin:0!important;border:0!important;border-radius:0!important;object-fit:contain!important;}
 html body .flv-ended-preview .flv-ended-fallback{display:none!important;}
 html body .flv-ended-preview[data-poster-failed] .flv-ended-thumbnail{display:none!important;}
 html body .flv-ended-preview[data-poster-failed] .flv-ended-fallback{display:flex!important;position:absolute!important;inset:0!important;align-items:center!important;justify-content:center!important;flex-direction:column!important;gap:12px!important;background:linear-gradient(145deg,#ede8fc,#e5edf8)!important;color:#514967!important;font:14px/1.4 Convergence,sans-serif!important;text-align:center!important;padding:24px!important;}
 html body .flv-ended-fallback svg{width:38px!important;height:38px!important;}
 html.falue-night-mode body .flv-ended-preview[data-poster-failed] .flv-ended-fallback{background:linear-gradient(145deg,#272339,#232b3d)!important;color:#d9d3eb!important;}
 html body .flv.flv-ended :is(.flv-watch,.flv-volume,.flv-expand,.flv-viewers){display:none!important;}
 html body .flv.flv-ended .falue-live-status:not(.hidden){background:linear-gradient(145deg,#272339,#232b3d)!important;}
 /* Global avatar decorators must remain inside this viewer's 42px avatar. */
 html body .flv .flv-person>:is(.user-rating-avatar-shell,.user-rating-avatar-target){flex:0 0 42px!important;width:42px!important;height:42px!important;min-width:42px!important;max-width:42px!important;position:relative!important;}
 html body .flv .flv-person img:not(.user-rating-badge img){width:42px!important;height:42px!important;max-width:42px!important;object-fit:cover!important;}
}
html body .flv{--lv-bg:var(--falue-bg,#f8fafc);--lv-paper:var(--falue-surface,#fff);--lv-ink:var(--falue-text,#242637);--lv-muted:var(--falue-text-secondary,#606477);--lv-shadow:0 4px 14px rgba(18,20,30,.10);position:relative;display:flex;flex-direction:column;gap:12px;min-width:0;width:100%;background:var(--lv-bg);color:var(--lv-ink);font:14px/1.4 Convergence,sans-serif;text-align:start;isolation:isolate}
.flv,.flv *,.flv *::before,.flv *::after{box-sizing:border-box}
html body .flv :is(button,input,a){-webkit-tap-highlight-color:transparent}
html body .flv button{font:inherit;letter-spacing:normal;text-transform:none;border:0;cursor:pointer;touch-action:manipulation}
html body .flv :is(button,a,input):focus-visible{outline:2px solid currentColor;outline-offset:-3px}
.flv svg{width:22px;height:22px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round;flex-shrink:0}
html body .flv .flv-circle{display:inline-flex;align-items:center;justify-content:center;width:44px;min-width:44px;height:44px;border-radius:50%;padding:0;background:var(--lv-paper);color:var(--lv-ink);box-shadow:var(--lv-shadow);border:0;flex-shrink:0}
.flv-header{display:none;align-items:center;justify-content:space-between;flex:0 0 46px;gap:12px;position:relative;z-index:5}
.flv-brand{font-size:26px}
.flv-placard{border-radius:24px;overflow:hidden;background:var(--lv-paper);box-shadow:var(--lv-shadow);flex-shrink:0;min-height:0}
.flv-stage{position:relative;aspect-ratio:4/3;min-height:0;overflow:hidden;background:#101116;color:#fff}
.flv-stage .falue-live-video{display:block;width:100%;height:100%;object-fit:contain;background:#101116}
.flv-stage .falue-live-status{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;padding:65px 25px;background:rgba(10,11,17,.52);color:#fff;font-size:14px;text-align:center;pointer-events:none;z-index:2}
.flv-stage .falue-live-status.hidden{display:none}
.flv-badges{position:absolute;top:14px;inset-inline:14px;display:flex;align-items:center;justify-content:space-between;gap:10px;z-index:3;pointer-events:none}
.flv-live,.flv-viewers{display:inline-flex;align-items:center;gap:6px;max-width:75%;padding:6px 10px;border-radius:20px;background:rgba(20,22,31,.72);color:#fff;font-size:12px;line-height:1.3}
.flv-live::before{content:'';width:6px;height:6px;flex:0 0 6px;border-radius:50%;background:currentColor}
[data-live-viewer-state=live] .flv-live{background:#eb3154}
.flv-viewers svg{width:17px;height:17px}
html body .flv .flv-volume,html body .flv .flv-expand{position:absolute;bottom:12px;z-index:4;background:rgba(24,26,35,.72);color:#fff;box-shadow:none}
.flv-volume{inset-inline-start:12px}.flv-expand{inset-inline-end:12px}
.flv-sound-on,.flv-collapse-icon{display:none}
.flv-volume[aria-pressed=true] .flv-sound-on{display:block}.flv-volume[aria-pressed=true] .flv-sound-off{display:none}
html body .flv .flv-watch{position:absolute;bottom:12px;left:50%;transform:translateX(-50%);height:44px;max-width:calc(100% - 132px);padding:0 18px;background:#fff;color:#242637;border-radius:24px;box-shadow:var(--lv-shadow);z-index:4;white-space:nowrap}
.flv-identity{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px 14px;position:relative}
.flv-identity::before{content:'';position:absolute;top:0;inset-inline:8%;height:9px;pointer-events:none;background:linear-gradient(180deg,rgba(12,14,22,.12),transparent);mask-image:linear-gradient(90deg,transparent,#000 14%,#000 86%,transparent)}
.flv-person{display:flex;align-items:center;gap:10px;min-width:0;text-decoration:none!important;color:var(--lv-ink)!important}
.flv-person img{width:42px;height:42px;border-radius:50%;object-fit:cover;flex-shrink:0}
.flv-person>span{min-width:0}.flv-person strong,.flv-person small{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:44vw}
.flv-person strong{font-weight:400;font-size:16px}.flv-person small{font-size:12px;color:var(--lv-muted)}
.flv-follow{flex-shrink:0}.flv-follow:empty{display:none}
html body .flv .flv-follow :is(button,a){display:inline-flex;align-items:center;justify-content:center;gap:6px;min-height:40px;margin:0;padding:8px 14px;border:0;border-radius:24px;background:var(--falue-action-bg,#17181f);color:var(--falue-action-text,#fff);box-shadow:var(--lv-shadow);font:13px/1.3 Convergence,sans-serif}
.flv-follow svg{width:16px;height:16px}
html body .flv .flv-title{font:18px/1.35 Convergence,sans-serif;color:inherit;margin:0;padding:0 14px;overflow-wrap:anywhere;flex-shrink:0}
.flv-conversation{display:flex;flex-direction:column;min-height:0;gap:10px;padding:0 14px;flex:1}
.flv-chat-heading{display:flex;align-items:center;justify-content:space-between;gap:10px;flex-shrink:0}
html body .flv h3{display:inline-block;font:16px/1.5 Convergence,sans-serif;color:inherit;padding:0 0 8px;margin:0;position:relative}
.flv h3::after{content:'';position:absolute;bottom:0;inset-inline:0;height:3px;border-radius:3px;background:currentColor}
.flv-actions{display:flex;align-items:center;gap:10px}
html body .flv .falue-rating-summary{display:inline-flex;align-items:center;justify-content:center;gap:5px;min-width:44px;height:44px;padding:8px;border:0;border-radius:24px;background:var(--lv-paper);color:var(--lv-ink);box-shadow:var(--lv-shadow)}
.flv .falue-rating-summary__heart{width:24px;height:24px}.flv .falue-rating-summary__heart img{width:24px;height:24px}.flv .falue-rating-summary__score{font-size:12px}
.flv-comments{overflow:auto;overscroll-behavior:contain;scrollbar-width:none;min-height:0;max-height:220px;scroll-padding:10px;flex:1}
.flv-comments::-webkit-scrollbar{display:none}
.flv .live_comments{display:flex;gap:10px;margin:0;padding:8px 0;color:inherit;min-width:0}
.flv .live_comments>a{flex:0 0 34px;float:none!important;margin:0}
.flv .live_comments .avatar{height:34px;width:34px;object-fit:cover;border-radius:50%;margin:0}
.flv .comment-body{flex:1;min-width:0;margin:0;padding:0;background:none}
.flv .comment-heading,.flv .tag_comm_body,.flv .tag_comm_body>div{margin:0;padding:0;background:none;box-shadow:none;color:inherit}
.flv .tag_comm_body{display:block}
.flv .tag_comm_body>div:first-child{display:flex;align-items:center;gap:5px}
html body .flv .live_comments h4{font:13px/1.4 Convergence,sans-serif;margin:0;color:var(--lv-ink)!important}
html body .flv .live_comments a{color:inherit;text-decoration:none}
html body .flv .live_comments .comment-text{font:14px/1.45 Convergence,sans-serif;color:var(--lv-muted);overflow-wrap:anywhere;background:transparent;border:0;box-shadow:none;border-radius:0;padding:2px 0;margin:0}
.flv .comment-text img{max-width:100%}
.flv .comment-text,.flv-title{unicode-bidi:plaintext}
.flv-empty{display:none;margin:8px 0 18px;text-align:center;color:var(--lv-muted);font-size:14px}
.flv-comments:empty{display:none}.flv-comments:empty+.flv-empty{display:block}
.flv-composer{flex-shrink:0;padding:8px 14px 14px;min-width:0;background:var(--lv-bg)}
html body .flv .falue-live-chat-form{display:flex;gap:10px;width:100%;margin:0;padding:0;border:0;background:transparent;box-shadow:none}
html body .flv .falue-live-chat-input{height:46px;min-width:0;flex:1;border:0;border-radius:25px;padding:10px 16px;font:16px/1.4 Convergence,sans-serif;color:var(--lv-ink)!important;background:var(--lv-paper)!important;box-shadow:var(--lv-shadow);margin:0}
.flv .falue-live-chat-input::placeholder{color:var(--lv-muted);opacity:1}
html body .flv .falue-live-chat-send{width:46px;min-width:46px;height:46px;background:var(--falue-action-bg,#17181f);color:var(--falue-action-text,#fff)}
.flv .falue-live-chat-send:disabled{opacity:.45}
.flv-send-state{display:none}.flv .is-error .falue-live-chat-send{color:#e15366}
.flv-notice{margin:0;padding:0 14px;color:var(--lv-muted);font-size:13px}.flv-notice:empty{display:none}
.flv-login{display:block;padding:12px;text-align:center;color:var(--lv-ink);background:var(--lv-paper);border-radius:25px;box-shadow:var(--lv-shadow)}
.flv-placeholder{min-width:0}.flv-placeholder>.flv-placeholder-label{display:flex;align-items:center;justify-content:center;min-height:130px;color:var(--falue-text-secondary,#606477)}
body.flv-viewing{position:fixed!important;width:100%;overflow:hidden!important;overscroll-behavior:none}
html body .flv.flv-open{position:fixed;top:var(--flv-top,0px);left:0;width:100%;height:var(--flv-height,100dvh);z-index:1200;padding:calc(env(safe-area-inset-top,0px) + 8px) max(14px,calc((100% - 640px)/2)) calc(env(safe-area-inset-bottom,0px) + 8px);gap:12px;overflow:hidden}
.flv-open .flv-header{display:flex}.flv-open .flv-watch{display:none!important}
.flv-open .flv-stage{aspect-ratio:auto;height:clamp(130px,34dvh,380px);height:clamp(130px,calc(var(--flv-height,100dvh)*.34),380px)}
.flv-open .flv-title{padding:0;font-size:18px;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.flv-open .flv-conversation{padding:0}.flv-open .flv-comments{max-height:none}
.flv-open .flv-composer{padding:4px 0 0}.flv-open .flv-notice{padding:0}
.flv-open .flv-identity{padding:10px 12px}.flv-open .flv-person img{width:40px;height:40px}
html body .flv.flv-immersive{background:#101116;color:#fff;--lv-ink:#242637;--lv-paper:#fff;--lv-muted:#eee;padding:calc(env(safe-area-inset-top,0px) + 12px) 16px calc(env(safe-area-inset-bottom,0px) + 12px);gap:10px}
.flv-immersive::before{content:'';position:absolute;inset:0;z-index:1;pointer-events:none;background:linear-gradient(180deg,rgba(0,0,0,.40),transparent 25%,transparent 50%,rgba(0,0,0,.72))}
.flv-immersive .flv-placard{position:absolute;inset:0;border-radius:0;box-shadow:none;overflow:visible;background:none}
.flv-immersive .flv-stage{width:100%;height:100%;aspect-ratio:auto;overflow:hidden}
.flv-immersive .falue-live-video{object-fit:cover;background:#101116}
.flv-immersive[data-live-orientation=landscape] .falue-live-video{object-fit:contain}
.flv-immersive .flv-header{justify-content:flex-end;z-index:5;pointer-events:none}
.flv-immersive .flv-header button{pointer-events:auto}
.flv-immersive .flv-header>button:first-child,.flv-immersive .flv-brand{display:none}
.flv-immersive .flv-identity{position:absolute;top:calc(env(safe-area-inset-top,0px) + 12px);inset-inline-start:16px;z-index:4;background:#fff;border-radius:32px;padding:6px 14px 6px 6px;max-width:calc(100% - 138px);box-shadow:var(--lv-shadow)}
.flv-immersive .flv-person{color:#242637!important}.flv-immersive .flv-person small{color:#606477}.flv-immersive .flv-person strong{font-size:14px;max-width:45vw}.flv-immersive .flv-person img{width:36px;height:36px}
.flv-immersive .flv-identity::before,.flv-immersive .flv-follow{display:none}
.flv-immersive .flv-badges{top:calc(env(safe-area-inset-top,0px) + 72px);inset-inline:16px;justify-content:flex-start}
html body .flv-immersive .flv-expand{top:calc(env(safe-area-inset-top,0px) + 12px);bottom:auto;inset-inline-end:70px;background:#fff;color:#242637;box-shadow:var(--lv-shadow)}
.flv-immersive .flv-expand-icon{display:none}.flv-immersive .flv-collapse-icon{display:inline-flex}
html body .flv-immersive .flv-volume{bottom:calc(env(safe-area-inset-bottom,0px) + 80px);inset-inline-start:auto;inset-inline-end:16px;background:#fff;color:#242637}
html body .flv.flv-immersive .flv-title{margin-top:auto;position:relative;z-index:3;color:#fff;max-width:calc(100% - 62px);font-size:17px;padding:0}
.flv-immersive .flv-conversation{flex:0 1 190px;max-height:25%;width:calc(100% - 62px);z-index:3;position:relative;margin-top:auto}
.flv-immersive .flv-title+.flv-conversation{margin-top:0}
.flv-immersive .flv-chat-heading{position:fixed;inset-inline-end:16px;bottom:calc(env(safe-area-inset-bottom,0px) + 136px)}
.flv-immersive .flv-chat-heading h3{display:none}.flv-immersive .flv-actions{flex-direction:column;gap:12px}
.flv-immersive .flv-comments{mask-image:linear-gradient(transparent,#000 12px)}
html body .flv-immersive .live_comments a,html body .flv.flv-immersive .live_comments h4,html body .flv-immersive .live_comments .comment-text{color:#fff!important}
.flv-immersive .flv-composer{position:relative;z-index:4;background:none;padding:0}
html body .flv-immersive .falue-live-chat-input{color:#242637!important;background:#fff!important}.flv-immersive .falue-live-chat-input::placeholder{color:#606477}
.flv-immersive .flv-notice{position:relative;z-index:4;color:#fff}
.flv.flv-keyboard .flv-stage{height:110px}.flv.flv-keyboard .flv-identity,.flv.flv-keyboard .flv-title{display:none}
.flv.flv-immersive.flv-keyboard .flv-stage{height:100%}.flv.flv-immersive.flv-keyboard .flv-identity{display:flex}
@media(max-height:650px){.flv-open:not(.flv-immersive) .flv-stage{height:25dvh}.flv-open{gap:8px!important}.flv-open .flv-person img{width:32px;height:32px}.flv-open .flv-identity{padding:7px 10px}.flv-open .flv-header{flex-basis:44px}.flv-open .flv-title{font-size:16px}}
@media(min-width:1025px){.flv-open:not(.flv-immersive) .flv-stage{height:35dvh}.flv-immersive .falue-live-video{object-fit:contain}}
@media(prefers-reduced-motion:no-preference){.flv-circle{transition:background-color .15s,transform .15s}.flv-circle:active{transform:scale(.96)}}
