"use client"; import React, { useMemo } from "react"; import { Player } from "@remotion/player"; import { Sequence, AbsoluteFill, useCurrentFrame, useVideoConfig, interpolate } from "remotion"; import { Audio } from "@remotion/media"; import { FPS } from "@/lib/remotion/constants"; export interface CompiledSlide { component: React.ComponentType; title: string; code: string; durationInFrames: number; audioUrl?: string; } const WATERMARK_STYLES = { container: { position: "absolute" as const, bottom: 28, right: 36, display: "flex", alignItems: "center", gap: 8, padding: "6px 14px 6px 10px", borderRadius: 9999, background: "rgba(0, 0, 0, 0.35)", backdropFilter: "blur(12px)", WebkitBackdropFilter: "blur(12px)", border: "1px solid rgba(255, 255, 255, 0.12)", boxShadow: "0 2px 8px rgba(0, 0, 0, 0.15)", pointerEvents: "none" as const, zIndex: 9999, }, logo: { width: 22, height: 22, filter: "brightness(0) invert(1)", }, text: { fontFamily: "Inter, system-ui, -apple-system, sans-serif", fontSize: 15, fontWeight: 600, color: "rgba(255, 255, 255, 0.95)", letterSpacing: "0.01em", lineHeight: 1, }, }; function Watermark() { const frame = useCurrentFrame(); const { fps } = useVideoConfig(); const opacity = interpolate(frame, [0, fps * 0.5], [0, 1], { extrapolateRight: "clamp", }); return (