import type { ReactNode } from 'react'; type Props = { children: ReactNode; /** Extra classes on the outer positioning wrapper (usually leave default). */ className?: string; }; /** * Min height for gated regions so overlays fill the visible admin canvas (below top bar + main padding). * Tweak if shell chrome height changes. */ export const PREMIUM_GATE_VIEWPORT_MIN_H = 'min-h-[calc(100dvh-7rem)] sm:min-h-[calc(100dvh-7.5rem)]'; /** Shared shell for gold “premium lock” cards (plan upgrade + addon enable). Full width of parent. */ export const PREMIUM_LOCK_CARD_CLASS = 'relative w-full overflow-hidden rounded-3xl border border-amber-300/70 bg-gradient-to-b from-amber-50 via-white to-amber-100/40 shadow-[0_32px_100px_-18px_rgba(180,83,9,0.42)] ring-1 ring-amber-200/80 backdrop-blur-xl dark:border-amber-600/35 dark:from-amber-950/95 dark:via-stone-900 dark:to-amber-950/90 dark:shadow-[0_32px_100px_-18px_rgba(0,0,0,0.55)] dark:ring-amber-800/40'; /** * Full width/height overlay: warm amber/gold “premium” scrim over gated content. * Centers children; use for plan-lock and addon-off premium moments. */ export function PremiumGatedSurface(props: Props) { const { children, className = '' } = props; return (
{/* Deep base + gold wash */}
{/* Subtle gold film */}
{/* Content — vertically and horizontally centered, scrolls on small viewports */}
{children}
); }