.fbf-app{--fbf-accent:var(--color-brand-600,#e65100);--fbf-accent-hover:var(--color-brand-900,#374151);--fbf-accent-soft:color-mix(in srgb, var(--color-brand-600,#e65100) 12%, transparent);--fbf-ink:var(--color-brand-900,#374151);--fbf-ink-dim:#64748b;--fbf-ink-faint:#94a3b8;--fbf-surface:#fff;--fbf-surface-2:#f8fafc;--fbf-surface-3:color-mix(in srgb, var(--color-brand-900,#374151) 3%, #fff);--fbf-line:color-mix(in srgb, var(--color-brand-900,#374151) 12%, transparent);--fbf-line-2:color-mix(in srgb, var(--color-brand-900,#374151) 18%, transparent);--fbf-radius:.75rem;--fbf-radius-sm:.5rem;color:var(--fbf-ink);background:var(--fbf-surface);border:1px solid var(--fbf-line);border-radius:var(--fbf-radius);padding:clamp(1.15rem,3vw,1.5rem);font-size:14px;box-shadow:0 1px 2px #0f172a0f}.fbf-app *,.fbf-app :before,.fbf-app :after{box-sizing:border-box}.fbf-app .hidden{display:none!important}.fbf-app :where(button,select,input,a):focus-visible{outline:2px solid var(--fbf-accent);outline-offset:2px}.fbf-topbar{border-bottom:1px solid var(--fbf-line);flex-wrap:wrap;align-items:center;gap:.75rem 1.25rem;padding-bottom:.85rem;display:flex}.fbf-brand{align-items:center;gap:.55rem;display:inline-flex}.fbf-brand-mark{background:var(--fbf-accent);border-radius:3px;width:12px;height:12px}.fbf-brand-name{letter-spacing:.01em;color:var(--fbf-ink);font-size:.95rem;font-weight:600}.fbf-source{align-items:center;gap:.5rem;display:inline-flex}.fbf-kicker{letter-spacing:.1em;text-transform:uppercase;color:var(--fbf-accent);font-size:.68rem;font-weight:700}.fbf-filemeta{flex-direction:column;align-items:flex-end;min-width:0;margin-left:auto;line-height:1.25;display:flex}.fbf-filemeta-name{text-overflow:ellipsis;white-space:nowrap;max-width:46ch;color:var(--fbf-ink);font-size:.82rem;overflow:hidden}.fbf-filemeta-dim{color:var(--fbf-ink-faint);font-variant-numeric:tabular-nums;font-size:.72rem}.fbf-seg{background:var(--fbf-surface-2);border:1px solid var(--fbf-line-2);border-radius:.6rem;gap:2px;padding:3px;display:inline-flex}.fbf-seg>button{appearance:none;cursor:pointer;font:inherit;color:var(--fbf-ink-dim);background:0 0;border:0;border-radius:.4rem;padding:.4rem .85rem;font-size:.82rem;font-weight:600;transition:background .15s,color .15s}.fbf-seg>button:hover{color:var(--fbf-ink);background:color-mix(in srgb, var(--color-brand-900,#374151) 5%, transparent)}.fbf-seg>button[aria-pressed=true]{color:#fff;background:var(--fbf-accent)}.fbf-intake{margin-top:1.25rem}.fbf-drop{text-align:center;border:2px dashed color-mix(in srgb, var(--color-brand-600,#e65100) 35%, transparent);border-radius:var(--fbf-radius);background:color-mix(in srgb, var(--color-brand-50,#fdf3ec) 45%, #fff);cursor:pointer;flex-direction:column;justify-content:center;align-items:center;gap:.35rem;padding:clamp(1.75rem,6vw,3rem) 1.25rem;transition:border-color .18s,background .18s;display:flex}.fbf-drop:hover{border-color:var(--fbf-accent);background:color-mix(in srgb, var(--color-brand-50,#fdf3ec) 75%, #fff)}.fbf-drop:focus-within{border-color:var(--fbf-accent);outline:2px solid var(--fbf-accent);outline-offset:3px}.fbf-drop-icon{width:32px;height:32px;color:var(--fbf-accent);margin-bottom:.2rem}.fbf-drop-title{color:var(--fbf-ink);font-size:1rem;font-weight:600}.fbf-drop-sub{color:var(--fbf-ink-dim);font-size:.85rem}.fbf-drop-cta{color:var(--fbf-accent);text-underline-offset:2px;font-weight:600;text-decoration:underline}.fbf-drop-formats{letter-spacing:.02em;color:var(--fbf-ink-faint);margin-top:.35rem;font-size:.72rem}.fbf-url-row{flex-wrap:wrap;gap:.5rem;margin-top:.5rem;display:flex}.fbf-field{border-radius:var(--fbf-radius-sm);border:1px solid var(--fbf-line-2);background:var(--fbf-surface);min-width:0;color:var(--fbf-ink);font:inherit;flex:16rem;padding:.55rem .8rem;font-size:.88rem}.fbf-field::placeholder{color:var(--fbf-ink-faint)}.fbf-field:focus{border-color:var(--fbf-accent);box-shadow:0 0 0 3px var(--fbf-accent-soft);outline:none}.fbf-btn,.fbf-num,.fbf-btn-ghost{appearance:none;cursor:pointer;font:inherit;color:var(--fbf-ink);background:var(--fbf-surface);border:1px solid var(--fbf-line-2);border-radius:var(--fbf-radius-sm);padding:.5rem .8rem;font-size:.82rem;font-weight:600;transition:background .14s,border-color .14s,box-shadow .14s}.fbf-btn:hover,.fbf-num:hover,.fbf-btn-ghost:hover{background:color-mix(in srgb, var(--color-brand-900,#374151) 5%, transparent)}.fbf-btn:disabled,.fbf-num:disabled{opacity:.4;cursor:not-allowed}.fbf-btn[aria-pressed=true]{background:var(--fbf-accent);border-color:var(--fbf-accent);color:#fff}.fbf-btn[aria-pressed=true]:hover{background:var(--fbf-accent-hover);border-color:var(--fbf-accent-hover)}.fbf-btn-ghost{color:var(--fbf-ink-dim);background:0 0;border-color:#0000}.fbf-btn-ghost:hover{color:var(--fbf-ink);background:color-mix(in srgb, var(--color-brand-900,#374151) 5%, transparent)}.fbf-btn-accent{background:var(--fbf-accent);border-color:var(--fbf-accent);color:#fff}.fbf-btn-accent:hover{background:var(--fbf-accent-hover);border-color:var(--fbf-accent-hover)}.fbf-btn-primary{appearance:none;cursor:pointer;font:inherit;color:#fff;background:var(--fbf-accent);border:1px solid var(--fbf-accent);border-radius:var(--fbf-radius-sm);padding:.6rem 1.4rem;font-size:.9rem;font-weight:600;transition:background .14s;box-shadow:0 1px 2px #0f172a14}.fbf-btn-primary:hover{background:var(--fbf-accent-hover);border-color:var(--fbf-accent-hover)}.fbf-stepper{border:1px solid var(--fbf-line-2);border-radius:var(--fbf-radius-sm);background:var(--fbf-surface);display:inline-flex;overflow:hidden}.fbf-stepper .fbf-num{border:0;border-right:1px solid var(--fbf-line);font-variant-numeric:tabular-nums;background:0 0;border-radius:0;padding:.5rem .7rem}.fbf-stepper .fbf-num:last-child{border-right:0}.fbf-stepper .fbf-num:hover:not(:disabled){background:color-mix(in srgb, var(--color-brand-900,#374151) 5%, transparent)}.fbf-stepper .fbf-num-unit{background:var(--fbf-surface-2);color:var(--fbf-accent);font-weight:700}.fbf-stepper .fbf-num-unit:hover:not(:disabled){background:color-mix(in srgb, var(--color-brand-600,#e65100) 10%, transparent)}.fbf-row{flex-wrap:wrap;align-items:center;gap:.5rem;margin-top:.85rem;display:flex}.fbf-transport{gap:.65rem}.fbf-framerow{gap:.5rem .85rem}.fbf-group-label{letter-spacing:.1em;text-transform:uppercase;color:var(--fbf-ink-faint);font-size:.66rem;font-weight:700}.fbf-push{margin-left:auto}.fbf-vsep{background:var(--fbf-line);align-self:stretch;width:1px;min-height:1.6rem}.fbf-inline{letter-spacing:.08em;text-transform:uppercase;color:var(--fbf-ink-faint);align-items:center;gap:.4rem;font-size:.66rem;font-weight:700;display:inline-flex}.fbf-select{appearance:none;font:inherit;letter-spacing:0;text-transform:none;color:var(--fbf-ink);background-color:var(--fbf-surface);border:1px solid var(--fbf-line-2);border-radius:var(--fbf-radius-sm);background-image:linear-gradient(45deg, transparent 50%, var(--fbf-ink-dim) 50%), linear-gradient(135deg, var(--fbf-ink-dim) 50%, transparent 50%);background-position:calc(100% - 15px),calc(100% - 10px);background-repeat:no-repeat;background-size:5px 5px,5px 5px;padding:.4rem 1.9rem .4rem .6rem;font-size:.82rem;font-weight:500}.fbf-select:focus{border-color:var(--fbf-accent);box-shadow:0 0 0 3px var(--fbf-accent-soft);outline:none}.fbf-hud{background:var(--fbf-line);border:1px solid var(--fbf-line);border-radius:var(--fbf-radius);grid-template-columns:repeat(4,minmax(0,1fr));gap:1px;margin-top:1rem;display:grid;overflow:hidden}.fbf-stat{background:var(--fbf-surface);flex-direction:column;gap:.15rem;min-width:0;padding:.6rem .85rem;display:flex}.fbf-stat-k{letter-spacing:.12em;text-transform:uppercase;color:var(--fbf-accent);font-size:.62rem;font-weight:700}.fbf-stat-v{font-variant-numeric:tabular-nums;letter-spacing:-.01em;color:var(--fbf-ink);white-space:nowrap;text-overflow:ellipsis;font-size:1.2rem;font-weight:600;line-height:1.15;overflow:hidden}.fbf-stat-v-sm{white-space:normal;-webkit-line-clamp:2;-webkit-box-orient:vertical;font-size:.95rem;line-height:1.2;display:-webkit-box}.fbf-stat-sub{color:var(--fbf-ink-faint);font-size:.76rem;font-weight:500}.fbf-timeline{margin-top:.9rem}.fbf-timeline-track{padding:.15rem 0;position:relative}.fbf-timeline-track input[type=range]{-webkit-appearance:none;appearance:none;cursor:pointer;z-index:1;background:0 0;width:100%;height:24px;margin:0;display:block;position:relative}.fbf-timeline-track input[type=range]::-webkit-slider-runnable-track{background:color-mix(in srgb, var(--color-brand-900,#374151) 14%, transparent);border-radius:999px;height:6px}.fbf-timeline-track input[type=range]::-moz-range-track{background:color-mix(in srgb, var(--color-brand-900,#374151) 14%, transparent);border-radius:999px;height:6px}.fbf-timeline-track input[type=range]::-moz-range-progress{background:var(--fbf-accent);border-radius:999px;height:6px}.fbf-timeline-track input[type=range]::-webkit-slider-thumb{-webkit-appearance:none;appearance:none;border:3px solid var(--fbf-accent);background:#fff;border-radius:50%;width:15px;height:15px;margin-top:-4.5px;box-shadow:0 1px 2px #0f172a40}.fbf-timeline-track input[type=range]::-moz-range-thumb{border:3px solid var(--fbf-accent);background:#fff;border-radius:50%;width:15px;height:15px}.fbf-timeline-track input[type=range]:focus-visible{outline:2px solid var(--fbf-accent);outline-offset:4px;border-radius:999px}.fbf-ab-band{background:var(--fbf-accent-soft);border-left:2px solid var(--fbf-accent);border-right:2px solid var(--fbf-accent);pointer-events:none;z-index:0;border-radius:2px;width:0;height:8px;position:absolute;top:50%;left:0;transform:translateY(-50%)}.fbf-panel{background:var(--fbf-surface-3);border:1px solid var(--fbf-line);border-radius:var(--fbf-radius);margin-top:.9rem;padding:.8rem .9rem}.fbf-panel-head{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:.5rem;display:flex}.fbf-ab-summary{flex-wrap:wrap;align-items:center;gap:.4rem;display:inline-flex}.fbf-ab-chip{background:var(--fbf-surface);border:1px solid var(--fbf-line-2);border-radius:6px;align-items:center;gap:.35rem;padding:.2rem .5rem;font-size:.75rem;display:inline-flex}.fbf-ab-chip b{color:var(--fbf-accent);font-weight:700}.fbf-ab-dur{color:var(--fbf-ink-faint);letter-spacing:.02em;font-size:.72rem}.fbf-mono{font-variant-numeric:tabular-nums;color:var(--fbf-ink)}#fbf-ab-controls .fbf-row{margin-top:.65rem}#fbf-ab-controls:has(#fbf-ab-loop[aria-pressed=true]){border-color:var(--fbf-accent);box-shadow:0 0 0 1px var(--fbf-accent-soft) inset}#fbf-stage{margin-top:1.25rem}.fbf-vtoolbar{background:var(--fbf-surface-2);border:1px solid var(--fbf-line);border-radius:var(--fbf-radius) var(--fbf-radius) 0 0;border-bottom:0;flex-wrap:wrap;align-items:center;gap:.4rem .6rem;padding:.4rem .5rem;display:flex}.fbf-vlabel{letter-spacing:.12em;text-transform:uppercase;color:var(--fbf-ink-faint);font-size:.62rem;font-weight:700}.fbf-vcluster{background:var(--fbf-surface);border:1px solid var(--fbf-line-2);border-radius:var(--fbf-radius-sm);align-items:center;gap:2px;padding:2px;display:inline-flex}.fbf-vbtn{appearance:none;cursor:pointer;font:inherit;color:var(--fbf-ink-dim);background:0 0;border:0;border-radius:6px;padding:.32rem .6rem;font-size:.78rem;font-weight:600;transition:background .14s,color .14s}.fbf-vbtn:hover{background:color-mix(in srgb, var(--color-brand-900,#374151) 5%, transparent);color:var(--fbf-ink)}.fbf-vbtn:disabled{opacity:.4;cursor:not-allowed}.fbf-vbtn[aria-pressed=true]{background:var(--fbf-accent);color:#fff}.fbf-vbtn-strong{border:1px solid var(--fbf-line-2);color:var(--fbf-ink);background:var(--fbf-surface);padding:.4rem .75rem}.fbf-vbtn-strong[aria-pressed=true]{background:var(--fbf-accent);border-color:var(--fbf-accent);color:#fff}.fbf-vreadout{text-align:center;font-variant-numeric:tabular-nums;min-width:3.4rem;color:var(--fbf-ink);font-size:.75rem}.fbf-vreadout-live{color:var(--fbf-ink-dim)}#fbf-viewer.fbf-viewer{border:1px solid var(--fbf-line);border-radius:0 0 var(--fbf-radius) var(--fbf-radius);background:var(--fbf-surface-2);overscroll-behavior:contain}.fbf-video-wrap{padding:8px}#fbf-video{border-radius:6px;box-shadow:0 6px 20px -8px #0f172a40}.fbf-filmstrip-section{margin-top:1.1rem}.fbf-strip{overscroll-behavior-x:contain;background:var(--fbf-surface-2);border:1px solid var(--fbf-line);border-radius:var(--fbf-radius);scrollbar-width:thin;gap:.5rem;margin-top:.5rem;padding:.55rem;display:flex;overflow-x:auto}.fbf-strip::-webkit-scrollbar{height:8px}.fbf-strip::-webkit-scrollbar-thumb{background:var(--fbf-line-2);border-radius:999px}.fbf-thumb{border:1px solid var(--fbf-line-2);cursor:pointer;background:#e2e8f0;border-radius:8px;flex:none;padding:0;transition:border-color .12s,box-shadow .12s;position:relative;overflow:hidden}.fbf-thumb:hover{border-color:color-mix(in srgb, var(--color-brand-900,#374151) 35%, transparent);box-shadow:0 2px 8px -3px #0f172a33}.fbf-thumb:focus-visible{outline:2px solid var(--fbf-accent);outline-offset:2px}.fbf-thumb-box{width:100%;color:var(--fbf-ink-faint);background:#e2e8f0;justify-content:center;align-items:center;font-size:.7rem;display:flex}.fbf-thumb-box img{object-fit:cover;width:100%;height:100%;display:block}.fbf-thumb-cap{text-align:center;font-variant-numeric:tabular-nums;color:var(--fbf-ink-dim);border-top:1px solid var(--fbf-line);background:#ffffffeb;padding:.15rem .3rem;font-size:10px;display:block}.fbf-thumb-active{border-color:var(--fbf-accent);box-shadow:0 0 0 2px var(--fbf-accent)}.fbf-thumb-active .fbf-thumb-cap{background:var(--fbf-accent);color:#fff;border-top-color:var(--fbf-accent);font-weight:700}.fbf-thumb-ab{inset-inline:0;background:var(--fbf-accent);pointer-events:none;height:3px;position:absolute;top:0}.fbf-hint{color:var(--fbf-ink-dim);font-size:.76rem}.fbf-hint-pad{margin-top:.4rem}.fbf-alert{color:#dc2626;margin-top:.5rem;font-size:.8rem}.fbf-alert-soft{color:#b45309}.fbf-alert-inline{color:#dc2626!important}.fbf-callout{color:#92400e;border-radius:var(--fbf-radius-sm);background:#fffbeb;border:1px solid #fcd34d99;margin-top:.6rem;padding:.6rem .75rem;font-size:.76rem}@media (width<=720px){.fbf-filemeta{align-items:flex-start;margin-left:0}.fbf-hud{grid-template-columns:repeat(2,minmax(0,1fr))}.fbf-btn-primary{flex:auto}}@media (width<=420px){.fbf-stepper{width:100%}.fbf-stepper .fbf-num{flex:1 1 0}}@media (prefers-reduced-motion:reduce){.fbf-app *,.fbf-app :before,.fbf-app :after{transition-duration:.001ms!important;animation-duration:.001ms!important}}#fbf-stage:fullscreen{background:#000;flex-direction:column;width:100vw;height:100vh;margin:0;padding:12px;display:flex}#fbf-stage:fullscreen{background:#000;flex-direction:column;width:100vw;height:100vh;margin:0;padding:12px;display:flex}#fbf-stage:fullscreen .fbf-vtoolbar{flex:none}#fbf-stage:fullscreen .fbf-vtoolbar{flex:none}#fbf-stage:fullscreen #fbf-viewer{border-radius:0 0 var(--fbf-radius) var(--fbf-radius);background:#000;flex:auto;min-height:0;max-height:none}#fbf-stage:-webkit-full-screen #fbf-viewer{background:#000;flex:auto;min-height:0;max-height:none}
