/* bk442 phase 3: full-screen film viewer */
.fvx{position:fixed;inset:0;z-index:9999;background:#000;overflow:hidden;touch-action:none}
.fvx-box{position:absolute;transition:transform .25s ease;transform-origin:50% 50%}
.fvx-stage{position:absolute;inset:0;overflow:hidden}
.fvx-inner{position:absolute;inset:0;transition:transform .2s ease}
.fvx-inner video,.fvx-inner canvas{position:absolute;inset:0;width:100%;height:100%;object-fit:contain}
.fvx-inner canvas{pointer-events:none}
.fvx-top,.fvx-bot{position:absolute;left:0;right:0;display:flex;align-items:center;gap:10px;padding:12px 14px;color:#fff;background:linear-gradient(rgba(0,0,0,.55),transparent)}
.fvx-top{top:0}.fvx-bot{bottom:0;background:linear-gradient(transparent,rgba(0,0,0,.6))}
.fvx-top b{flex:1;font:600 14px/1.2 system-ui,sans-serif;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.fvx button{min-width:44px;min-height:44px;border:0;border-radius:22px;background:rgba(255,255,255,.14);color:#fff;font:600 13px system-ui,sans-serif;cursor:pointer;padding:0 12px}
.fvx button.on{background:#F2B84B;color:#15110E}
.fvx-scrub{flex:1;height:44px;display:flex;align-items:center;cursor:pointer}
.fvx-scrub:before{content:"";position:absolute;left:0;right:0;height:4px;border-radius:2px;background:rgba(255,255,255,.25)}
.fvx-scrub{position:relative}.fvx-scrub i{position:relative;display:block;height:4px;border-radius:2px;background:#F2B84B;width:0}
.fvx [data-tc]{font:12px ui-monospace,monospace;min-width:34px}
