<?xml version="1.0" encoding="UTF-8"?><rss version="2.0"
	xmlns:media="http://search.yahoo.com/mrss/"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>Faceless Video Generation &#8211; Flowpast.com &#8211; Your Workflow Automation Library</title>
	<atom:link href="https://flowpast.com/function/faceless-video/feed/" rel="self" type="application/rss+xml" />
	<link>https://flowpast.com</link>
	<description>Flowpast.com - Pre-Built n8n, Make &#38; Zapier Workflow Templates</description>
	<lastBuildDate>Fri, 23 Jan 2026 02:37:36 +0000</lastBuildDate>
	<language>en-US</language>
	<sy:updatePeriod>
	hourly	</sy:updatePeriod>
	<sy:updateFrequency>
	1	</sy:updateFrequency>
	<generator>https://wordpress.org/?v=6.9.4</generator>

<image>
	<url>https://flowpast.com/wp-content/uploads/2025/12/cropped-icon-32x32.png</url>
	<title>Faceless Video Generation &#8211; Flowpast.com &#8211; Your Workflow Automation Library</title>
	<link>https://flowpast.com</link>
	<width>32</width>
	<height>32</height>
</image> 
	<item>
		<title>Create a 3-Part Video Mini-Series with this AI Prompt</title>
		<link>https://flowpast.com/prompts/create-a-3-part-video-mini-series-with-this-ai-prompt/</link>
		
		<dc:creator><![CDATA[Lisa Granqvist]]></dc:creator>
		<pubDate>Fri, 23 Jan 2026 02:37:36 +0000</pubDate>
				<category><![CDATA[Prompts]]></category>
		<guid isPermaLink="false">https://flowpast.com/?p=5002402</guid>

					<description><![CDATA[Content feels scattered - use this AI Prompt to map a 3-part educational video series with audience, themes, outlines, and distribution. Discover more AI prompts for marketing, sales, and ops.]]></description>
										<content:encoded><![CDATA[<!-- FOCUS_KEYWORD: video mini-series prompt -->

<div class="hook-introduction">

<p>Your video ideas are good. The problem is they don’t connect. You post one helpful clip, then another, then another, and none of it builds real momentum or authority.</p>



<p>This <strong>video mini-series prompt</strong> is built for <strong>marketing leads</strong> who need a tight 3-part campaign that educates and earns trust, <strong>course creators</strong> turning one core topic into a bingeable series, and <strong>consultants</strong> who want three credibility-building videos to send after a discovery call. The output is a complete mini-series package: an audience snapshot, a single through-line theme, three video titles with exactly three teaching points each, clear CTAs, and a simple multi-platform distribution plan.</p>

</div>

<div class="what-and-when-section">

<h2 class="wp-block-heading">What Does This AI Prompt Do and When to Use It?</h2>



<table class="solution-results-table three-column" role="presentation" aria-label="What this prompt does, when to use it, and what you get">
 <thead>
    <tr>
      <th scope="col">What This Prompt Does</th>
      <th scope="col">When to Use This Prompt</th>
      <th scope="col">What You&#8217;ll Get</th>
    </tr>
  </thead>
  <tbody>
    <tr>
      <td>
        <ul class="automation-list">
          <li>It restates what you’re creating and who it’s for, so the series stays grounded in the same viewer and outcome.</li>
          <li>It converts rough audience notes into a structured snapshot (demographics, frustrations, and desired outcomes).</li>
          <li>It proposes one unifying series theme that connects all three videos and signals thought leadership.</li>
          <li>It plans Video 1–3 with a strong title, exactly three core teaching points, and a call-to-action matched to viewer intent.</li>
          <li>It adds three distinct promotion approaches and defaults platforms if you don’t specify them.</li>
       </ul>
      </td>
      <td>
        <ul class="results-list">
          <li>You’re tired of “random helpful posts” and want a sequence that feels intentional across three uploads.</li>
          <li>You have a niche and expertise, but your content isn’t translating into trust, inquiries, or subscribers.</li>
          <li>You’re planning a launch, webinar, restock, or new offer and need a fast pre-frame content runway.</li>
          <li>You’re competing with creators who look more consistent, even if their advice isn’t better.</li>
          <li>You want to scale content production without losing structure, especially when repurposing for Shorts/Reels and YouTube.</li>
        </ul>
      </td>
       <td>
         <ul class="deliverables-list">
           <li>A 3-video mini-series plan with 3 titles designed to be watched in order.</li>
           <li>An audience snapshot with demographics, key frustrations, and desired outcomes in a clean breakdown.</li>
           <li>Three outlines that each include exactly 3 teaching points plus a ready-to-use CTA.</li>
           <li>A single “series through-line” theme statement you can reuse in captions and your channel description.</li>
           <li>A 3-part distribution plan with distinct promotion approaches tailored to short-form and long-form.</li>
         </ul>
       </td>
    </tr>
  </tbody>
</table>

</div>

<div class="prompt-display-section">

<h2 class="wp-block-heading">The Full AI Prompt: 3-Part Educational Video Mini-Series Builder</h2>



<div class="prompt-viewer-wrapper" id="prompt-section">
    <div class="prompt-comparison-row prompt-premium">
        <!-- Header with buttons -->
        <div class="prompt-row-header">
            <!-- <span class="prompt-row-icon">✨</span> -->
            <span class="prompt-row-title">
                                    Step 1: Customize the prompt with your input
                            </span>
            <div class="prompt-header-buttons">
                                    <button class="prompt-header-btn prompt-header-reset" onclick="resetPrompt()">
                        <svg xmlns="http://www.w3.org/2000/svg" width="16" height="16" fill="currentColor" viewBox="0 0 16 16">
                            <path fill-rule="evenodd" d="M8 3a5 5 0 1 0 4.546 2.914.5.5 0 0 1 .908-.417A6 6 0 1 1 8 2v1z" />
                            <path d="M8 4.466V.534a.25.25 0 0 1 .41-.192l2.36 1.966c.12.1.12.284 0 .384L8.41 4.658A.25.25 0 0 1 8 4.466z" />
                        </svg>
                        <span>Reset</span>
                    </button>
                                <button class="prompt-header-btn prompt-header-copy-green flowpast-copy-prompt-btn" onclick="handlePromptCopy()">
                    <svg xmlns="http://www.w3.org/2000/svg" width="16" height="16" fill="currentColor" viewBox="0 0 16 16">
                        <path d="M4 1.5H3a2 2 0 0 0-2 2V14a2 2 0 0 0 2 2h10a2 2 0 0 0 2-2V3.5a2 2 0 0 0-2-2h-1v1h1a1 1 0 0 1 1 1V14a1 1 0 0 1-1 1H3a1 1 0 0 1-1-1V3.5a1 1 0 0 1 1-1h1v-1z" />
                        <path d="M9.5 1a.5.5 0 0 1 .5.5v1a.5.5 0 0 1-.5.5h-3a.5.5 0 0 1-.5-.5v-1a.5.5 0 0 1 .5-.5h3zm-3-1A1.5 1.5 0 0 0 5 1.5v1A1.5 1.5 0 0 0 6.5 4h3A1.5 1.5 0 0 0 11 2.5v-1A1.5 1.5 0 0 0 9.5 0h-3z" />
                    </svg>
                    <span>Customize and Copy Full Prompt</span>
                </button>
            </div>
        </div>

        <!-- Customize the Prompt Section -->
                    <div class="prompt-customize-section">
                <span class="customize-title">Customize the Prompt</span>
                <p class="customize-subtitle">Fill in the fields below to personalize this prompt for your needs.</p>
                <table class="customize-table">
                    <thead>
                        <tr>
                            <th>Variable</th>
                            <th>What to Enter</th>
                            <th>Customise the prompt</th>
                        </tr>
                    </thead>
                    <tbody>
                                                    <tr>
                                <td class="var-name"><code>[TARGET_AUDIENCE]</code></td>
                                <td class="var-desc">
                                    Describe the specific group of people the video series is intended for, including demographics, key frustrations, and desired outcomes.                                    <div class="var-example">For example: "Young professionals aged 25-35 who are new to remote work, struggling with productivity, and seeking actionable strategies to balance work and life."</div>
                                </td>
                                <td class="var-input">
                                                                            <textarea
                                            class="customize-input"
                                            data-placeholder="[TARGET_AUDIENCE]"
                                            placeholder="Enter your value here..."
                                            rows="3"></textarea>
                                                                    </td>
                            </tr>
                                                    <tr>
                                <td class="var-name"><code>[INDUSTRY]</code></td>
                                <td class="var-desc">
                                    Specify the industry relevant to the video series, such as the field or sector the content is tailored for.                                    <div class="var-example">For example: "EdTech (Educational Technology)"</div>
                                </td>
                                <td class="var-input">
                                                                            <input
                                            type="text"
                                            class="customize-input"
                                            data-placeholder="[INDUSTRY]"
                                            placeholder="Enter your value here..." />
                                                                    </td>
                            </tr>
                                                    <tr>
                                <td class="var-name"><code>[NICHE]</code></td>
                                <td class="var-desc">
                                    Define the specific subcategory or focus area within the broader industry that the video series will address.                                    <div class="var-example">For example: "Online course creation for solopreneurs"</div>
                                </td>
                                <td class="var-input">
                                                                            <input
                                            type="text"
                                            class="customize-input"
                                            data-placeholder="[NICHE]"
                                            placeholder="Enter your value here..." />
                                                                    </td>
                            </tr>
                                                    <tr>
                                <td class="var-name"><code>[PLATFORM]</code></td>
                                <td class="var-desc">
                                    List the platforms where the video series will be shared, such as social media or video hosting sites.                                    <div class="var-example">For example: "Instagram, YouTube Shorts, and LinkedIn"</div>
                                </td>
                                <td class="var-input">
                                                                            <textarea
                                            class="customize-input"
                                            data-placeholder="[PLATFORM]"
                                            placeholder="Enter your value here..."
                                            rows="3"></textarea>
                                                                    </td>
                            </tr>
                                                    <tr>
                                <td class="var-name"><code>[BRAND_VOICE]</code></td>
                                <td class="var-desc">
                                    Describe the tone and style of communication that aligns with the brand, such as formal, casual, or motivational.                                    <div class="var-example">For example: "Professional yet approachable, with a focus on clarity and actionable insights."</div>
                                </td>
                                <td class="var-input">
                                                                            <textarea
                                            class="customize-input"
                                            data-placeholder="[BRAND_VOICE]"
                                            placeholder="Enter your value here..."
                                            rows="3"></textarea>
                                                                    </td>
                            </tr>
                                                    <tr>
                                <td class="var-name"><code>[PRIMARY_GOAL]</code></td>
                                <td class="var-desc">
                                    State the main objective of the video series, such as generating leads, increasing newsletter signups, or growing a community.                                    <div class="var-example">For example: "Drive newsletter signups by offering exclusive productivity tips."</div>
                                </td>
                                <td class="var-input">
                                                                            <input
                                            type="text"
                                            class="customize-input"
                                            data-placeholder="[PRIMARY_GOAL]"
                                            placeholder="Enter your value here..." />
                                                                    </td>
                            </tr>
                                            </tbody>
                </table>

                <button class="copy-customized-btn flowpast-copy-prompt-btn" onclick="handlePromptCopy()">
                    <svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" fill="currentColor" viewBox="0 0 16 16">
                        <path d="M4 1.5H3a2 2 0 0 0-2 2V14a2 2 0 0 0 2 2h10a2 2 0 0 0 2-2V3.5a2 2 0 0 0-2-2h-1v1h1a1 1 0 0 1 1 1V14a1 1 0 0 1-1 1H3a1 1 0 0 1-1-1V3.5a1 1 0 0 1 1-1h1v-1z" />
                        <path d="M9.5 1a.5.5 0 0 1 .5.5v1a.5.5 0 0 1-.5.5h-3a.5.5 0 0 1-.5-.5v-1a.5.5 0 0 1 .5-.5h3zm-3-1A1.5 1.5 0 0 0 5 1.5v1A1.5 1.5 0 0 0 6.5 4h3A1.5 1.5 0 0 0 11 2.5v-1A1.5 1.5 0 0 0 9.5 0h-3z" />
                    </svg>
                    <span class="copy-customized-text">Customise the prompt now</span>
                </button>
            </div>
        
        <!-- Full Prompt Code Header -->
                    <div class="prompt-code-header">
                <span class="prompt-code-title">
                    Step 2: Copy the Prompt
                </span>
                <div class="prompt-code-buttons">
                    <!-- Reset: Only visible when unlocked -->
                    <button class="prompt-header-btn prompt-header-reset btn-when-unlocked" onclick="resetPrompt()" style="display: none;">
                        <svg xmlns="http://www.w3.org/2000/svg" width="16" height="16" fill="currentColor" viewBox="0 0 16 16">
                            <path fill-rule="evenodd" d="M8 3a5 5 0 1 0 4.546 2.914.5.5 0 0 1 .908-.417A6 6 0 1 1 8 2v1z" />
                            <path d="M8 4.466V.534a.25.25 0 0 1 .41-.192l2.36 1.966c.12.1.12.284 0 .384L8.41 4.658A.25.25 0 0 1 8 4.466z" />
                        </svg>
                        <span>Reset</span>
                    </button>
                    <!-- Copy Full Prompt -->
                    <button class="prompt-header-btn prompt-header-copy flowpast-copy-prompt-btn" onclick="handlePromptCopy()">
                        <svg xmlns="http://www.w3.org/2000/svg" width="16" height="16" fill="currentColor" viewBox="0 0 16 16">
                            <path d="M4 1.5H3a2 2 0 0 0-2 2V14a2 2 0 0 0 2 2h10a2 2 0 0 0 2-2V3.5a2 2 0 0 0-2-2h-1v1h1a1 1 0 0 1 1 1V14a1 1 0 0 1-1 1H3a1 1 0 0 1-1-1V3.5a1 1 0 0 1 1-1h1v-1z" />
                            <path d="M9.5 1a.5.5 0 0 1 .5.5v1a.5.5 0 0 1-.5.5h-3a.5.5 0 0 1-.5-.5v-1a.5.5 0 0 1 .5-.5h3zm-3-1A1.5 1.5 0 0 0 5 1.5v1A1.5 1.5 0 0 0 6.5 4h3A1.5 1.5 0 0 0 11 2.5v-1A1.5 1.5 0 0 0 9.5 0h-3z" />
                        </svg>
                        <span>Copy Full Prompt</span>
                    </button>
                </div>
            </div>
        

        <!-- Prompt Content -->
        <div class="prompt-box prompt-gated-wrapper">
            <!-- Gated: Blurred content -->
            <div class="prompt-gated-content">
                <div class="prompt-header-visible">OBJECTIVE</div><div class="locked-section"><div class="locked-section-bg"><div class="locked-section-lines"><div class="locked-line" style="width: 85%;"></div><div class="locked-line" style="width: 78%;"></div></div></div><div class="locked-section-icon">🔒</div></div><div class="prompt-header-visible">PERSONA</div><div class="locked-section"><div class="locked-section-bg"><div class="locked-section-lines"><div class="locked-line" style="width: 85%;"></div><div class="locked-line" style="width: 78%;"></div></div></div><div class="locked-section-icon">🔒</div></div><div class="prompt-header-visible">CONSTRAINTS</div><div class="locked-section"><div class="locked-section-bg"><div class="locked-section-lines"><div class="locked-line" style="width: 85%;"></div><div class="locked-line" style="width: 78%;"></div><div class="locked-line" style="width: 92%;"></div><div class="locked-line" style="width: 75%;"></div><div class="locked-line" style="width: 88%;"></div></div></div><div class="locked-section-icon">🔒</div></div><div class="prompt-header-visible">PROCESS</div><div class="locked-section"><div class="locked-section-bg"><div class="locked-section-lines"><div class="locked-line" style="width: 85%;"></div><div class="locked-line" style="width: 78%;"></div><div class="locked-line" style="width: 92%;"></div><div class="locked-line" style="width: 75%;"></div><div class="locked-line" style="width: 88%;"></div><div class="locked-line" style="width: 72%;"></div><div class="locked-line" style="width: 80%;"></div><div class="locked-line" style="width: 95%;"></div><div class="locked-line" style="width: 70%;"></div><div class="locked-line" style="width: 83%;"></div><div class="locked-line" style="width: 85%;"></div><div class="locked-line" style="width: 78%;"></div><div class="locked-line" style="width: 92%;"></div></div></div><div class="locked-section-icon">🔒</div></div><div class="prompt-header-visible">INPUTS</div><div class="locked-section"><div class="locked-section-bg"><div class="locked-section-lines"><div class="locked-line" style="width: 85%;"></div><div class="locked-line" style="width: 78%;"></div><div class="locked-line" style="width: 92%;"></div><div class="locked-line" style="width: 75%;"></div><div class="locked-line" style="width: 88%;"></div><div class="locked-line" style="width: 72%;"></div></div></div><div class="locked-section-icon">🔒</div></div><div class="prompt-header-visible">OUTPUT SPECIFICATION</div><div class="locked-section"><div class="locked-section-bg"><div class="locked-section-lines"><div class="locked-line" style="width: 85%;"></div><div class="locked-line" style="width: 78%;"></div></div></div><div class="locked-section-icon">🔒</div></div><div class="prompt-header-visible subheader">Target Audience</div><div class="locked-section"><div class="locked-section-bg"><div class="locked-section-lines"><div class="locked-line" style="width: 85%;"></div><div class="locked-line" style="width: 78%;"></div><div class="locked-line" style="width: 92%;"></div></div></div><div class="locked-section-icon">🔒</div></div><div class="prompt-header-visible subheader">Video Series Theme</div><div class="locked-section"><div class="locked-section-bg"><div class="locked-section-lines"><div class="locked-line" style="width: 85%;"></div><div class="locked-line" style="width: 78%;"></div></div></div><div class="locked-section-icon">🔒</div></div><div class="prompt-header-visible subheader">Video 1</div><div class="locked-section"><div class="locked-section-bg"><div class="locked-section-lines"><div class="locked-line" style="width: 85%;"></div><div class="locked-line" style="width: 78%;"></div><div class="locked-line" style="width: 92%;"></div><div class="locked-line" style="width: 75%;"></div><div class="locked-line" style="width: 88%;"></div><div class="locked-line" style="width: 72%;"></div></div></div><div class="locked-section-icon">🔒</div></div><div class="prompt-header-visible subheader">Video 2</div><div class="locked-section"><div class="locked-section-bg"><div class="locked-section-lines"><div class="locked-line" style="width: 85%;"></div><div class="locked-line" style="width: 78%;"></div><div class="locked-line" style="width: 92%;"></div><div class="locked-line" style="width: 75%;"></div><div class="locked-line" style="width: 88%;"></div><div class="locked-line" style="width: 72%;"></div></div></div><div class="locked-section-icon">🔒</div></div><div class="prompt-header-visible subheader">Video 3</div><div class="locked-section"><div class="locked-section-bg"><div class="locked-section-lines"><div class="locked-line" style="width: 85%;"></div><div class="locked-line" style="width: 78%;"></div><div class="locked-line" style="width: 92%;"></div><div class="locked-line" style="width: 75%;"></div><div class="locked-line" style="width: 88%;"></div><div class="locked-line" style="width: 72%;"></div></div></div><div class="locked-section-icon">🔒</div></div><div class="prompt-header-visible subheader">Video Series Promotion Strategy</div><div class="locked-section"><div class="locked-section-bg"><div class="locked-section-lines"><div class="locked-line" style="width: 85%;"></div><div class="locked-line" style="width: 78%;"></div><div class="locked-line" style="width: 92%;"></div></div></div><div class="locked-section-icon">🔒</div></div><div class="prompt-header-visible">QUALITY CHECKS</div><div class="locked-section"><div class="locked-section-bg"><div class="locked-section-lines"><div class="locked-line" style="width: 85%;"></div><div class="locked-line" style="width: 78%;"></div><div class="locked-line" style="width: 92%;"></div><div class="locked-line" style="width: 75%;"></div><div class="locked-line" style="width: 88%;"></div><div class="locked-line" style="width: 72%;"></div></div></div><div class="locked-section-icon">🔒</div></div>            </div>
            <!-- Unlocked: Full content (hidden by default) -->
            <div class="prompt-content-full" id="premium-prompt-content" style="display: none;">
                ## OBJECTIVE
Design a cohesive 3-part educational video mini-series that builds authority for a creator within a defined niche, tailored to a specific audience, and packaged with a simple promotion plan.

## PERSONA
You are a senior learning-and-development scriptwriter and channel strategist who crafts clear, compelling teaching content for short-form and long-form video. Your style is structured, audience-aware, and credibility-forward (insightful without sounding academic).

## CONSTRAINTS
- Keep every video aligned to one unifying series theme.
- Make each video informative and engaging for the ideal recipient described in the inputs.
- Each video must include exactly **3** core teaching points and a **clear call-to-action** that fits the viewer’s likely intent.
- Prioritize thought leadership: original framing, practical clarity, and confident positioning (avoid hypey sales language).
- If inputs are vague or missing, follow the edge-case rules in **PROCESS**.

## PROCESS
1. **Pre-analysis (required):** Briefly restate what you’re creating and who it’s for, based on the provided inputs.
2. **Audience snapshot:** Convert the provided audience details into a clean breakdown (demographics, key frustrations, desired outcomes).
3. **Series through-line:** Propose a single theme that connects all three videos and signals expertise.
4. **Video planning:** Create Video 1–3 with a strong title, three key points, and a CTA that naturally follows the content.
5. **Distribution plan:** Provide three distinct promotion approaches appropriate to the platform/context.
6. **Edge-case handling (mandatory):**
   - If [TARGET_AUDIENCE] is missing: infer a reasonable audience for the niche and list 2–3 assumptions.
   - If [INDUSTRY] or [NICHE] is unclear: ask up to 3 clarifying questions, then provide a best-guess draft anyway.
   - If [PLATFORM] is not provided: default to “Instagram + YouTube Shorts + YouTube” and tailor accordingly.
7. **Scope boundaries — What This Is NOT:**
   - Not full word-for-word scripts with dialogue and scene directions.
   - Not a full funnel build-out or paid ads media plan.
   - Not SEO keyword research or competitor teardown.

## INPUTS
- **Niche:** [NICHE]  
- **Primary user segment (audience details):** [TARGET_AUDIENCE]  
- **Industry (if relevant):** [INDUSTRY]  
- **Platform(s) to publish on:** [PLATFORM]  
- **Brand voice / communication style:** [BRAND_VOICE]  
- **Primary goal for the series (e.g., leads, newsletter signups, community growth):** [PRIMARY_GOAL]  

## OUTPUT SPECIFICATION
Provide the deliverable in the following format and labels:

### Target Audience
- **Demographics:** {Demographics}
- **Pain Points:** {Pain Points}
- **Goals:** {Goals}

### Video Series Theme
- **Theme:** {Series Theme}
- **Unifying promise (1 sentence):** {Unifying Promise}

### Video 1
- **Title:** {Video 1 Title}
- **Key Points:**
  1. {Video 1 Key Point 1}
  2. {Video 1 Key Point 2}
  3. {Video 1 Key Point 3}
- **Call to Action:** {Video 1 CTA}

### Video 2
- **Title:** {Video 2 Title}
- **Key Points:**
  1. {Video 2 Key Point 1}
  2. {Video 2 Key Point 2}
  3. {Video 2 Key Point 3}
- **Call to Action:** {Video 2 CTA}

### Video 3
- **Title:** {Video 3 Title}
- **Key Points:**
  1. {Video 3 Key Point 1}
  2. {Video 3 Key Point 2}
  3. {Video 3 Key Point 3}
- **Call to Action:** {Video 3 CTA}

### Video Series Promotion Strategy
1. **{Promotion Strategy 1 Title}:** {Promotion Strategy 1 Description}
2. **{Promotion Strategy 2 Title}:** {Promotion Strategy 2 Description}
3. **{Promotion Strategy 3 Title}:** {Promotion Strategy 3 Description}

## QUALITY CHECKS
Before finalizing, verify:
- The series theme clearly connects all three videos and reinforces expertise.
- Each video has exactly 3 key points that are distinct and non-overlapping.
- CTAs are specific, low-friction, and matched to the viewer’s stage of awareness.
- Language and examples fit the provided [BRAND_VOICE] and [TARGET_AUDIENCE].
- Any assumptions made due to missing inputs are explicitly stated.            </div>
        </div>


    </div>

    <!-- CTA Row - Full width buttons -->
    <div class="prompt-cta-row">
        <button class="prompt-cta-btn prompt-cta-copy flowpast-copy-prompt-btn" onclick="handlePromptCopy()">
            <svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" fill="currentColor" viewBox="0 0 16 16">
                <path d="M4 1.5H3a2 2 0 0 0-2 2V14a2 2 0 0 0 2 2h10a2 2 0 0 0 2-2V3.5a2 2 0 0 0-2-2h-1v1h1a1 1 0 0 1 1 1V14a1 1 0 0 1-1 1H3a1 1 0 0 1-1-1V3.5a1 1 0 0 1 1-1h1v-1z" />
                <path d="M9.5 1a.5.5 0 0 1 .5.5v1a.5.5 0 0 1-.5.5h-3a.5.5 0 0 1-.5-.5v-1a.5.5 0 0 1 .5-.5h3zm-3-1A1.5 1.5 0 0 0 5 1.5v1A1.5 1.5 0 0 0 6.5 4h3A1.5 1.5 0 0 0 11 2.5v-1A1.5 1.5 0 0 0 9.5 0h-3z" />
            </svg>
            <span class="cta-copy-text">Copy Full Prompt</span>
        </button>
    </div>
</div>

<style>
    /* Gated prompt states */
    .prompt-gated-wrapper {
        position: relative;
    }

    /* When unlocked - show full content, hide gated */
    body.flowpast-unlocked .prompt-gated-wrapper .prompt-gated-content {
        display: none;
    }

    body.flowpast-unlocked .prompt-gated-wrapper .prompt-content-full {
        display: block !important;
    }

    /* Show/hide elements based on unlock state */
    body.flowpast-unlocked .btn-when-unlocked {
        display: inline-flex !important;
    }

    .prompt-viewer-wrapper {
        scroll-margin-top: 250px;
    }

    /* ========================================
   PROMPT VIEWER - MAIN WRAPPER
   ======================================== */
    .prompt-viewer-wrapper {
        margin: 30px 0;
        display: flex;
        flex-direction: column;
        gap: 20px;
    }

    /* ========================================
   PROMPT BOX CONTAINER
   ======================================== */
    .prompt-comparison-row {
        border-radius: 12px;
        overflow: hidden;
        border: 1px solid #e0e0e0;
        background: #fff;
    }

    /* ========================================
   HEADER WITH BUTTONS
   ======================================== */
    .prompt-row-header {
        display: flex;
        align-items: center;
        gap: 10px;
        padding: 14px 20px;
        color: #fff !important;
        background: #141414;
        border-bottom: 1px solid #e0e0e0;
        flex-wrap: wrap;
    }

    .prompt-row-icon {
        font-size: 20px;
    }

    .prompt-row-title {
        font-weight: 600;
        font-size: 22px;
        color: #fff !important;
        text-decoration: underline
    }

    .prompt-header-buttons {
        margin-left: auto;
        display: flex;
        gap: 10px;
        flex-wrap: wrap;
    }

    /* Header buttons */
    .prompt-header-btn {
        display: inline-flex;
        align-items: center;
        gap: 8px;
        padding: 10px 20px;
        border-radius: 6px;
        font-size: 14px;
        font-weight: 600;
        cursor: pointer;
        transition: all 0.2s;
        text-decoration: none;
        border: none;
    }

    .prompt-header-copy {
        background: #3a3a3a;
        color: #fff;
    }

    .prompt-header-copy:hover {
        background: #2a2a2a;
    }

    .prompt-header-copy.copied {
        background: #2e7d32;
    }

    .prompt-header-copy-green {
        background: #04AA6D !important;
        color: #fff !important;
    }

    .prompt-header-copy-green:hover {
        background: #039860 !important;
    }

    .prompt-header-copy-green.copied {
        background: #2e7d32 !important;
    }

    .prompt-header-access {
        background: rgb(5, 152, 98);
        color: #fff !important;
    }

    .prompt-header-access:hover {
        background: rgb(4, 130, 83);
        transform: translateY(-1px);
    }

    /* ========================================
   PROMPT CONTENT - FULL (NO SCROLL)
   ======================================== */
    .prompt-box {
        background: #ffffff;
    }

    .prompt-content-full {
        padding: 24px;
        margin: 0;
        color: #202124;
        background: #ffffff;
        font-family: 'Fira Code', 'Monaco', 'Consolas', monospace;
        font-size: 13px;
        line-height: 1.7;
        white-space: pre-wrap;
        word-wrap: break-word;
        /* No scroll - show full content */
        max-height: none;
        overflow: visible;
    }

    /* Highlighted variable in prompt */
    .prompt-variable {
        background: #fff3cd;
        color: #1967d2;
        font-weight: 700;
        padding: 2px 4px;
        border-radius: 3px;
        border: 1px solid #ffc107;
    }

    .prompt-variable-filled {
        background: #d4edda;
        color: #155724;
        font-weight: 700;
        padding: 2px 4px;
        border-radius: 3px;
        border: 1px solid #28a745;
    }

    /* ========================================
   GATED CONTENT (NO ACCESS)
   ======================================== */
    .prompt-gated-content {
        padding: 24px;
        background: #ffffff;
        font-family: 'Fira Code', 'Monaco', 'Consolas', monospace;
        font-size: 13px;
        line-height: 1.8;
        max-height: none;
        overflow: visible;
        user-select: none;
        -webkit-user-select: none;
        -moz-user-select: none;
        -ms-user-select: none;
        cursor: default;
    }

    /* ## headers - larger, black */
    .prompt-header-visible {
        color: #202124;
        font-weight: 600;
        margin: 5px 0 0px 0;
        font-size: 20px;
        user-select: none;
        -webkit-user-select: none;
        -moz-user-select: none;
        -ms-user-select: none;
        text-decoration: underline;
        text-underline-offset: 4px;
    }

    /* ### headers - smaller, black */
    .prompt-header-visible.subheader {
        color: #202124;
        font-weight: 600;
        margin: 5px 0;
        font-size: 18px;
    }

    .prompt-header-visible:first-child {
        margin-top: 0;
    }

    /* ========================================
   LOCKED SECTION BLOCK
   ======================================== */
    .locked-section {
        position: relative;
        margin: 4px 0 8px 0;
        border-radius: 6px;
        overflow: hidden;
        background: linear-gradient(110deg, #e2e8f0 8%, #f1f5f9 18%, #e2e8f0 33%);
        user-select: none;
        -webkit-user-select: none;
        -moz-user-select: none;
        -ms-user-select: none;
    }

    .locked-section-bg {
        position: relative;
    }

    .locked-section-lines {
        padding: 8px 12px;
        position: relative;
    }

    .locked-line {
        height: 6px;
        background: rgba(255, 255, 255, 0.6);
        border-radius: 3px;
        margin-bottom: 4px;
        margin-left: 12px;
    }

    .locked-line:last-child {
        margin-bottom: 0;
    }

    .locked-section-icon {
        position: absolute;
        top: 50%;
        left: 50%;
        transform: translate(-50%, -50%);
        z-index: 10;
        font-size: 24px;
        filter: drop-shadow(0 1px 3px rgba(0, 0, 0, 0.1));
    }

    /* Subheader locked sections - slightly indented */
    /*  .prompt-header-visible.subheader+.locked-section {
        margin-left: 16px;
    } */

    /* ========================================
   COMPATIBILITY BADGES
   ======================================== */
    .prompt-compatibility {
        display: flex;
        flex-wrap: wrap;
        align-items: center;
        gap: 8px;
        padding: 12px 20px;
        background: #f8f9fa;
        border-top: 1px solid #e0e0e0;
    }

    .compat-label {
        font-size: 13px;
        color: #5f6368;
        font-weight: 500;
    }

    .compat-badge {
        padding: 4px 10px;
        background: #e8f0fe;
        color: #1967d2;
        border-radius: 4px;
        font-size: 12px;
        font-weight: 500;
    }

    /* ========================================
   CTA ROW - FULL WIDTH BUTTONS
   ======================================== */
    .prompt-cta-row {
        display: flex;
        gap: 16px;
        flex-wrap: wrap;
    }

    .prompt-cta-btn {
        flex: 1;
        min-width: 200px;
        display: inline-flex;
        align-items: center;
        justify-content: center;
        gap: 10px;
        padding: 16px 24px;
        border-radius: 8px;
        font-size: 16px;
        font-weight: 600;
        cursor: pointer;
        transition: all 0.2s;
        text-decoration: none;
        border: none;
    }

    .prompt-cta-copy {
        background: #3a3a3a;
        color: #fff;
    }

    .prompt-cta-copy:hover {
        background: #2a2a2a;
        transform: translateY(-2px);
        box-shadow: 0 4px 12px rgba(0, 0, 0, 0.15);
    }

    .prompt-cta-copy.copied {
        background: #2e7d32;
    }

    .prompt-cta-reset {
        background: #3a3a3a;
        color: #fff;
    }

    .prompt-cta-reset:hover {
        background: #2a2a2a;
        transform: translateY(-2px);
        box-shadow: 0 4px 12px rgba(0, 0, 0, 0.15);
    }

    .prompt-cta-access {
        background: rgb(5, 152, 98);
        color: #fff !important;
    }

    .prompt-cta-access:hover {
        background: rgb(4, 130, 83);
        transform: translateY(-2px);
        box-shadow: 0 4px 12px rgba(5, 152, 98, 0.3);
    }

    /* ========================================
    CUSTOMIZE YOUR PROMPT SECTION
    ======================================== */
    .prompt-customize-section {
        padding: 24px;
        border-bottom: 1px solid #e0e0e0;
        background: #fafbfc;
    }

    .customize-title {
        margin: 0 0 8px 0;
        font-size: 18px;
        font-weight: 700;
        color: #202124;
    }

    .customize-subtitle {
        margin: 0 0 20px 0;
        font-size: 14px;
        color: #5f6368;
    }

    .customize-table {
        width: 100%;
        border-collapse: collapse;
        margin-bottom: 20px;
    }

    .customize-table th {
        text-align: left;
        padding: 12px;
        background: #f1f3f4;
        border: 1px solid #e0e0e0;
        font-size: 13px;
        font-weight: 600;
        color: #202124;
    }

    .customize-table td {
        padding: 12px;
        border: 1px solid #e0e0e0;
        vertical-align: top;
    }

    .customize-table .var-name {
        width: 25%;
        background: #f8f9fa;
    }

    .customize-table .var-name code {
        background: #fff3cd;
        color: #1967d2;
        border: 1px solid #ffc107;
        padding: 4px 8px;
        border-radius: 4px;
        font-size: 12px;
        word-break: break-all;
        font-weight: 600;
    }

    .customize-table .var-desc {
        width: 35%;
        font-size: 13px;
        color: #5f6368;
        line-height: 1.5;
    }

    .customize-table .var-example {
        margin-top: 8px;
        padding: 8px 10px;
        background: #f8f9fa;
        border-left: 3px solid #dadce0;
        font-size: 12px;
        color: #5f6368;
        font-style: italic;
        border-radius: 0 4px 4px 0;
    }

    .customize-table .var-input {
        width: 40%;
    }

    .customize-input {
        width: 100%;
        padding: 10px 12px;
        border: 1px solid #dadce0;
        border-radius: 6px;
        font-size: 13px;
        font-family: inherit;
        resize: vertical;
        transition: border-color 0.2s, box-shadow 0.2s;
    }

    .customize-input:focus {
        outline: none;
        border-color: rgb(5, 152, 98);
        box-shadow: 0 0 0 3px rgba(5, 152, 98, 0.1);
    }

    .customize-input::placeholder {
        color: #9aa0a6;
        font-style: italic;
    }

    .copy-customized-btn {
        display: flex;
        align-items: center;
        justify-content: center;
        gap: 10px;
        width: 100%;
        padding: 16px 24px;
        background: rgb(5, 152, 98);
        color: #fff;
        border: none;
        border-radius: 8px;
        font-size: 16px;
        font-weight: 600;
        cursor: pointer;
        transition: all 0.2s;
    }

    .copy-customized-btn:hover {
        background: rgb(4, 130, 83);
        transform: translateY(-2px);
        box-shadow: 0 4px 12px rgba(5, 152, 98, 0.3);
    }

    .copy-customized-btn.copied {
        background: #2e7d32;
    }

    /* ========================================
    FULL PROMPT CODE HEADER
    ======================================== */
    .prompt-code-header {
        display: flex;
        align-items: center;
        justify-content: space-between;
        padding: 10px 20px;
        color: #fff !important;
        background: #141414;
        border-bottom: 1px solid #e0e0e0;
    }

    .prompt-code-title {
        font-size: 22px;
        font-weight: 600;
        text-decoration: underline;

    }

    .prompt-code-buttons {
        display: flex;
        gap: 8px;
    }

    .prompt-code-buttons .prompt-header-btn {
        padding: 8px 14px;
        font-size: 13px;
        background: #ffffff;
        color: #202124;
        border: 1px solid #dadce0;
    }

    .prompt-code-buttons .prompt-header-access {
        background: rgb(5, 152, 98);
        color: #fff !important;
        border-color: rgb(5, 152, 98);
    }

    .prompt-code-buttons .prompt-header-btn.prompt-header-access:hover {
        background: rgb(4, 130, 83) !important;
        border-color: rgb(4, 130, 83);
        color: #fff !important;
    }

    .prompt-code-buttons .prompt-header-btn:hover {
        background: #f1f3f4;
    }

    .prompt-code-buttons .prompt-header-copy.copied {
        background: #d4edda;
        color: #155724;
        border-color: #28a745;
    }

    .prompt-header-reset {
        background: #ffffff;
        color: #202124;
    }

    /* ========================================
   RESPONSIVE
   ======================================== */
    @media (max-width: 768px) {
        .prompt-row-header {
            flex-direction: column;
            align-items: flex-start;
            gap: 12px;
        }

        .prompt-header-buttons {
            margin-left: 0;
            width: 100%;
        }

        .prompt-header-btn {
            flex: 1;
            justify-content: center;
        }

        .prompt-cta-row {
            flex-direction: column;
        }

        .prompt-cta-btn {
            width: 100%;
        }

        /* Customize table responsive */
        .customize-table,
        .customize-table thead,
        .customize-table tbody,
        .customize-table tr,
        .customize-table th,
        .customize-table td {
            display: block;
        }

        .customize-table thead {
            display: none;
        }

        .customize-table tr {
            margin-bottom: 16px;
            border: 1px solid #e0e0e0;
            border-radius: 8px;
            overflow: hidden;
        }

        .customize-table td {
            width: 100% !important;
            border: none;
            border-bottom: 1px solid #e0e0e0;
        }

        .customize-table td:last-child {
            border-bottom: none;
        }

        .customize-table .var-name {
            background: #f1f3f4;
            font-weight: 600;
        }

        .prompt-code-header {
            flex-direction: column;
            gap: 12px;
            align-items: flex-start;
        }

        .prompt-code-buttons {
            width: 100%;
        }

        .prompt-code-buttons .prompt-header-btn {
            flex: 1;
            justify-content: center;
        }
    }
</style>

<script>
    function handlePromptCopy() {
        // Check if unlocked via cookie
        if (typeof window.flowpastIsUnlocked === 'function' && !window.flowpastIsUnlocked()) {
            // Show email popup
            if (typeof window.flowpastShowEmailPopup === 'function') {
                window.flowpastShowEmailPopup('prompt');
            }
            return;
        }

        // Copy the customized prompt (with filled variables)
        const customizedPrompt = getCustomizedPrompt();
        const copyButtons = document.querySelectorAll('.prompt-header-copy, .prompt-header-copy-green, .prompt-cta-copy, .copy-customized-btn');

        navigator.clipboard.writeText(customizedPrompt).then(() => {
            copyButtons.forEach(btn => {
                btn.classList.add('copied');
                const textSpan = btn.querySelector('span');
                if (textSpan) textSpan.textContent = 'Copied!';
            });

            setTimeout(() => {
                copyButtons.forEach(btn => {
                    btn.classList.remove('copied');
                    const textSpan = btn.querySelector('span');
                    if (textSpan) textSpan.textContent = 'Copy Full Prompt';
                });
            }, 2000);
        }).catch(err => {
            console.error('Failed to copy:', err);
        });
    }

    // Store original prompt for customization
    const originalPrompt = "## OBJECTIVE\r\nDesign a cohesive 3-part educational video mini-series that builds authority for a creator within a defined niche, tailored to a specific audience, and packaged with a simple promotion plan.\r\n\r\n## PERSONA\r\nYou are a senior learning-and-development scriptwriter and channel strategist who crafts clear, compelling teaching content for short-form and long-form video. Your style is structured, audience-aware, and credibility-forward (insightful without sounding academic).\r\n\r\n## CONSTRAINTS\r\n- Keep every video aligned to one unifying series theme.\r\n- Make each video informative and engaging for the ideal recipient described in the inputs.\r\n- Each video must include exactly **3** core teaching points and a **clear call-to-action** that fits the viewer\u2019s likely intent.\r\n- Prioritize thought leadership: original framing, practical clarity, and confident positioning (avoid hypey sales language).\r\n- If inputs are vague or missing, follow the edge-case rules in **PROCESS**.\r\n\r\n## PROCESS\r\n1. **Pre-analysis (required):** Briefly restate what you\u2019re creating and who it\u2019s for, based on the provided inputs.\r\n2. **Audience snapshot:** Convert the provided audience details into a clean breakdown (demographics, key frustrations, desired outcomes).\r\n3. **Series through-line:** Propose a single theme that connects all three videos and signals expertise.\r\n4. **Video planning:** Create Video 1\u20133 with a strong title, three key points, and a CTA that naturally follows the content.\r\n5. **Distribution plan:** Provide three distinct promotion approaches appropriate to the platform\/context.\r\n6. **Edge-case handling (mandatory):**\r\n   - If [TARGET_AUDIENCE] is missing: infer a reasonable audience for the niche and list 2\u20133 assumptions.\r\n   - If [INDUSTRY] or [NICHE] is unclear: ask up to 3 clarifying questions, then provide a best-guess draft anyway.\r\n   - If [PLATFORM] is not provided: default to \u201cInstagram + YouTube Shorts + YouTube\u201d and tailor accordingly.\r\n7. **Scope boundaries \u2014 What This Is NOT:**\r\n   - Not full word-for-word scripts with dialogue and scene directions.\r\n   - Not a full funnel build-out or paid ads media plan.\r\n   - Not SEO keyword research or competitor teardown.\r\n\r\n## INPUTS\r\n- **Niche:** [NICHE]  \r\n- **Primary user segment (audience details):** [TARGET_AUDIENCE]  \r\n- **Industry (if relevant):** [INDUSTRY]  \r\n- **Platform(s) to publish on:** [PLATFORM]  \r\n- **Brand voice \/ communication style:** [BRAND_VOICE]  \r\n- **Primary goal for the series (e.g., leads, newsletter signups, community growth):** [PRIMARY_GOAL]  \r\n\r\n## OUTPUT SPECIFICATION\r\nProvide the deliverable in the following format and labels:\r\n\r\n### Target Audience\r\n- **Demographics:** {Demographics}\r\n- **Pain Points:** {Pain Points}\r\n- **Goals:** {Goals}\r\n\r\n### Video Series Theme\r\n- **Theme:** {Series Theme}\r\n- **Unifying promise (1 sentence):** {Unifying Promise}\r\n\r\n### Video 1\r\n- **Title:** {Video 1 Title}\r\n- **Key Points:**\r\n  1. {Video 1 Key Point 1}\r\n  2. {Video 1 Key Point 2}\r\n  3. {Video 1 Key Point 3}\r\n- **Call to Action:** {Video 1 CTA}\r\n\r\n### Video 2\r\n- **Title:** {Video 2 Title}\r\n- **Key Points:**\r\n  1. {Video 2 Key Point 1}\r\n  2. {Video 2 Key Point 2}\r\n  3. {Video 2 Key Point 3}\r\n- **Call to Action:** {Video 2 CTA}\r\n\r\n### Video 3\r\n- **Title:** {Video 3 Title}\r\n- **Key Points:**\r\n  1. {Video 3 Key Point 1}\r\n  2. {Video 3 Key Point 2}\r\n  3. {Video 3 Key Point 3}\r\n- **Call to Action:** {Video 3 CTA}\r\n\r\n### Video Series Promotion Strategy\r\n1. **{Promotion Strategy 1 Title}:** {Promotion Strategy 1 Description}\r\n2. **{Promotion Strategy 2 Title}:** {Promotion Strategy 2 Description}\r\n3. **{Promotion Strategy 3 Title}:** {Promotion Strategy 3 Description}\r\n\r\n## QUALITY CHECKS\r\nBefore finalizing, verify:\r\n- The series theme clearly connects all three videos and reinforces expertise.\r\n- Each video has exactly 3 key points that are distinct and non-overlapping.\r\n- CTAs are specific, low-friction, and matched to the viewer\u2019s stage of awareness.\r\n- Language and examples fit the provided [BRAND_VOICE] and [TARGET_AUDIENCE].\r\n- Any assumptions made due to missing inputs are explicitly stated.";
    const variables = ["[TARGET_AUDIENCE]","[INDUSTRY]","[NICHE]","[PLATFORM]","[BRAND_VOICE]","[PRIMARY_GOAL]"];
    // Initial render with highlighted variables
    document.addEventListener('DOMContentLoaded', function() {
        renderPromptWithHighlights();
    });

    // Live update prompt as user types
    document.querySelectorAll('.customize-input').forEach(input => {
        input.addEventListener('input', renderPromptWithHighlights);
    });

    function renderPromptWithHighlights() {
        const promptContent = document.getElementById('premium-prompt-content');
        if (!promptContent) return;

        let updatedPrompt = originalPrompt;
        let filledVariables = {};

        // Collect filled values
        document.querySelectorAll('.customize-input').forEach(input => {
            const placeholder = input.dataset.placeholder;
            const value = input.value.trim();

            if (value) {
                filledVariables[placeholder] = value;
            }
        });

        // Replace filled variables and highlight remaining
        let htmlContent = escapeHtml(updatedPrompt);

        variables.forEach(placeholder => {
            const escapedPlaceholder = escapeHtml(placeholder);
            const regex = new RegExp(escapeRegex(escapedPlaceholder), 'g');

            if (filledVariables[placeholder]) {
                // Show filled value with green highlight
                htmlContent = htmlContent.replace(regex,
                    '<span class="prompt-variable-filled">' + escapeHtml(filledVariables[placeholder]) + '</span>'
                );
            } else {
                // Show original placeholder with yellow highlight
                htmlContent = htmlContent.replace(regex,
                    '<span class="prompt-variable">' + escapedPlaceholder + '</span>'
                );
            }
        });

        promptContent.innerHTML = htmlContent;
    }

    function escapeRegex(string) {
        return string.replace(/[.*+?^${}()|[\]\\]/g, '\\$&');
    }

    function escapeHtml(text) {
        const div = document.createElement('div');
        div.textContent = text;
        return div.innerHTML;
    }

    function resetPrompt() {
        // Clear all input fields
        document.querySelectorAll('.customize-input').forEach(input => {
            input.value = '';
        });

        // Re-render with original placeholders highlighted
        renderPromptWithHighlights();

        // Visual feedback
        const resetBtns = document.querySelectorAll('.prompt-header-reset, .prompt-cta-reset');
        resetBtns.forEach(btn => {
            const originalText = btn.querySelector('span').textContent;
            btn.querySelector('span').textContent = 'Reset!';
            setTimeout(() => {
                btn.querySelector('span').textContent = originalText;
            }, 1000);
        });
    }


    function getCustomizedPrompt() {
        let updatedPrompt = originalPrompt;

        document.querySelectorAll('.customize-input').forEach(input => {
            const placeholder = input.dataset.placeholder;
            const value = input.value.trim();

            if (value) {
                const regex = new RegExp(escapeRegex(placeholder), 'g');
                updatedPrompt = updatedPrompt.replace(regex, value);
            }
        });

        return updatedPrompt;
    }
</script>

</div>

<div class="pro-tips-section">

<h2 class="wp-block-heading">Pro Tips for Better AI Prompt Results</h2>



<ul class="wp-block-list">

<li><strong>Pick one “earned insight” for the through-line.</strong> Before you run the prompt, write a single sentence that you believe from experience (not a slogan). Example: “Most teams don’t have a lead problem; they have a message-to-market mismatch.” Then ask the AI: “Make the series theme reinforce this belief without sounding preachy.”</li>


<li><strong>Define the viewer’s starting point, not just the niche.</strong> “HR professionals” is broad; “HR managers at 200–1,000 person companies trying to reduce regrettable attrition” gives the prompt something to aim at. If your initial output feels generic, follow up with: “Rewrite the audience snapshot assuming the viewer has tried two solutions already and is skeptical.”</li>


<li><strong>Use intent-matched CTAs instead of salesy ones.</strong> A good CTA fits what someone would naturally do after learning. Try: “Comment ‘Checklist’ and I’ll send the template,” for Video 1, then “Watch part 2 for the diagnostic,” and only in Video 3: “If you want help implementing, here’s the next step.” If the prompt gives you a weak CTA, ask: “Give me 3 CTA alternatives: low-friction, medium-friction, and high-intent.”</li>


<li><strong>Iterate the titles like headlines, not labels.</strong> After the first run, take the best title and request variations: “Generate 10 title options for Video 2. Keep the promise specific, avoid buzzwords, and include a subtle curiosity gap.” Honestly, this is where most series get unlocked.</li>


<li><strong>Pair the series with an ethical conversion asset.</strong> If your mini-series is meant to lead somewhere, decide what “help” looks like and keep it aligned. For example, combine your Video 3 CTA with a behavior-based next step, then refine it using <a href="https://flowpast.com/prompts/build-ethical-behavior-based-offer-messaging-ai-prompt/">https://flowpast.com/prompts/build-ethical-behavior-based-offer-messaging-ai-prompt/</a> so the invitation matches what the viewer actually did (watched, commented, saved, clicked).</li>

</div>

<div class="related-prompts-section">

<h2 class="wp-block-heading">Related Prompts</h2>



<p>Once your 3-part series is mapped, these related prompts help you promote it in a way that feels clean, effective, and on-brand.</p>



<p>If you also need post-video monetization that doesn’t feel pushy, <a href="https://flowpast.com/prompts/build-ethical-e-commerce-upsells-with-this-ai-prompt/">Build Ethical E-commerce Upsells with this AI Prompt</a> is a solid companion. It’s useful when your mini-series drives viewers to a product page and you want add-ons that genuinely improve outcomes (instead of cluttering checkout with random offers).</p>



<p>When your distribution plan includes paid traffic or a content-heavy site, <a href="https://flowpast.com/prompts/reduce-intrusive-ads-and-pop-ups-ai-prompt/">Reduce Intrusive Ads and Pop-ups AI Prompt</a> helps you protect the viewing experience. It’s especially relevant if you’re sending people from YouTube to a landing page and you don’t want aggressive pop-ups to break trust right after a credibility-building video.</p>



<p>For creators doing limited drops or inventory cycles, <a href="https://flowpast.com/prompts/build-ethical-restock-launch-plans-with-this-ai-prompt/">Build Ethical Restock Launch Plans with this AI Prompt</a> pairs well with a mini-series because it turns attention into a clear, respectful launch cadence. Use it when your three videos are meant to warm the audience before a restock window.</p>


<br>


<p>Quick reference:</p>



<ul class="wp-block-list">

<li><a href="https://flowpast.com/prompts/build-ethical-e-commerce-upsells-with-this-ai-prompt/">Build Ethical E-commerce Upsells with this AI Prompt</a>: Add-ons that improve outcomes, not pressure.</li>


<li><a href="https://flowpast.com/prompts/reduce-intrusive-ads-and-pop-ups-ai-prompt/">Reduce Intrusive Ads and Pop-ups AI Prompt</a>: Cleaner site experience after video traffic.</li>


<li><a href="https://flowpast.com/prompts/build-ethical-restock-launch-plans-with-this-ai-prompt/">Build Ethical Restock Launch Plans with this AI Prompt</a>: Respectful countdowns and restock messaging.</li>


<li><a href="https://flowpast.com/prompts/build-ethical-behavior-based-offer-messaging-ai-prompt/">Build Ethical Behavior-Based Offer Messaging AI Prompt</a>: Match CTAs to viewer behavior signals.</li>


<li><a href="https://flowpast.com/prompts/write-ethical-affiliate-hooks-with-this-ai-prompt/">Write Ethical Affiliate Hooks with this AI Prompt</a>: Promote tools without hype or gimmicks.</li>

</ul>

</div>

<div class="faq-section">

<h2 class="wp-block-heading">Common Questions</h2>


<div class="faq-item">
<span class="question">Which roles benefit most from this video mini-series prompt AI prompt?</span>

<p class="answer"><strong>Content Strategists</strong> use this to turn a vague topic into a three-step learning journey they can brief to a creator or editor. <strong>Demand Generation Managers</strong> rely on it when they need an educational run-up that makes the CTA feel earned (newsletter, demo, lead magnet). <strong>Solo creators and coaches</strong> get a repeatable structure that prevents idea-sprawl and keeps each video focused on three teachable moments. <strong>Consultants</strong> apply it to build “authority sequences” they can send to prospects who need proof of thinking, not more credentials.</p>

</div>

<div class="faq-item">
<span class="question">Which industries get the most value from this video mini-series prompt AI prompt?</span>

<p class="answer"><strong>SaaS companies</strong> use it to produce three videos that answer the buyer’s real questions (problem framing, diagnosis, then approach) before asking for a trial. <strong>E-commerce brands</strong> apply it to education that reduces returns and increases satisfaction, like fit guidance, usage tutorials, or “how to choose” series tied to product categories. <strong>Professional services firms</strong> benefit when they need to clarify an intangible offering, for example explaining a three-step audit process and what “good” looks like at each stage. <strong>Creators selling digital products</strong> get the most leverage because the mini-series can become a pinned sequence, an evergreen funnel, and a scripted set of Shorts from one plan.</p>

</div>

<div class="faq-item">
<span class="question">Why do basic AI prompts for planning a 3-part educational video series produce weak results?</span>

<p class="answer">A typical prompt like &#8220;<em>Write me a 3-part video series for my niche</em>&#8221; fails because it: lacks a required pre-analysis that pins down audience and intent, provides no structure that forces exactly three teaching points per video, and ignores the need for a single series through-line that connects episodes. It usually produces generic “tips” instead of a credibility-forward framing that feels original. It also forgets the CTA fit, so you get awkward calls-to-action that don’t match what the viewer is ready to do. Finally, it skips distribution guidance, which is why people end up with a plan they can’t promote consistently.</p>

</div>

<div class="faq-item">
<span class="question">Can I customize this video mini-series prompt for my specific situation?</span>

<p class="answer">Yes. The prompt is designed to adapt based on the inputs you provide for your audience, niche/industry, and platform context (and it defaults platforms if you don’t include them). To customize it, be explicit about the viewer’s current level, the transformation you want across Video 1–3, and the “next step” you want the CTA to drive. After the first output, a good follow-up is: “Now rewrite the series for a more advanced audience, keep the same through-line, and make each CTA one step lower friction.” If you want it to match your brand voice, add: “Use a direct, practical tone with short sentences and zero hype.”</p>

</div>

<div class="faq-item">
<span class="question">What are the most common mistakes when using this video mini-series prompt?</span>

<p class="answer">The biggest mistake is leaving the target audience too vague — instead of “small business owners,” try “service-business owners doing $10–30K/month who rely on referrals and want predictable leads.” Another common error is giving an unclear niche, like “wellness,” versus “postpartum strength training for first-time moms,” which makes the through-line bland. People also forget platform context; if you don’t specify, it will default, but you’ll get better results with details like “YouTube (8–10 min) plus 3 supporting Shorts.” Finally, teams often ask for “more points,” but this prompt is intentionally constrained to three teaching points per video, so the fix is to tighten scope, not add breadth.</p>

</div>

<div class="faq-item">
<span class="question">Who should NOT use this video mini-series prompt?</span>

<p class="answer">This prompt isn’t ideal for one-off viral experiments where you don’t care about sequence, learning progression, or a consistent theme. It also won’t be the best fit if you have not chosen a niche at all and you’re unwilling to answer clarifying questions or accept a best-guess draft. Teams looking for fully scripted word-for-word narration should use a dedicated scriptwriting workflow after this plan, since the output focuses on structure, points, CTAs, and promotion. If that’s you, use this for planning, then run each video outline through a script prompt afterward.</p>

</div>

<script type="application/ld+json">
{
  "@context": "https://schema.org",
  "@type": "FAQPage",
  "mainEntity": [
    {
      "@type": "Question",
      "name": "Which roles benefit most from this video mini-series prompt AI prompt?",
      "acceptedAnswer": {
        "@type": "Answer",
        "text": "Content Strategists use this to turn a vague topic into a three-step learning journey they can brief to a creator or editor. Demand Generation Managers rely on it when they need an educational run-up that makes the CTA feel earned (newsletter, demo, lead magnet). Solo creators and coaches get a repeatable structure that prevents idea-sprawl and keeps each video focused on three teachable moments. Consultants apply it to build “authority sequences” they can send to prospects who need proof of thinking, not more credentials."
      }
    },
    {
      "@type": "Question",
      "name": "Which industries get the most value from this video mini-series prompt AI prompt?",
      "acceptedAnswer": {
        "@type": "Answer",
        "text": "SaaS companies use it to produce three videos that answer the buyer’s real questions (problem framing, diagnosis, then approach) before asking for a trial. E-commerce brands apply it to education that reduces returns and increases satisfaction, like fit guidance, usage tutorials, or “how to choose” series tied to product categories. Professional services firms benefit when they need to clarify an intangible offering, for example explaining a three-step audit process and what “good” looks like at each stage. Creators selling digital products get the most leverage because the mini-series can become a pinned sequence, an evergreen funnel, and a scripted set of Shorts from one plan."
      }
    },
    {
      "@type": "Question",
      "name": "Why do basic AI prompts for planning a 3-part educational video series produce weak results?",
      "acceptedAnswer": {
        "@type": "Answer",
        "text": "A typical prompt like \"Write me a 3-part video series for my niche\" fails because it: lacks a required pre-analysis that pins down audience and intent, provides no structure that forces exactly three teaching points per video, and ignores the need for a single series through-line that connects episodes. It usually produces generic “tips” instead of a credibility-forward framing that feels original. It also forgets the CTA fit, so you get awkward calls-to-action that don’t match what the viewer is ready to do. Finally, it skips distribution guidance, which is why people end up with a plan they can’t promote consistently."
      }
    },
    {
      "@type": "Question",
      "name": "Can I customize this video mini-series prompt for my specific situation?",
      "acceptedAnswer": {
        "@type": "Answer",
        "text": "Yes. The prompt is designed to adapt based on the inputs you provide for your audience, niche/industry, and platform context (and it defaults platforms if you don’t include them). To customize it, be explicit about the viewer’s current level, the transformation you want across Video 1–3, and the “next step” you want the CTA to drive. After the first output, a good follow-up is: “Now rewrite the series for a more advanced audience, keep the same through-line, and make each CTA one step lower friction.” If you want it to match your brand voice, add: “Use a direct, practical tone with short sentences and zero hype.”"
      }
    },
    {
      "@type": "Question",
      "name": "What are the most common mistakes when using this video mini-series prompt?",
      "acceptedAnswer": {
        "@type": "Answer",
        "text": "The biggest mistake is leaving the target audience too vague — instead of “small business owners,” try “service-business owners doing $10–30K/month who rely on referrals and want predictable leads.” Another common error is giving an unclear niche, like “wellness,” versus “postpartum strength training for first-time moms,” which makes the through-line bland. People also forget platform context; if you don’t specify, it will default, but you’ll get better results with details like “YouTube (8–10 min) plus 3 supporting Shorts.” Finally, teams often ask for “more points,” but this prompt is intentionally constrained to three teaching points per video, so the fix is to tighten scope, not add breadth."
      }
    },
    {
      "@type": "Question",
      "name": "Who should NOT use this video mini-series prompt?",
      "acceptedAnswer": {
        "@type": "Answer",
        "text": "This prompt isn’t ideal for one-off viral experiments where you don’t care about sequence, learning progression, or a consistent theme. It also won’t be the best fit if you have not chosen a niche at all and you’re unwilling to answer clarifying questions or accept a best-guess draft. Teams looking for fully scripted word-for-word narration should use a dedicated scriptwriting workflow after this plan, since the output focuses on structure, points, CTAs, and promotion. If that’s you, use this for planning, then run each video outline through a script prompt afterward."
      }
    }
  ]
}
</script>
</div>

<div class="closing-section">

<p>Consistency is easier when your content has a spine. Paste this prompt into ChatGPT, generate your three-video plan, and start publishing with a real sequence behind you.</p>

</div>]]></content:encoded>
					
		
		
		<media:content url="https://flowpast.s3.eu-north-1.amazonaws.com/featured_blog_images/5002402.webp" medium="image"></media:content>
            	</item>
		<item>
		<title>Create a Kids Book Series Concept with this AI Prompt</title>
		<link>https://flowpast.com/prompts/create-a-kids-book-series-concept-with-this-ai-prompt/</link>
		
		<dc:creator><![CDATA[Lisa Granqvist]]></dc:creator>
		<pubDate>Fri, 23 Jan 2026 02:35:26 +0000</pubDate>
				<category><![CDATA[Prompts]]></category>
		<guid isPermaLink="false">https://flowpast.com/?p=5000630</guid>

					<description><![CDATA[Struggling to make kid-friendly topics fun - this AI Prompt builds an original series-ready book concept with characters, world, plot. Discover more AI prompts for marketing, sales, and ops.]]></description>
										<content:encoded><![CDATA[<!-- FOCUS_KEYWORD: kids book series -->

<div class="hook-introduction">

<p>You’ve got a great idea for a children’s book. Then you try to turn it into a series and everything gets fuzzy. The characters feel thin, the world has no “rules,” and the educational angle comes out sounding like a lecture.</p>



<p>This <strong>kids book series</strong> is built for <strong>children’s authors</strong> who need a series-ready concept they can actually write, <strong>content leads at kids’ education brands</strong> who want story worlds that teach without preaching, and <strong>freelance ghostwriters</strong> who must pitch a fresh concept to a client fast. The output is a complete concept package: a learning core, a story-ready world, a recurring cast with growth arcs, and multiple book engines (conflicts, surprises, and “next mystery” hooks).</p>

</div>

<div class="what-and-when-section">

<h2 class="wp-block-heading">What Does This AI Prompt Do and When to Use It?</h2>



<table class="solution-results-table three-column" role="presentation" aria-label="What this prompt does, when to use it, and what you get">
 <thead>
    <tr>
      <th scope="col">What This Prompt Does</th>
      <th scope="col">When to Use This Prompt</th>
      <th scope="col">What You&#8217;ll Get</th>
    </tr>
  </thead>
  <tbody>
    <tr>
      <td>
        <ul class="automation-list">
          <li>It turns a single topic into a kid-friendly series theme with a clear educational thread.</li>
          <li>It selects one primary teachable idea plus 2–3 supporting sub-lessons, phrased in “kid language.”</li>
          <li>It builds a distinctive story world where the rules mirror the logic of the topic (cycles, patterns, systems, cause and effect).</li>
          <li>It designs a recurring cast with motivations, flaws, and growth that can evolve across multiple books.</li>
          <li>It creates repeatable story engines: conflicts, surprises, and unresolved hooks that naturally set up book 2, 3, and beyond.</li>
       </ul>
      </td>
      <td>
        <ul class="results-list">
          <li>You have a topic you care about, but you cannot see how to teach it through story actions instead of explanations.</li>
          <li>You’re pitching a series to an editor or client and need more than “a cute character learns a lesson.”</li>
          <li>Your book 1 concept works, but there’s no obvious way to generate new adventures without repeating yourself.</li>
          <li>You want to avoid overused frameworks (the dream reveal, the generic field trip) and still keep the idea accessible.</li>
          <li>You’re expanding a brand universe (books, videos, classroom resources) and need consistent world rules and recurring locations.</li>
        </ul>
      </td>
       <td>
         <ul class="deliverables-list">
           <li>A series concept package centered on one topic, designed for multi-book longevity.</li>
           <li>1 primary teachable idea plus 2–3 sub-lessons, each rewritten as kid-language learning goals.</li>
           <li>A story-ready setting with 3–5 world rules that can fuel future plots.</li>
           <li>A recurring cast overview including character roles, tensions, and growth arcs across books.</li>
           <li>A set of series “book engines,” including conflict types, surprise mechanisms, and at least one next-mystery hook.</li>
         </ul>
       </td>
    </tr>
  </tbody>
</table>

</div>

<div class="prompt-display-section">

<h2 class="wp-block-heading">The Full AI Prompt: Series-Ready Kids Book Concept Builder</h2>



<div class="prompt-viewer-wrapper" id="prompt-section">
    <div class="prompt-comparison-row prompt-premium">
        <!-- Header with buttons -->
        <div class="prompt-row-header">
            <!-- <span class="prompt-row-icon">✨</span> -->
            <span class="prompt-row-title">
                                    Step 1: Customize the prompt with your input
                            </span>
            <div class="prompt-header-buttons">
                                    <button class="prompt-header-btn prompt-header-reset" onclick="resetPrompt()">
                        <svg xmlns="http://www.w3.org/2000/svg" width="16" height="16" fill="currentColor" viewBox="0 0 16 16">
                            <path fill-rule="evenodd" d="M8 3a5 5 0 1 0 4.546 2.914.5.5 0 0 1 .908-.417A6 6 0 1 1 8 2v1z" />
                            <path d="M8 4.466V.534a.25.25 0 0 1 .41-.192l2.36 1.966c.12.1.12.284 0 .384L8.41 4.658A.25.25 0 0 1 8 4.466z" />
                        </svg>
                        <span>Reset</span>
                    </button>
                                <button class="prompt-header-btn prompt-header-copy-green flowpast-copy-prompt-btn" onclick="handlePromptCopy()">
                    <svg xmlns="http://www.w3.org/2000/svg" width="16" height="16" fill="currentColor" viewBox="0 0 16 16">
                        <path d="M4 1.5H3a2 2 0 0 0-2 2V14a2 2 0 0 0 2 2h10a2 2 0 0 0 2-2V3.5a2 2 0 0 0-2-2h-1v1h1a1 1 0 0 1 1 1V14a1 1 0 0 1-1 1H3a1 1 0 0 1-1-1V3.5a1 1 0 0 1 1-1h1v-1z" />
                        <path d="M9.5 1a.5.5 0 0 1 .5.5v1a.5.5 0 0 1-.5.5h-3a.5.5 0 0 1-.5-.5v-1a.5.5 0 0 1 .5-.5h3zm-3-1A1.5 1.5 0 0 0 5 1.5v1A1.5 1.5 0 0 0 6.5 4h3A1.5 1.5 0 0 0 11 2.5v-1A1.5 1.5 0 0 0 9.5 0h-3z" />
                    </svg>
                    <span>Customize and Copy Full Prompt</span>
                </button>
            </div>
        </div>

        <!-- Customize the Prompt Section -->
                    <div class="prompt-customize-section">
                <span class="customize-title">Customize the Prompt</span>
                <p class="customize-subtitle">Fill in the fields below to personalize this prompt for your needs.</p>
                <table class="customize-table">
                    <thead>
                        <tr>
                            <th>Variable</th>
                            <th>What to Enter</th>
                            <th>Customise the prompt</th>
                        </tr>
                    </thead>
                    <tbody>
                                                    <tr>
                                <td class="var-name"><code>[TOPIC]</code></td>
                                <td class="var-desc">
                                    Specify the central theme or subject that the book will focus on teaching and exploring. Choose a topic that is educational, engaging, and suitable for children.                                    <div class="var-example">For example: "Environmental conservation, focusing on the importance of recycling and protecting wildlife."</div>
                                </td>
                                <td class="var-input">
                                                                            <input
                                            type="text"
                                            class="customize-input"
                                            data-placeholder="[TOPIC]"
                                            placeholder="Enter your value here..." />
                                                                    </td>
                            </tr>
                                                    <tr>
                                <td class="var-name"><code>[TARGET_AUDIENCE]</code></td>
                                <td class="var-desc">
                                    Describe the intended readers of the book, including their age group, interests, and any relevant developmental characteristics.                                    <div class="var-example">For example: "Children aged 7-10 who enjoy adventure stories with magical elements and relatable characters."</div>
                                </td>
                                <td class="var-input">
                                                                            <textarea
                                            class="customize-input"
                                            data-placeholder="[TARGET_AUDIENCE]"
                                            placeholder="Enter your value here..."
                                            rows="3"></textarea>
                                                                    </td>
                            </tr>
                                                    <tr>
                                <td class="var-name"><code>[TONE]</code></td>
                                <td class="var-desc">
                                    Define the tone of the story, including the emotional feel and style of language to be used. Ensure the tone matches the target audience and the educational objectives.                                    <div class="var-example">For example: "Playful and imaginative with a touch of mystery, using accessible language and humor."</div>
                                </td>
                                <td class="var-input">
                                                                            <input
                                            type="text"
                                            class="customize-input"
                                            data-placeholder="[TONE]"
                                            placeholder="Enter your value here..." />
                                                                    </td>
                            </tr>
                                                    <tr>
                                <td class="var-name"><code>[FORMAT]</code></td>
                                <td class="var-desc">
                                    Specify the structure or type of book you envision, such as a picture book, chapter book, or early reader series. Consider the complexity suitable for the age group.                                    <div class="var-example">For example: "A chapter book series with 10-15 short chapters and illustrations scattered throughout."</div>
                                </td>
                                <td class="var-input">
                                                                            <input
                                            type="text"
                                            class="customize-input"
                                            data-placeholder="[FORMAT]"
                                            placeholder="Enter your value here..." />
                                                                    </td>
                            </tr>
                                            </tbody>
                </table>

                <button class="copy-customized-btn flowpast-copy-prompt-btn" onclick="handlePromptCopy()">
                    <svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" fill="currentColor" viewBox="0 0 16 16">
                        <path d="M4 1.5H3a2 2 0 0 0-2 2V14a2 2 0 0 0 2 2h10a2 2 0 0 0 2-2V3.5a2 2 0 0 0-2-2h-1v1h1a1 1 0 0 1 1 1V14a1 1 0 0 1-1 1H3a1 1 0 0 1-1-1V3.5a1 1 0 0 1 1-1h1v-1z" />
                        <path d="M9.5 1a.5.5 0 0 1 .5.5v1a.5.5 0 0 1-.5.5h-3a.5.5 0 0 1-.5-.5v-1a.5.5 0 0 1 .5-.5h3zm-3-1A1.5 1.5 0 0 0 5 1.5v1A1.5 1.5 0 0 0 6.5 4h3A1.5 1.5 0 0 0 11 2.5v-1A1.5 1.5 0 0 0 9.5 0h-3z" />
                    </svg>
                    <span class="copy-customized-text">Customise the prompt now</span>
                </button>
            </div>
        
        <!-- Full Prompt Code Header -->
                    <div class="prompt-code-header">
                <span class="prompt-code-title">
                    Step 2: Copy the Prompt
                </span>
                <div class="prompt-code-buttons">
                    <!-- Reset: Only visible when unlocked -->
                    <button class="prompt-header-btn prompt-header-reset btn-when-unlocked" onclick="resetPrompt()" style="display: none;">
                        <svg xmlns="http://www.w3.org/2000/svg" width="16" height="16" fill="currentColor" viewBox="0 0 16 16">
                            <path fill-rule="evenodd" d="M8 3a5 5 0 1 0 4.546 2.914.5.5 0 0 1 .908-.417A6 6 0 1 1 8 2v1z" />
                            <path d="M8 4.466V.534a.25.25 0 0 1 .41-.192l2.36 1.966c.12.1.12.284 0 .384L8.41 4.658A.25.25 0 0 1 8 4.466z" />
                        </svg>
                        <span>Reset</span>
                    </button>
                    <!-- Copy Full Prompt -->
                    <button class="prompt-header-btn prompt-header-copy flowpast-copy-prompt-btn" onclick="handlePromptCopy()">
                        <svg xmlns="http://www.w3.org/2000/svg" width="16" height="16" fill="currentColor" viewBox="0 0 16 16">
                            <path d="M4 1.5H3a2 2 0 0 0-2 2V14a2 2 0 0 0 2 2h10a2 2 0 0 0 2-2V3.5a2 2 0 0 0-2-2h-1v1h1a1 1 0 0 1 1 1V14a1 1 0 0 1-1 1H3a1 1 0 0 1-1-1V3.5a1 1 0 0 1 1-1h1v-1z" />
                            <path d="M9.5 1a.5.5 0 0 1 .5.5v1a.5.5 0 0 1-.5.5h-3a.5.5 0 0 1-.5-.5v-1a.5.5 0 0 1 .5-.5h3zm-3-1A1.5 1.5 0 0 0 5 1.5v1A1.5 1.5 0 0 0 6.5 4h3A1.5 1.5 0 0 0 11 2.5v-1A1.5 1.5 0 0 0 9.5 0h-3z" />
                        </svg>
                        <span>Copy Full Prompt</span>
                    </button>
                </div>
            </div>
        

        <!-- Prompt Content -->
        <div class="prompt-box prompt-gated-wrapper">
            <!-- Gated: Blurred content -->
            <div class="prompt-gated-content">
                <div class="prompt-header-visible">OBJECTIVE</div><div class="locked-section"><div class="locked-section-bg"><div class="locked-section-lines"><div class="locked-line" style="width: 85%;"></div><div class="locked-line" style="width: 78%;"></div></div></div><div class="locked-section-icon">🔒</div></div><div class="prompt-header-visible">PERSONA</div><div class="locked-section"><div class="locked-section-bg"><div class="locked-section-lines"><div class="locked-line" style="width: 85%;"></div><div class="locked-line" style="width: 78%;"></div></div></div><div class="locked-section-icon">🔒</div></div><div class="prompt-header-visible">CONSTRAINTS</div><div class="locked-section"><div class="locked-section-bg"><div class="locked-section-lines"><div class="locked-line" style="width: 85%;"></div><div class="locked-line" style="width: 78%;"></div><div class="locked-line" style="width: 92%;"></div><div class="locked-line" style="width: 75%;"></div><div class="locked-line" style="width: 88%;"></div></div></div><div class="locked-section-icon">🔒</div></div><div class="prompt-header-visible subheader">What This Is NOT</div><div class="locked-section"><div class="locked-section-bg"><div class="locked-section-lines"><div class="locked-line" style="width: 85%;"></div><div class="locked-line" style="width: 78%;"></div><div class="locked-line" style="width: 92%;"></div></div></div><div class="locked-section-icon">🔒</div></div><div class="prompt-header-visible">PROCESS</div><div class="locked-section"><div class="locked-section-bg"><div class="locked-section-lines"><div class="locked-line" style="width: 85%;"></div><div class="locked-line" style="width: 78%;"></div><div class="locked-line" style="width: 92%;"></div><div class="locked-line" style="width: 75%;"></div><div class="locked-line" style="width: 88%;"></div><div class="locked-line" style="width: 72%;"></div><div class="locked-line" style="width: 80%;"></div><div class="locked-line" style="width: 95%;"></div><div class="locked-line" style="width: 70%;"></div></div></div><div class="locked-section-icon">🔒</div></div><div class="prompt-header-visible subheader">Edge Case Handling</div><div class="locked-section"><div class="locked-section-bg"><div class="locked-section-lines"><div class="locked-line" style="width: 85%;"></div><div class="locked-line" style="width: 78%;"></div><div class="locked-line" style="width: 92%;"></div></div></div><div class="locked-section-icon">🔒</div></div><div class="prompt-header-visible">INPUTS</div><div class="locked-section"><div class="locked-section-bg"><div class="locked-section-lines"><div class="locked-line" style="width: 85%;"></div><div class="locked-line" style="width: 78%;"></div><div class="locked-line" style="width: 92%;"></div><div class="locked-line" style="width: 75%;"></div></div></div><div class="locked-section-icon">🔒</div></div><div class="prompt-header-visible">OUTPUT SPECIFICATION</div><div class="locked-section"><div class="locked-section-bg"><div class="locked-section-lines"><div class="locked-line" style="width: 85%;"></div><div class="locked-line" style="width: 78%;"></div><div class="locked-line" style="width: 92%;"></div><div class="locked-line" style="width: 75%;"></div><div class="locked-line" style="width: 88%;"></div><div class="locked-line" style="width: 72%;"></div><div class="locked-line" style="width: 80%;"></div><div class="locked-line" style="width: 95%;"></div><div class="locked-line" style="width: 70%;"></div><div class="locked-line" style="width: 83%;"></div><div class="locked-line" style="width: 85%;"></div><div class="locked-line" style="width: 78%;"></div><div class="locked-line" style="width: 92%;"></div><div class="locked-line" style="width: 75%;"></div><div class="locked-line" style="width: 88%;"></div><div class="locked-line" style="width: 72%;"></div><div class="locked-line" style="width: 80%;"></div><div class="locked-line" style="width: 95%;"></div><div class="locked-line" style="width: 70%;"></div><div class="locked-line" style="width: 83%;"></div><div class="locked-line" style="width: 85%;"></div><div class="locked-line" style="width: 78%;"></div><div class="locked-line" style="width: 92%;"></div><div class="locked-line" style="width: 75%;"></div><div class="locked-line" style="width: 88%;"></div><div class="locked-line" style="width: 72%;"></div><div class="locked-line" style="width: 80%;"></div><div class="locked-line" style="width: 95%;"></div><div class="locked-line" style="width: 70%;"></div><div class="locked-line" style="width: 83%;"></div><div class="locked-line" style="width: 85%;"></div><div class="locked-line" style="width: 78%;"></div><div class="locked-line" style="width: 92%;"></div><div class="locked-line" style="width: 75%;"></div><div class="locked-line" style="width: 88%;"></div><div class="locked-line" style="width: 72%;"></div><div class="locked-line" style="width: 80%;"></div><div class="locked-line" style="width: 95%;"></div><div class="locked-line" style="width: 70%;"></div></div></div><div class="locked-section-icon">🔒</div></div><div class="prompt-header-visible">QUALITY CHECKS</div><div class="locked-section"><div class="locked-section-bg"><div class="locked-section-lines"><div class="locked-line" style="width: 85%;"></div><div class="locked-line" style="width: 78%;"></div><div class="locked-line" style="width: 92%;"></div><div class="locked-line" style="width: 75%;"></div><div class="locked-line" style="width: 88%;"></div><div class="locked-line" style="width: 72%;"></div></div></div><div class="locked-section-icon">🔒</div></div>            </div>
            <!-- Unlocked: Full content (hidden by default) -->
            <div class="prompt-content-full" id="premium-prompt-content" style="display: none;">
                ## OBJECTIVE
Design an original, kid-friendly book theme centered on **[TOPIC]** that is entertaining *and* instructive, with clear potential to grow into a multi-book series. The deliverable must include a story-ready world, cast, learning focus, character growth, and story engines (conflicts + surprises) that naturally teach concepts tied to **[TOPIC]**.

## PERSONA
Write as a seasoned children’s fiction creator and series architect—highly imaginative, developmentally aware, and skilled at weaving real learning into playful adventures. Keep language accessible and vivid, like you’re pitching a new book concept to an editor.

## CONSTRAINTS
- Suitable for children (no graphic violence, cruelty, or mature themes).
- Educational thread must be accurate *and* easy to grasp through story actions, not lectures.
- Theme must feel fresh (avoid common, overused “school field trip” or “it was all a dream” frameworks unless you reinvent them heavily).
- Build in series longevity: recurring locations, expandable rules of the world, and unresolved “next mystery” hooks.
- Use **delivery standards** below; follow the **deliverable structure** exactly.

### What This Is NOT
- Not a full manuscript, chapter-by-chapter outline, or final prose pages.
- Not a dry lesson plan or textbook summary of **[TOPIC]**.
- Not a marketing plan, cover copy, or illustration brief (unless explicitly requested in inputs).

## PROCESS
1. **Pre-Analysis (required):** State your understanding of the assignment in 2–4 sentences, including the intended age feel you’re aiming for and what part of **[TOPIC]** you’ll teach through the story.
2. **Learning Core:** Select 1 primary teachable idea within **[TOPIC]** plus 2–3 supporting sub-lessons. Convert each into “kid language” phrasing.
3. **World Forge:** Invent a distinctive setting where the rules of the place mirror the logic of **[TOPIC]** (e.g., cause/effect, cycles, systems, patterns). Add 3–5 world rules that can fuel multiple books.
4. **Hero Team:** Create main characters (kids or kid-coded beings) with contrasting traits, including a flaw that will create trouble. Ensure each has a personal goal tied to the learning core.
5. **Growth Paths:** Map how each main character changes by the end (what they believe at the start vs. what they learn to do differently).
6. **Story Engine:** Propose a central problem, escalating obstacles, and a “hook mechanism” (a recurring story device that makes future episodes easy).
7. **Surprises:** Add 2–3 plot reversals that are fair (foreshadowable) and directly connected to **[TOPIC]** understanding.
8. **Allies &amp; Guides:** Add supporting characters (animal, magical, inventor, librarian, etc.) who help—but do not solve everything. Give each a clear function.
9. **Ending + Series Doorway:** Provide a satisfying resolution with a moral/insight linked to **[TOPIC]**, plus 2 sequel seeds.

### Edge Case Handling
- If **[TOPIC]** is broad, choose a specific slice and explain your choice in the Pre-Analysis.
- If **[TOPIC]** is sensitive/advanced (e.g., heavy science, tragedy, conflict), simplify to age-appropriate metaphors and focus on safe, constructive angles.
- If **[TOPIC]** is unclear, propose 3 interpretations and proceed with the strongest one.

## INPUTS
- **Topic for the book:** [TOPIC]
- **Primary user segment (optional):** [TARGET_AUDIENCE]
- **Tone preference (optional):** [TONE]
- **Format/length preference (optional):** [FORMAT]

## OUTPUT SPECIFICATION
Provide the following sections in order:

1. **Task Understanding**
   - {Intended Age Feel}
   - {Learning Focus Chosen From Topic}
   - {One-Sentence Promise Of The Series}

2. **Theme Statement**
   - {Theme Logline} (1–2 sentences)
   - {Core Lesson In Kid Words}
   - {Supporting Lessons} (bullets)

3. **Setting &amp; World Rules**
   - {World Name And Description}
   - {Key Locations} (3–6 bullets)
   - {World Rules That Enable Many Stories} (3–5 bullets)
   - {Series “Home Base” Location}

4. **Main Characters**
   For each main character:
   - {Name}
   - {Role In The Group}
   - {Personality Snapshot}
   - {Flaw / Limitation}
   - {Personal Goal}
   - {Arc: Start → Shift → End}

5. **Support Cast**
   For each supporting character:
   - {Name}
   - {Type (mentor/sidekick/rival/etc.)}
   - {How They Help The Learning Without Lecturing}
   - {Recurring Series Potential}

6. **Plot Blueprint (Book 1)**
   - {Inciting Incident}
   - {Main Problem}
   - {Rising Challenges} (3–5 bullets tied to lessons)
   - {Plot Twists} (2–3 bullets)
   - {Climax Choice The Heroes Must Make}
   - {Resolution + Clear Takeaway}

7. **Series Expansion Hooks**
   - {Recurring Hook Mechanism}
   - {Next-Book Seeds} (2–4 bullets)
   - {Long-Arc Mystery Or Goal} (1–2 sentences)

## QUALITY CHECKS
At the end, include a brief checklist confirming:
- Educational content is embedded in events, not explained like a lecture.
- Characters demonstrate meaningful growth connected to **[TOPIC]**.
- Setting has reusable rules and locations suitable for a series.
- Plot includes at least two fair surprises tied to the learning.
- The concept is age-appropriate, original, and easy to pitch in one sentence.            </div>
        </div>


    </div>

    <!-- CTA Row - Full width buttons -->
    <div class="prompt-cta-row">
        <button class="prompt-cta-btn prompt-cta-copy flowpast-copy-prompt-btn" onclick="handlePromptCopy()">
            <svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" fill="currentColor" viewBox="0 0 16 16">
                <path d="M4 1.5H3a2 2 0 0 0-2 2V14a2 2 0 0 0 2 2h10a2 2 0 0 0 2-2V3.5a2 2 0 0 0-2-2h-1v1h1a1 1 0 0 1 1 1V14a1 1 0 0 1-1 1H3a1 1 0 0 1-1-1V3.5a1 1 0 0 1 1-1h1v-1z" />
                <path d="M9.5 1a.5.5 0 0 1 .5.5v1a.5.5 0 0 1-.5.5h-3a.5.5 0 0 1-.5-.5v-1a.5.5 0 0 1 .5-.5h3zm-3-1A1.5 1.5 0 0 0 5 1.5v1A1.5 1.5 0 0 0 6.5 4h3A1.5 1.5 0 0 0 11 2.5v-1A1.5 1.5 0 0 0 9.5 0h-3z" />
            </svg>
            <span class="cta-copy-text">Copy Full Prompt</span>
        </button>
    </div>
</div>

<style>
    /* Gated prompt states */
    .prompt-gated-wrapper {
        position: relative;
    }

    /* When unlocked - show full content, hide gated */
    body.flowpast-unlocked .prompt-gated-wrapper .prompt-gated-content {
        display: none;
    }

    body.flowpast-unlocked .prompt-gated-wrapper .prompt-content-full {
        display: block !important;
    }

    /* Show/hide elements based on unlock state */
    body.flowpast-unlocked .btn-when-unlocked {
        display: inline-flex !important;
    }

    .prompt-viewer-wrapper {
        scroll-margin-top: 250px;
    }

    /* ========================================
   PROMPT VIEWER - MAIN WRAPPER
   ======================================== */
    .prompt-viewer-wrapper {
        margin: 30px 0;
        display: flex;
        flex-direction: column;
        gap: 20px;
    }

    /* ========================================
   PROMPT BOX CONTAINER
   ======================================== */
    .prompt-comparison-row {
        border-radius: 12px;
        overflow: hidden;
        border: 1px solid #e0e0e0;
        background: #fff;
    }

    /* ========================================
   HEADER WITH BUTTONS
   ======================================== */
    .prompt-row-header {
        display: flex;
        align-items: center;
        gap: 10px;
        padding: 14px 20px;
        color: #fff !important;
        background: #141414;
        border-bottom: 1px solid #e0e0e0;
        flex-wrap: wrap;
    }

    .prompt-row-icon {
        font-size: 20px;
    }

    .prompt-row-title {
        font-weight: 600;
        font-size: 22px;
        color: #fff !important;
        text-decoration: underline
    }

    .prompt-header-buttons {
        margin-left: auto;
        display: flex;
        gap: 10px;
        flex-wrap: wrap;
    }

    /* Header buttons */
    .prompt-header-btn {
        display: inline-flex;
        align-items: center;
        gap: 8px;
        padding: 10px 20px;
        border-radius: 6px;
        font-size: 14px;
        font-weight: 600;
        cursor: pointer;
        transition: all 0.2s;
        text-decoration: none;
        border: none;
    }

    .prompt-header-copy {
        background: #3a3a3a;
        color: #fff;
    }

    .prompt-header-copy:hover {
        background: #2a2a2a;
    }

    .prompt-header-copy.copied {
        background: #2e7d32;
    }

    .prompt-header-copy-green {
        background: #04AA6D !important;
        color: #fff !important;
    }

    .prompt-header-copy-green:hover {
        background: #039860 !important;
    }

    .prompt-header-copy-green.copied {
        background: #2e7d32 !important;
    }

    .prompt-header-access {
        background: rgb(5, 152, 98);
        color: #fff !important;
    }

    .prompt-header-access:hover {
        background: rgb(4, 130, 83);
        transform: translateY(-1px);
    }

    /* ========================================
   PROMPT CONTENT - FULL (NO SCROLL)
   ======================================== */
    .prompt-box {
        background: #ffffff;
    }

    .prompt-content-full {
        padding: 24px;
        margin: 0;
        color: #202124;
        background: #ffffff;
        font-family: 'Fira Code', 'Monaco', 'Consolas', monospace;
        font-size: 13px;
        line-height: 1.7;
        white-space: pre-wrap;
        word-wrap: break-word;
        /* No scroll - show full content */
        max-height: none;
        overflow: visible;
    }

    /* Highlighted variable in prompt */
    .prompt-variable {
        background: #fff3cd;
        color: #1967d2;
        font-weight: 700;
        padding: 2px 4px;
        border-radius: 3px;
        border: 1px solid #ffc107;
    }

    .prompt-variable-filled {
        background: #d4edda;
        color: #155724;
        font-weight: 700;
        padding: 2px 4px;
        border-radius: 3px;
        border: 1px solid #28a745;
    }

    /* ========================================
   GATED CONTENT (NO ACCESS)
   ======================================== */
    .prompt-gated-content {
        padding: 24px;
        background: #ffffff;
        font-family: 'Fira Code', 'Monaco', 'Consolas', monospace;
        font-size: 13px;
        line-height: 1.8;
        max-height: none;
        overflow: visible;
        user-select: none;
        -webkit-user-select: none;
        -moz-user-select: none;
        -ms-user-select: none;
        cursor: default;
    }

    /* ## headers - larger, black */
    .prompt-header-visible {
        color: #202124;
        font-weight: 600;
        margin: 5px 0 0px 0;
        font-size: 20px;
        user-select: none;
        -webkit-user-select: none;
        -moz-user-select: none;
        -ms-user-select: none;
        text-decoration: underline;
        text-underline-offset: 4px;
    }

    /* ### headers - smaller, black */
    .prompt-header-visible.subheader {
        color: #202124;
        font-weight: 600;
        margin: 5px 0;
        font-size: 18px;
    }

    .prompt-header-visible:first-child {
        margin-top: 0;
    }

    /* ========================================
   LOCKED SECTION BLOCK
   ======================================== */
    .locked-section {
        position: relative;
        margin: 4px 0 8px 0;
        border-radius: 6px;
        overflow: hidden;
        background: linear-gradient(110deg, #e2e8f0 8%, #f1f5f9 18%, #e2e8f0 33%);
        user-select: none;
        -webkit-user-select: none;
        -moz-user-select: none;
        -ms-user-select: none;
    }

    .locked-section-bg {
        position: relative;
    }

    .locked-section-lines {
        padding: 8px 12px;
        position: relative;
    }

    .locked-line {
        height: 6px;
        background: rgba(255, 255, 255, 0.6);
        border-radius: 3px;
        margin-bottom: 4px;
        margin-left: 12px;
    }

    .locked-line:last-child {
        margin-bottom: 0;
    }

    .locked-section-icon {
        position: absolute;
        top: 50%;
        left: 50%;
        transform: translate(-50%, -50%);
        z-index: 10;
        font-size: 24px;
        filter: drop-shadow(0 1px 3px rgba(0, 0, 0, 0.1));
    }

    /* Subheader locked sections - slightly indented */
    /*  .prompt-header-visible.subheader+.locked-section {
        margin-left: 16px;
    } */

    /* ========================================
   COMPATIBILITY BADGES
   ======================================== */
    .prompt-compatibility {
        display: flex;
        flex-wrap: wrap;
        align-items: center;
        gap: 8px;
        padding: 12px 20px;
        background: #f8f9fa;
        border-top: 1px solid #e0e0e0;
    }

    .compat-label {
        font-size: 13px;
        color: #5f6368;
        font-weight: 500;
    }

    .compat-badge {
        padding: 4px 10px;
        background: #e8f0fe;
        color: #1967d2;
        border-radius: 4px;
        font-size: 12px;
        font-weight: 500;
    }

    /* ========================================
   CTA ROW - FULL WIDTH BUTTONS
   ======================================== */
    .prompt-cta-row {
        display: flex;
        gap: 16px;
        flex-wrap: wrap;
    }

    .prompt-cta-btn {
        flex: 1;
        min-width: 200px;
        display: inline-flex;
        align-items: center;
        justify-content: center;
        gap: 10px;
        padding: 16px 24px;
        border-radius: 8px;
        font-size: 16px;
        font-weight: 600;
        cursor: pointer;
        transition: all 0.2s;
        text-decoration: none;
        border: none;
    }

    .prompt-cta-copy {
        background: #3a3a3a;
        color: #fff;
    }

    .prompt-cta-copy:hover {
        background: #2a2a2a;
        transform: translateY(-2px);
        box-shadow: 0 4px 12px rgba(0, 0, 0, 0.15);
    }

    .prompt-cta-copy.copied {
        background: #2e7d32;
    }

    .prompt-cta-reset {
        background: #3a3a3a;
        color: #fff;
    }

    .prompt-cta-reset:hover {
        background: #2a2a2a;
        transform: translateY(-2px);
        box-shadow: 0 4px 12px rgba(0, 0, 0, 0.15);
    }

    .prompt-cta-access {
        background: rgb(5, 152, 98);
        color: #fff !important;
    }

    .prompt-cta-access:hover {
        background: rgb(4, 130, 83);
        transform: translateY(-2px);
        box-shadow: 0 4px 12px rgba(5, 152, 98, 0.3);
    }

    /* ========================================
    CUSTOMIZE YOUR PROMPT SECTION
    ======================================== */
    .prompt-customize-section {
        padding: 24px;
        border-bottom: 1px solid #e0e0e0;
        background: #fafbfc;
    }

    .customize-title {
        margin: 0 0 8px 0;
        font-size: 18px;
        font-weight: 700;
        color: #202124;
    }

    .customize-subtitle {
        margin: 0 0 20px 0;
        font-size: 14px;
        color: #5f6368;
    }

    .customize-table {
        width: 100%;
        border-collapse: collapse;
        margin-bottom: 20px;
    }

    .customize-table th {
        text-align: left;
        padding: 12px;
        background: #f1f3f4;
        border: 1px solid #e0e0e0;
        font-size: 13px;
        font-weight: 600;
        color: #202124;
    }

    .customize-table td {
        padding: 12px;
        border: 1px solid #e0e0e0;
        vertical-align: top;
    }

    .customize-table .var-name {
        width: 25%;
        background: #f8f9fa;
    }

    .customize-table .var-name code {
        background: #fff3cd;
        color: #1967d2;
        border: 1px solid #ffc107;
        padding: 4px 8px;
        border-radius: 4px;
        font-size: 12px;
        word-break: break-all;
        font-weight: 600;
    }

    .customize-table .var-desc {
        width: 35%;
        font-size: 13px;
        color: #5f6368;
        line-height: 1.5;
    }

    .customize-table .var-example {
        margin-top: 8px;
        padding: 8px 10px;
        background: #f8f9fa;
        border-left: 3px solid #dadce0;
        font-size: 12px;
        color: #5f6368;
        font-style: italic;
        border-radius: 0 4px 4px 0;
    }

    .customize-table .var-input {
        width: 40%;
    }

    .customize-input {
        width: 100%;
        padding: 10px 12px;
        border: 1px solid #dadce0;
        border-radius: 6px;
        font-size: 13px;
        font-family: inherit;
        resize: vertical;
        transition: border-color 0.2s, box-shadow 0.2s;
    }

    .customize-input:focus {
        outline: none;
        border-color: rgb(5, 152, 98);
        box-shadow: 0 0 0 3px rgba(5, 152, 98, 0.1);
    }

    .customize-input::placeholder {
        color: #9aa0a6;
        font-style: italic;
    }

    .copy-customized-btn {
        display: flex;
        align-items: center;
        justify-content: center;
        gap: 10px;
        width: 100%;
        padding: 16px 24px;
        background: rgb(5, 152, 98);
        color: #fff;
        border: none;
        border-radius: 8px;
        font-size: 16px;
        font-weight: 600;
        cursor: pointer;
        transition: all 0.2s;
    }

    .copy-customized-btn:hover {
        background: rgb(4, 130, 83);
        transform: translateY(-2px);
        box-shadow: 0 4px 12px rgba(5, 152, 98, 0.3);
    }

    .copy-customized-btn.copied {
        background: #2e7d32;
    }

    /* ========================================
    FULL PROMPT CODE HEADER
    ======================================== */
    .prompt-code-header {
        display: flex;
        align-items: center;
        justify-content: space-between;
        padding: 10px 20px;
        color: #fff !important;
        background: #141414;
        border-bottom: 1px solid #e0e0e0;
    }

    .prompt-code-title {
        font-size: 22px;
        font-weight: 600;
        text-decoration: underline;

    }

    .prompt-code-buttons {
        display: flex;
        gap: 8px;
    }

    .prompt-code-buttons .prompt-header-btn {
        padding: 8px 14px;
        font-size: 13px;
        background: #ffffff;
        color: #202124;
        border: 1px solid #dadce0;
    }

    .prompt-code-buttons .prompt-header-access {
        background: rgb(5, 152, 98);
        color: #fff !important;
        border-color: rgb(5, 152, 98);
    }

    .prompt-code-buttons .prompt-header-btn.prompt-header-access:hover {
        background: rgb(4, 130, 83) !important;
        border-color: rgb(4, 130, 83);
        color: #fff !important;
    }

    .prompt-code-buttons .prompt-header-btn:hover {
        background: #f1f3f4;
    }

    .prompt-code-buttons .prompt-header-copy.copied {
        background: #d4edda;
        color: #155724;
        border-color: #28a745;
    }

    .prompt-header-reset {
        background: #ffffff;
        color: #202124;
    }

    /* ========================================
   RESPONSIVE
   ======================================== */
    @media (max-width: 768px) {
        .prompt-row-header {
            flex-direction: column;
            align-items: flex-start;
            gap: 12px;
        }

        .prompt-header-buttons {
            margin-left: 0;
            width: 100%;
        }

        .prompt-header-btn {
            flex: 1;
            justify-content: center;
        }

        .prompt-cta-row {
            flex-direction: column;
        }

        .prompt-cta-btn {
            width: 100%;
        }

        /* Customize table responsive */
        .customize-table,
        .customize-table thead,
        .customize-table tbody,
        .customize-table tr,
        .customize-table th,
        .customize-table td {
            display: block;
        }

        .customize-table thead {
            display: none;
        }

        .customize-table tr {
            margin-bottom: 16px;
            border: 1px solid #e0e0e0;
            border-radius: 8px;
            overflow: hidden;
        }

        .customize-table td {
            width: 100% !important;
            border: none;
            border-bottom: 1px solid #e0e0e0;
        }

        .customize-table td:last-child {
            border-bottom: none;
        }

        .customize-table .var-name {
            background: #f1f3f4;
            font-weight: 600;
        }

        .prompt-code-header {
            flex-direction: column;
            gap: 12px;
            align-items: flex-start;
        }

        .prompt-code-buttons {
            width: 100%;
        }

        .prompt-code-buttons .prompt-header-btn {
            flex: 1;
            justify-content: center;
        }
    }
</style>

<script>
    function handlePromptCopy() {
        // Check if unlocked via cookie
        if (typeof window.flowpastIsUnlocked === 'function' && !window.flowpastIsUnlocked()) {
            // Show email popup
            if (typeof window.flowpastShowEmailPopup === 'function') {
                window.flowpastShowEmailPopup('prompt');
            }
            return;
        }

        // Copy the customized prompt (with filled variables)
        const customizedPrompt = getCustomizedPrompt();
        const copyButtons = document.querySelectorAll('.prompt-header-copy, .prompt-header-copy-green, .prompt-cta-copy, .copy-customized-btn');

        navigator.clipboard.writeText(customizedPrompt).then(() => {
            copyButtons.forEach(btn => {
                btn.classList.add('copied');
                const textSpan = btn.querySelector('span');
                if (textSpan) textSpan.textContent = 'Copied!';
            });

            setTimeout(() => {
                copyButtons.forEach(btn => {
                    btn.classList.remove('copied');
                    const textSpan = btn.querySelector('span');
                    if (textSpan) textSpan.textContent = 'Copy Full Prompt';
                });
            }, 2000);
        }).catch(err => {
            console.error('Failed to copy:', err);
        });
    }

    // Store original prompt for customization
    const originalPrompt = "## OBJECTIVE\r\nDesign an original, kid-friendly book theme centered on **[TOPIC]** that is entertaining *and* instructive, with clear potential to grow into a multi-book series. The deliverable must include a story-ready world, cast, learning focus, character growth, and story engines (conflicts + surprises) that naturally teach concepts tied to **[TOPIC]**.\r\n\r\n## PERSONA\r\nWrite as a seasoned children\u2019s fiction creator and series architect\u2014highly imaginative, developmentally aware, and skilled at weaving real learning into playful adventures. Keep language accessible and vivid, like you\u2019re pitching a new book concept to an editor.\r\n\r\n## CONSTRAINTS\r\n- Suitable for children (no graphic violence, cruelty, or mature themes).\r\n- Educational thread must be accurate *and* easy to grasp through story actions, not lectures.\r\n- Theme must feel fresh (avoid common, overused \u201cschool field trip\u201d or \u201cit was all a dream\u201d frameworks unless you reinvent them heavily).\r\n- Build in series longevity: recurring locations, expandable rules of the world, and unresolved \u201cnext mystery\u201d hooks.\r\n- Use **delivery standards** below; follow the **deliverable structure** exactly.\r\n\r\n### What This Is NOT\r\n- Not a full manuscript, chapter-by-chapter outline, or final prose pages.\r\n- Not a dry lesson plan or textbook summary of **[TOPIC]**.\r\n- Not a marketing plan, cover copy, or illustration brief (unless explicitly requested in inputs).\r\n\r\n## PROCESS\r\n1. **Pre-Analysis (required):** State your understanding of the assignment in 2\u20134 sentences, including the intended age feel you\u2019re aiming for and what part of **[TOPIC]** you\u2019ll teach through the story.\r\n2. **Learning Core:** Select 1 primary teachable idea within **[TOPIC]** plus 2\u20133 supporting sub-lessons. Convert each into \u201ckid language\u201d phrasing.\r\n3. **World Forge:** Invent a distinctive setting where the rules of the place mirror the logic of **[TOPIC]** (e.g., cause\/effect, cycles, systems, patterns). Add 3\u20135 world rules that can fuel multiple books.\r\n4. **Hero Team:** Create main characters (kids or kid-coded beings) with contrasting traits, including a flaw that will create trouble. Ensure each has a personal goal tied to the learning core.\r\n5. **Growth Paths:** Map how each main character changes by the end (what they believe at the start vs. what they learn to do differently).\r\n6. **Story Engine:** Propose a central problem, escalating obstacles, and a \u201chook mechanism\u201d (a recurring story device that makes future episodes easy).\r\n7. **Surprises:** Add 2\u20133 plot reversals that are fair (foreshadowable) and directly connected to **[TOPIC]** understanding.\r\n8. **Allies & Guides:** Add supporting characters (animal, magical, inventor, librarian, etc.) who help\u2014but do not solve everything. Give each a clear function.\r\n9. **Ending + Series Doorway:** Provide a satisfying resolution with a moral\/insight linked to **[TOPIC]**, plus 2 sequel seeds.\r\n\r\n### Edge Case Handling\r\n- If **[TOPIC]** is broad, choose a specific slice and explain your choice in the Pre-Analysis.\r\n- If **[TOPIC]** is sensitive\/advanced (e.g., heavy science, tragedy, conflict), simplify to age-appropriate metaphors and focus on safe, constructive angles.\r\n- If **[TOPIC]** is unclear, propose 3 interpretations and proceed with the strongest one.\r\n\r\n## INPUTS\r\n- **Topic for the book:** [TOPIC]\r\n- **Primary user segment (optional):** [TARGET_AUDIENCE]\r\n- **Tone preference (optional):** [TONE]\r\n- **Format\/length preference (optional):** [FORMAT]\r\n\r\n## OUTPUT SPECIFICATION\r\nProvide the following sections in order:\r\n\r\n1. **Task Understanding**\r\n   - {Intended Age Feel}\r\n   - {Learning Focus Chosen From Topic}\r\n   - {One-Sentence Promise Of The Series}\r\n\r\n2. **Theme Statement**\r\n   - {Theme Logline} (1\u20132 sentences)\r\n   - {Core Lesson In Kid Words}\r\n   - {Supporting Lessons} (bullets)\r\n\r\n3. **Setting & World Rules**\r\n   - {World Name And Description}\r\n   - {Key Locations} (3\u20136 bullets)\r\n   - {World Rules That Enable Many Stories} (3\u20135 bullets)\r\n   - {Series \u201cHome Base\u201d Location}\r\n\r\n4. **Main Characters**\r\n   For each main character:\r\n   - {Name}\r\n   - {Role In The Group}\r\n   - {Personality Snapshot}\r\n   - {Flaw \/ Limitation}\r\n   - {Personal Goal}\r\n   - {Arc: Start \u2192 Shift \u2192 End}\r\n\r\n5. **Support Cast**\r\n   For each supporting character:\r\n   - {Name}\r\n   - {Type (mentor\/sidekick\/rival\/etc.)}\r\n   - {How They Help The Learning Without Lecturing}\r\n   - {Recurring Series Potential}\r\n\r\n6. **Plot Blueprint (Book 1)**\r\n   - {Inciting Incident}\r\n   - {Main Problem}\r\n   - {Rising Challenges} (3\u20135 bullets tied to lessons)\r\n   - {Plot Twists} (2\u20133 bullets)\r\n   - {Climax Choice The Heroes Must Make}\r\n   - {Resolution + Clear Takeaway}\r\n\r\n7. **Series Expansion Hooks**\r\n   - {Recurring Hook Mechanism}\r\n   - {Next-Book Seeds} (2\u20134 bullets)\r\n   - {Long-Arc Mystery Or Goal} (1\u20132 sentences)\r\n\r\n## QUALITY CHECKS\r\nAt the end, include a brief checklist confirming:\r\n- Educational content is embedded in events, not explained like a lecture.\r\n- Characters demonstrate meaningful growth connected to **[TOPIC]**.\r\n- Setting has reusable rules and locations suitable for a series.\r\n- Plot includes at least two fair surprises tied to the learning.\r\n- The concept is age-appropriate, original, and easy to pitch in one sentence.";
    const variables = ["[TOPIC]","[TARGET_AUDIENCE]","[TONE]","[FORMAT]"];
    // Initial render with highlighted variables
    document.addEventListener('DOMContentLoaded', function() {
        renderPromptWithHighlights();
    });

    // Live update prompt as user types
    document.querySelectorAll('.customize-input').forEach(input => {
        input.addEventListener('input', renderPromptWithHighlights);
    });

    function renderPromptWithHighlights() {
        const promptContent = document.getElementById('premium-prompt-content');
        if (!promptContent) return;

        let updatedPrompt = originalPrompt;
        let filledVariables = {};

        // Collect filled values
        document.querySelectorAll('.customize-input').forEach(input => {
            const placeholder = input.dataset.placeholder;
            const value = input.value.trim();

            if (value) {
                filledVariables[placeholder] = value;
            }
        });

        // Replace filled variables and highlight remaining
        let htmlContent = escapeHtml(updatedPrompt);

        variables.forEach(placeholder => {
            const escapedPlaceholder = escapeHtml(placeholder);
            const regex = new RegExp(escapeRegex(escapedPlaceholder), 'g');

            if (filledVariables[placeholder]) {
                // Show filled value with green highlight
                htmlContent = htmlContent.replace(regex,
                    '<span class="prompt-variable-filled">' + escapeHtml(filledVariables[placeholder]) + '</span>'
                );
            } else {
                // Show original placeholder with yellow highlight
                htmlContent = htmlContent.replace(regex,
                    '<span class="prompt-variable">' + escapedPlaceholder + '</span>'
                );
            }
        });

        promptContent.innerHTML = htmlContent;
    }

    function escapeRegex(string) {
        return string.replace(/[.*+?^${}()|[\]\\]/g, '\\$&');
    }

    function escapeHtml(text) {
        const div = document.createElement('div');
        div.textContent = text;
        return div.innerHTML;
    }

    function resetPrompt() {
        // Clear all input fields
        document.querySelectorAll('.customize-input').forEach(input => {
            input.value = '';
        });

        // Re-render with original placeholders highlighted
        renderPromptWithHighlights();

        // Visual feedback
        const resetBtns = document.querySelectorAll('.prompt-header-reset, .prompt-cta-reset');
        resetBtns.forEach(btn => {
            const originalText = btn.querySelector('span').textContent;
            btn.querySelector('span').textContent = 'Reset!';
            setTimeout(() => {
                btn.querySelector('span').textContent = originalText;
            }, 1000);
        });
    }


    function getCustomizedPrompt() {
        let updatedPrompt = originalPrompt;

        document.querySelectorAll('.customize-input').forEach(input => {
            const placeholder = input.dataset.placeholder;
            const value = input.value.trim();

            if (value) {
                const regex = new RegExp(escapeRegex(placeholder), 'g');
                updatedPrompt = updatedPrompt.replace(regex, value);
            }
        });

        return updatedPrompt;
    }
</script>

</div>

<div class="pro-tips-section">

<h2 class="wp-block-heading">Pro Tips for Better AI Prompt Results</h2>



<ul class="wp-block-list">

<li><strong>Pick a narrow topic slice, not a whole subject.</strong> “Space” is too big; “how craters form” gives the prompt something teachable that can show up in action scenes. If you want breadth, ask the AI to anchor book 1 on one slice and reserve other slices for later titles.</li>


<li><strong>Set an age feel before you run it.</strong> The prompt asks for developmentally aware writing, but you still need to decide what “kid-friendly” means for your project. Add a one-line instruction like: “Aim for ages 6–8 with short sentences, playful metaphors, and minimal sarcasm.”</li>


<li><strong>Force “show, don’t tell” learning moments.</strong> After you get the Learning Core, follow up with: “For each sub-lesson, give 2 scene ideas where the character learns it by doing something, not by being told.” That single tweak usually fixes the “textbook vibe,” honestly.</li>


<li><strong>Iterate on the world rules until they generate plots.</strong> A good rule should create problems. After the first output, try asking: “Rewrite the 5 world rules so each one naturally causes a complication, a misunderstanding, or a surprise twist.”</li>


<li><strong>Cross-check the cast with a character dossier prompt.</strong> When you like the core concept, deepen the hero and sidekick using <a href="https://flowpast.com/prompts/build-a-story-ready-character-dossier-with-this-ai-prompt/">Build a Story-Ready Character Dossier with this AI Prompt</a>. Then return and say: “Update the series engines to fit these finalized character flaws and goals.”</li>

</ul>

</div>

<div class="related-prompts-section">

<h2 class="wp-block-heading">Related Prompts</h2>



<p>Once your series concept is solid, these prompts help you develop the characters, scenes, and story packaging that bring it to life.</p>



<p>If you also need a richer “before the book starts” history for your hero (the wound, the want, the reason they react the way they do), use <a href="https://flowpast.com/prompts/write-a-cinematic-character-backstory-with-this-ai-prompt/">Write a Cinematic Character Backstory with this AI Prompt</a>. It’s a clean way to turn a simple kid protagonist into someone consistent enough to carry five adventures without drifting out of character.</p>



<p>When you’re ready to test how the world rules actually feel on the page, draft a few key moments with <a href="https://flowpast.com/prompts/write-cinematic-fiction-scenes-with-this-ai-prompt/">Write Cinematic Fiction Scenes with this AI Prompt</a>. Take one conflict engine from your series concept (a recurring obstacle, a recurring surprise) and generate 2–3 scene variants to see what tone fits best.</p>



<p>For teams doing story-first marketing (or classroom content that needs narrative momentum), <a href="https://flowpast.com/prompts/write-a-story-driven-video-script-with-this-ai-prompt/">Write a Story-Driven Video Script with this AI Prompt</a> helps you translate your book concept into a short episode format. It’s handy if your “series” will live across media: read-aloud videos, animated shorts, or lesson companions.</p>


<br>


<p>Quick reference:</p>



<ul class="wp-block-list">

<li><a href="https://flowpast.com/prompts/write-a-cinematic-character-backstory-with-this-ai-prompt/">Write a Cinematic Character Backstory with this AI Prompt</a>: Backstory that drives consistent motivations.</li>


<li><a href="https://flowpast.com/prompts/write-cinematic-fiction-scenes-with-this-ai-prompt/">Write Cinematic Fiction Scenes with this AI Prompt</a>: Draft vivid scenes from your concept.</li>


<li><a href="https://flowpast.com/prompts/write-a-story-driven-video-script-with-this-ai-prompt/">Write a Story-Driven Video Script with this AI Prompt</a>: Turn story beats into video scripts.</li>


<li><a href="https://flowpast.com/prompts/create-relatable-story-angles-with-this-ai-prompt/">Create Relatable Story Angles with this AI Prompt</a>: Find emotional angles kids recognize.</li>


<li><a href="https://flowpast.com/prompts/build-a-story-ready-character-dossier-with-this-ai-prompt/">Build a Story-Ready Character Dossier with this AI Prompt</a>: Deepen character voice, flaws, and goals.</li>

</div>

<div class="faq-section">

<h2 class="wp-block-heading">Common Questions</h2>


<div class="faq-item">
<span class="question">Which roles benefit most from this kids book series AI prompt?</span>

<p class="answer"><strong>Children’s authors</strong> use this to turn a single idea into a repeatable series framework (world rules, cast, and conflicts) instead of a one-off plot. <strong>Publishing freelancers and ghostwriters</strong> rely on it to create pitch-ready concept packages quickly, with clear learning goals and “book 2” hooks. <strong>Curriculum writers at edtech or museums</strong> apply it to wrap accurate concepts in story action, so learning happens through choices and consequences. <strong>Content strategists for kids brands</strong> use it to build a consistent story universe that can extend into videos, activity sheets, and read-aloud scripts.</p>

</div>

<div class="faq-item">
<span class="question">Which industries get the most value from this kids book series AI prompt?</span>

<p class="answer"><strong>Children’s publishing</strong> gets value because the prompt outputs what editors look for: a fresh concept, clear audience feel, and series longevity beyond book 1. <strong>Education and edtech</strong> teams use it to design stories that teach a defined learning core (one big idea plus sub-lessons) without turning into a lesson plan. <strong>Museums, nonprofits, and science centers</strong> can build mission-aligned characters and worlds that explain tricky topics through playful cause-and-effect adventures. <strong>Kids media studios</strong> use the world rules and recurring conflicts as a foundation for episodic content and character bibles.</p>

</div>

<div class="faq-item">
<span class="question">Why do basic AI prompts for creating a kids book series concept produce weak results?</span>

<p class="answer">A typical prompt like “Write me a kids book series about space” fails because it: lacks a defined learning core (so the “lesson” becomes random), provides no world rules that generate plots, ignores developmental language and tone, produces generic character types instead of growth arcs, and misses repeatable story engines that can sustain multiple books. You usually end up with a cute premise and nowhere to go. This prompt forces structure: what gets taught, how it gets taught through action, and how the world keeps creating new problems to solve.</p>

</div>

<div class="faq-item">
<span class="question">Can I customize this kids book series prompt for my specific situation?</span>

<p class="answer">Yes. The main variable is [TOPIC], so customize by narrowing it (for example, “pollination” instead of “plants”) and stating an age feel (like “ages 5–7, read-aloud rhythm”). You can also add constraints the base prompt mentions but doesn’t lock in, such as “make the humor gentle,” “avoid magic,” or “set it in a coastal town.” After you get the first concept, a strong follow-up is: “Give me three alternate versions of the World Forge with different settings, but keep the same Learning Core.”</p>

</div>

<div class="faq-item">
<span class="question">What are the most common mistakes when using this kids book series prompt?</span>

<p class="answer">The biggest mistake is leaving [TOPIC] too vague—instead of “friendship,” try “repairing friendships after a misunderstanding (apologizing, making amends, rebuilding trust).” Another common error is asking for a full manuscript even though the prompt is designed for a concept package; better: request “a 5-book lineup with one-sentence premises” after the concept is done. People also forget to specify the intended age feel, which can cause language that skews too old or too babyish; give a range and reading format (early reader vs. read-aloud). Finally, many users accept world rules that are decorative rather than plot-generating, so push for rules that cause problems (“If you break rule #2, what goes wrong immediately?”).</p>

</div>

<div class="faq-item">
<span class="question">Who should NOT use this kids book series prompt?</span>

<p class="answer">This prompt isn’t ideal for teams who only need a quick rhyme or a single bedtime story with no plans to expand. It also won’t be a perfect fit if you have not chosen a topic yet and you’re hoping the AI will pick your entire direction from scratch. And if your goal is final, publish-ready prose pages, you’ll need a drafting prompt after this concept work. In those cases, start with basic brainstorming or jump straight into scene writing once you already know the concept.</p>

</div>

<script type="application/ld+json">
{
  "@context": "https://schema.org",
  "@type": "FAQPage",
  "mainEntity": [
    {
      "@type": "Question",
      "name": "Which roles benefit most from this kids book series AI prompt?",
      "acceptedAnswer": {
        "@type": "Answer",
        "text": "Children’s authors use this to turn a single idea into a repeatable series framework (world rules, cast, and conflicts) instead of a one-off plot. Publishing freelancers and ghostwriters rely on it to create pitch-ready concept packages quickly, with clear learning goals and “book 2” hooks. Curriculum writers at edtech or museums apply it to wrap accurate concepts in story action, so learning happens through choices and consequences. Content strategists for kids brands use it to build a consistent story universe that can extend into videos, activity sheets, and read-aloud scripts."
      }
    },
    {
      "@type": "Question",
      "name": "Which industries get the most value from this kids book series AI prompt?",
      "acceptedAnswer": {
        "@type": "Answer",
        "text": "Children’s publishing gets value because the prompt outputs what editors look for: a fresh concept, clear audience feel, and series longevity beyond book 1. Education and edtech teams use it to design stories that teach a defined learning core (one big idea plus sub-lessons) without turning into a lesson plan. Museums, nonprofits, and science centers can build mission-aligned characters and worlds that explain tricky topics through playful cause-and-effect adventures. Kids media studios use the world rules and recurring conflicts as a foundation for episodic content and character bibles."
      }
    },
    {
      "@type": "Question",
      "name": "Why do basic AI prompts for creating a kids book series concept produce weak results?",
      "acceptedAnswer": {
        "@type": "Answer",
        "text": "A typical prompt like “Write me a kids book series about space” fails because it: lacks a defined learning core (so the “lesson” becomes random), provides no world rules that generate plots, ignores developmental language and tone, produces generic character types instead of growth arcs, and misses repeatable story engines that can sustain multiple books. You usually end up with a cute premise and nowhere to go. This prompt forces structure: what gets taught, how it gets taught through action, and how the world keeps creating new problems to solve."
      }
    },
    {
      "@type": "Question",
      "name": "Can I customize this kids book series prompt for my specific situation?",
      "acceptedAnswer": {
        "@type": "Answer",
        "text": "Yes. The main variable is [TOPIC], so customize by narrowing it (for example, “pollination” instead of “plants”) and stating an age feel (like “ages 5–7, read-aloud rhythm”). You can also add constraints the base prompt mentions but doesn’t lock in, such as “make the humor gentle,” “avoid magic,” or “set it in a coastal town.” After you get the first concept, a strong follow-up is: “Give me three alternate versions of the World Forge with different settings, but keep the same Learning Core.”"
      }
    },
    {
      "@type": "Question",
      "name": "What are the most common mistakes when using this kids book series prompt?",
      "acceptedAnswer": {
        "@type": "Answer",
        "text": "The biggest mistake is leaving [TOPIC] too vague—instead of “friendship,” try “repairing friendships after a misunderstanding (apologizing, making amends, rebuilding trust).” Another common error is asking for a full manuscript even though the prompt is designed for a concept package; better: request “a 5-book lineup with one-sentence premises” after the concept is done. People also forget to specify the intended age feel, which can cause language that skews too old or too babyish; give a range and reading format (early reader vs. read-aloud). Finally, many users accept world rules that are decorative rather than plot-generating, so push for rules that cause problems (“If you break rule #2, what goes wrong immediately?”)."
      }
    },
    {
      "@type": "Question",
      "name": "Who should NOT use this kids book series prompt?",
      "acceptedAnswer": {
        "@type": "Answer",
        "text": "This prompt isn’t ideal for teams who only need a quick rhyme or a single bedtime story with no plans to expand. It also won’t be a perfect fit if you have not chosen a topic yet and you’re hoping the AI will pick your entire direction from scratch. And if your goal is final, publish-ready prose pages, you’ll need a drafting prompt after this concept work. In those cases, start with basic brainstorming or jump straight into scene writing once you already know the concept."
      }
    }
  ]
}
</script>
</div>

<div class="closing-section">

<p>A strong series isn’t just a character and a moral. It’s a world that keeps generating adventures. Paste the prompt into your AI tool, pick a focused topic, and build a concept you can grow for years.</p>

</div>]]></content:encoded>
					
		
		
		<media:content url="https://flowpast.s3.eu-north-1.amazonaws.com/featured_blog_images/5000630.webp" medium="image"></media:content>
            	</item>
		<item>
		<title>Build a Video Outline with this AI Prompt</title>
		<link>https://flowpast.com/prompts/build-a-video-outline-with-this-ai-prompt/</link>
		
		<dc:creator><![CDATA[Lisa Granqvist]]></dc:creator>
		<pubDate>Fri, 23 Jan 2026 02:23:29 +0000</pubDate>
				<category><![CDATA[Prompts]]></category>
		<guid isPermaLink="false">https://flowpast.com/?p=5000618</guid>

					<description><![CDATA[Pre-production feels messy - this AI Prompt builds a shoot-ready video outline with hook, chapters, visuals, audio cues, and closing. Explore thousands of AI prompts by function and industry.]]></description>
										<content:encoded><![CDATA[<!-- FOCUS_KEYWORD: video outline AI prompt -->

<div class="hook-introduction">

<p>Pre-production gets chaotic fast. You have a topic, maybe a few talking points, and then the questions start: What’s the hook, what do we show on screen, and how do we keep people watching past the first 10 seconds? Without a clear outline, filming drifts and editing turns into expensive guesswork.</p>



<p>This <strong>video outline AI prompt</strong> is built for <strong>content strategists</strong> who need a reliable structure before they brief a team, <strong>marketing managers</strong> trying to turn a campaign idea into a shoot-ready plan, and <strong>creators</strong> who want higher retention without rewriting their script five times. The output is a production-ready outline with an opening hook, a roadmap line, chapter-by-chapter beats, retention moments, and practical direction for visuals, audio, and the close.</p>

</div>

<div class="what-and-when-section">

<h2 class="wp-block-heading">What Does This AI Prompt Do and When to Use It?</h2>



<table class="solution-results-table three-column" role="presentation" aria-label="What this prompt does, when to use it, and what you get">
 <thead>
    <tr>
      <th scope="col">What This Prompt Does</th>
      <th scope="col">When to Use This Prompt</th>
      <th scope="col">What You&#8217;ll Get</th>
    </tr>
  </thead>
  <tbody>
    <tr>
      <td>
        <ul class="automation-list">
          <li>It performs a brief pre-analysis of the video’s purpose, audience, and best-fit platform style before outlining anything.</li>
          <li>It generates a high-retention opening sequence using a specific hook mechanism (curiosity, contrast, surprising data, or a relatable moment).</li>
          <li>It organizes the body into logically ordered chapters that move from basics to nuance to practical application.</li>
          <li>It inserts retention beats throughout (questions, quick prompts, mini-payoffs) so the pacing doesn’t flatten mid-video.</li>
          <li>It writes in crew-friendly language, adding practical “what to show / what to hear” guidance without becoming a full screenplay.</li>
       </ul>
      </td>
      <td>
        <ul class="results-list">
          <li>You have a topic but no confident structure, and your first drafts keep turning into rambly bullet lists.</li>
          <li>A producer or editor asked for clearer direction, and you need something you can hand off without a meeting.</li>
          <li>You’re planning an educational or brand video and you must keep retention high past the intro and the first chapter.</li>
          <li>The team is debating format (YouTube explainer vs short-form vs training), and you need a platform-appropriate approach.</li>
          <li>You’re scaling output and want consistent outlines that different writers and editors can execute without style drift.</li>
        </ul>
      </td>
       <td>
         <ul class="deliverables-list">
           <li>One production-ready video outline for your topic, including a defined opening, middle chapters, and close.</li>
           <li>1 roadmap line that previews the journey without sounding like a table of contents.</li>
           <li>5–10 retention beats placed across chapters, written as specific moments to ask, reveal, or demonstrate.</li>
           <li>Visual and audio cue notes per section (what to show, what to hear, and optional alternatives).</li>
           <li>A memorable closing structure with a clear takeaway and suggested next-step prompt or CTA style.</li>
         </ul>
       </td>
    </tr>
  </tbody>
</table>

</div>

<div class="prompt-display-section">

<h2 class="wp-block-heading">The Full AI Prompt: Production-Ready Video Outline Builder</h2>



<div class="prompt-viewer-wrapper" id="prompt-section">
    <div class="prompt-comparison-row prompt-premium">
        <!-- Header with buttons -->
        <div class="prompt-row-header">
            <!-- <span class="prompt-row-icon">✨</span> -->
            <span class="prompt-row-title">
                                    Step 1: Customize the prompt with your input
                            </span>
            <div class="prompt-header-buttons">
                                    <button class="prompt-header-btn prompt-header-reset" onclick="resetPrompt()">
                        <svg xmlns="http://www.w3.org/2000/svg" width="16" height="16" fill="currentColor" viewBox="0 0 16 16">
                            <path fill-rule="evenodd" d="M8 3a5 5 0 1 0 4.546 2.914.5.5 0 0 1 .908-.417A6 6 0 1 1 8 2v1z" />
                            <path d="M8 4.466V.534a.25.25 0 0 1 .41-.192l2.36 1.966c.12.1.12.284 0 .384L8.41 4.658A.25.25 0 0 1 8 4.466z" />
                        </svg>
                        <span>Reset</span>
                    </button>
                                <button class="prompt-header-btn prompt-header-copy-green flowpast-copy-prompt-btn" onclick="handlePromptCopy()">
                    <svg xmlns="http://www.w3.org/2000/svg" width="16" height="16" fill="currentColor" viewBox="0 0 16 16">
                        <path d="M4 1.5H3a2 2 0 0 0-2 2V14a2 2 0 0 0 2 2h10a2 2 0 0 0 2-2V3.5a2 2 0 0 0-2-2h-1v1h1a1 1 0 0 1 1 1V14a1 1 0 0 1-1 1H3a1 1 0 0 1-1-1V3.5a1 1 0 0 1 1-1h1v-1z" />
                        <path d="M9.5 1a.5.5 0 0 1 .5.5v1a.5.5 0 0 1-.5.5h-3a.5.5 0 0 1-.5-.5v-1a.5.5 0 0 1 .5-.5h3zm-3-1A1.5 1.5 0 0 0 5 1.5v1A1.5 1.5 0 0 0 6.5 4h3A1.5 1.5 0 0 0 11 2.5v-1A1.5 1.5 0 0 0 9.5 0h-3z" />
                    </svg>
                    <span>Customize and Copy Full Prompt</span>
                </button>
            </div>
        </div>

        <!-- Customize the Prompt Section -->
                    <div class="prompt-customize-section">
                <span class="customize-title">Customize the Prompt</span>
                <p class="customize-subtitle">Fill in the fields below to personalize this prompt for your needs.</p>
                <table class="customize-table">
                    <thead>
                        <tr>
                            <th>Variable</th>
                            <th>What to Enter</th>
                            <th>Customise the prompt</th>
                        </tr>
                    </thead>
                    <tbody>
                                                    <tr>
                                <td class="var-name"><code>[TOPIC]</code></td>
                                <td class="var-desc">
                                    Provide the main subject or theme of the video. Be specific and concise to ensure clarity for the outline.                                    <div class="var-example">For example: "How to Use AI Tools for Small Business Marketing"</div>
                                </td>
                                <td class="var-input">
                                                                            <input
                                            type="text"
                                            class="customize-input"
                                            data-placeholder="[TOPIC]"
                                            placeholder="Enter your value here..." />
                                                                    </td>
                            </tr>
                                                    <tr>
                                <td class="var-name"><code>[UPPERCASE_WITH_UNDERSCORES]</code></td>
                                <td class="var-desc">
                                    Ensure all user-supplied values follow the format of uppercase letters separated by underscores. This is a technical requirement for placeholders.                                    <div class="var-example">For example: "VIDEO_OUTLINE_STRUCTURE"</div>
                                </td>
                                <td class="var-input">
                                                                            <input
                                            type="text"
                                            class="customize-input"
                                            data-placeholder="[UPPERCASE_WITH_UNDERSCORES]"
                                            placeholder="Enter your value here..." />
                                                                    </td>
                            </tr>
                                                    <tr>
                                <td class="var-name"><code>[TARGET_AUDIENCE]</code></td>
                                <td class="var-desc">
                                    Describe the primary group the video is intended for, including demographics, interests, or professional characteristics.                                    <div class="var-example">For example: "Marketing professionals aged 25-40 looking for actionable strategies to improve campaign ROI."</div>
                                </td>
                                <td class="var-input">
                                                                            <textarea
                                            class="customize-input"
                                            data-placeholder="[TARGET_AUDIENCE]"
                                            placeholder="Enter your value here..."
                                            rows="3"></textarea>
                                                                    </td>
                            </tr>
                                                    <tr>
                                <td class="var-name"><code>[PLATFORM]</code></td>
                                <td class="var-desc">
                                    Specify the platform or channel where the video will be published. Include any relevant style preferences for the platform.                                    <div class="var-example">For example: "YouTube for educational explainer videos or Instagram Reels for short-form content."</div>
                                </td>
                                <td class="var-input">
                                                                            <input
                                            type="text"
                                            class="customize-input"
                                            data-placeholder="[PLATFORM]"
                                            placeholder="Enter your value here..." />
                                                                    </td>
                            </tr>
                                                    <tr>
                                <td class="var-name"><code>[TONE]</code></td>
                                <td class="var-desc">
                                    Indicate the desired tone of the video, such as formal, casual, humorous, or inspiring.                                    <div class="var-example">For example: "Professional yet approachable, with a focus on clarity and engagement."</div>
                                </td>
                                <td class="var-input">
                                                                            <input
                                            type="text"
                                            class="customize-input"
                                            data-placeholder="[TONE]"
                                            placeholder="Enter your value here..." />
                                                                    </td>
                            </tr>
                                                    <tr>
                                <td class="var-name"><code>[BRAND_VOICE]</code></td>
                                <td class="var-desc">
                                    Provide details about the brand’s voice, including its personality, values, and preferred communication style.                                    <div class="var-example">For example: "Confident and knowledgeable, with a friendly and supportive tone that empowers viewers."</div>
                                </td>
                                <td class="var-input">
                                                                            <textarea
                                            class="customize-input"
                                            data-placeholder="[BRAND_VOICE]"
                                            placeholder="Enter your value here..."
                                            rows="3"></textarea>
                                                                    </td>
                            </tr>
                                                    <tr>
                                <td class="var-name"><code>[PRIMARY_GOAL]</code></td>
                                <td class="var-desc">
                                    Define the main objective of the video, such as educating viewers, promoting a product, or driving engagement.                                    <div class="var-example">For example: "Educate small business owners on using AI tools to streamline marketing processes."</div>
                                </td>
                                <td class="var-input">
                                                                            <textarea
                                            class="customize-input"
                                            data-placeholder="[PRIMARY_GOAL]"
                                            placeholder="Enter your value here..."
                                            rows="3"></textarea>
                                                                    </td>
                            </tr>
                                                    <tr>
                                <td class="var-name"><code>[CONTEXT]</code></td>
                                <td class="var-desc">
                                    Provide any relevant constraints or background information that could influence the video’s structure or content.                                    <div class="var-example">For example: "The video must be under 5 minutes and include examples relevant to SaaS startups."</div>
                                </td>
                                <td class="var-input">
                                                                            <textarea
                                            class="customize-input"
                                            data-placeholder="[CONTEXT]"
                                            placeholder="Enter your value here..."
                                            rows="3"></textarea>
                                                                    </td>
                            </tr>
                                                    <tr>
                                <td class="var-name"><code>[KEYWORDS]</code></td>
                                <td class="var-desc">
                                    List specific keywords that must be included in the video script for SEO or branding purposes.                                    <div class="var-example">For example: "AI tools, marketing automation, small business growth."</div>
                                </td>
                                <td class="var-input">
                                                                            <textarea
                                            class="customize-input"
                                            data-placeholder="[KEYWORDS]"
                                            placeholder="Enter your value here..."
                                            rows="3"></textarea>
                                                                    </td>
                            </tr>
                                                    <tr>
                                <td class="var-name"><code>[TIMEFRAME]</code></td>
                                <td class="var-desc">
                                    Specify the timeframe or deadline for completing the video project.                                    <div class="var-example">For example: "Final draft due within 10 days, with filming scheduled for next month."</div>
                                </td>
                                <td class="var-input">
                                                                            <input
                                            type="text"
                                            class="customize-input"
                                            data-placeholder="[TIMEFRAME]"
                                            placeholder="Enter your value here..." />
                                                                    </td>
                            </tr>
                                            </tbody>
                </table>

                <button class="copy-customized-btn flowpast-copy-prompt-btn" onclick="handlePromptCopy()">
                    <svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" fill="currentColor" viewBox="0 0 16 16">
                        <path d="M4 1.5H3a2 2 0 0 0-2 2V14a2 2 0 0 0 2 2h10a2 2 0 0 0 2-2V3.5a2 2 0 0 0-2-2h-1v1h1a1 1 0 0 1 1 1V14a1 1 0 0 1-1 1H3a1 1 0 0 1-1-1V3.5a1 1 0 0 1 1-1h1v-1z" />
                        <path d="M9.5 1a.5.5 0 0 1 .5.5v1a.5.5 0 0 1-.5.5h-3a.5.5 0 0 1-.5-.5v-1a.5.5 0 0 1 .5-.5h3zm-3-1A1.5 1.5 0 0 0 5 1.5v1A1.5 1.5 0 0 0 6.5 4h3A1.5 1.5 0 0 0 11 2.5v-1A1.5 1.5 0 0 0 9.5 0h-3z" />
                    </svg>
                    <span class="copy-customized-text">Customise the prompt now</span>
                </button>
            </div>
        
        <!-- Full Prompt Code Header -->
                    <div class="prompt-code-header">
                <span class="prompt-code-title">
                    Step 2: Copy the Prompt
                </span>
                <div class="prompt-code-buttons">
                    <!-- Reset: Only visible when unlocked -->
                    <button class="prompt-header-btn prompt-header-reset btn-when-unlocked" onclick="resetPrompt()" style="display: none;">
                        <svg xmlns="http://www.w3.org/2000/svg" width="16" height="16" fill="currentColor" viewBox="0 0 16 16">
                            <path fill-rule="evenodd" d="M8 3a5 5 0 1 0 4.546 2.914.5.5 0 0 1 .908-.417A6 6 0 1 1 8 2v1z" />
                            <path d="M8 4.466V.534a.25.25 0 0 1 .41-.192l2.36 1.966c.12.1.12.284 0 .384L8.41 4.658A.25.25 0 0 1 8 4.466z" />
                        </svg>
                        <span>Reset</span>
                    </button>
                    <!-- Copy Full Prompt -->
                    <button class="prompt-header-btn prompt-header-copy flowpast-copy-prompt-btn" onclick="handlePromptCopy()">
                        <svg xmlns="http://www.w3.org/2000/svg" width="16" height="16" fill="currentColor" viewBox="0 0 16 16">
                            <path d="M4 1.5H3a2 2 0 0 0-2 2V14a2 2 0 0 0 2 2h10a2 2 0 0 0 2-2V3.5a2 2 0 0 0-2-2h-1v1h1a1 1 0 0 1 1 1V14a1 1 0 0 1-1 1H3a1 1 0 0 1-1-1V3.5a1 1 0 0 1 1-1h1v-1z" />
                            <path d="M9.5 1a.5.5 0 0 1 .5.5v1a.5.5 0 0 1-.5.5h-3a.5.5 0 0 1-.5-.5v-1a.5.5 0 0 1 .5-.5h3zm-3-1A1.5 1.5 0 0 0 5 1.5v1A1.5 1.5 0 0 0 6.5 4h3A1.5 1.5 0 0 0 11 2.5v-1A1.5 1.5 0 0 0 9.5 0h-3z" />
                        </svg>
                        <span>Copy Full Prompt</span>
                    </button>
                </div>
            </div>
        

        <!-- Prompt Content -->
        <div class="prompt-box prompt-gated-wrapper">
            <!-- Gated: Blurred content -->
            <div class="prompt-gated-content">
                <div class="prompt-header-visible">OBJECTIVE</div><div class="locked-section"><div class="locked-section-bg"><div class="locked-section-lines"><div class="locked-line" style="width: 85%;"></div><div class="locked-line" style="width: 78%;"></div></div></div><div class="locked-section-icon">🔒</div></div><div class="prompt-header-visible">PERSONA</div><div class="locked-section"><div class="locked-section-bg"><div class="locked-section-lines"><div class="locked-line" style="width: 85%;"></div><div class="locked-line" style="width: 78%;"></div></div></div><div class="locked-section-icon">🔒</div></div><div class="prompt-header-visible">CONSTRAINTS</div><div class="locked-section"><div class="locked-section-bg"><div class="locked-section-lines"><div class="locked-line" style="width: 85%;"></div><div class="locked-line" style="width: 78%;"></div><div class="locked-line" style="width: 92%;"></div><div class="locked-line" style="width: 75%;"></div><div class="locked-line" style="width: 88%;"></div></div></div><div class="locked-section-icon">🔒</div></div><div class="prompt-header-visible subheader">What This Is NOT (Scope Boundaries)</div><div class="locked-section"><div class="locked-section-bg"><div class="locked-section-lines"><div class="locked-line" style="width: 85%;"></div><div class="locked-line" style="width: 78%;"></div><div class="locked-line" style="width: 92%;"></div></div></div><div class="locked-section-icon">🔒</div></div><div class="prompt-header-visible">PROCESS</div><div class="locked-section"><div class="locked-section-bg"><div class="locked-section-lines"><div class="locked-line" style="width: 85%;"></div><div class="locked-line" style="width: 78%;"></div><div class="locked-line" style="width: 92%;"></div><div class="locked-line" style="width: 75%;"></div><div class="locked-line" style="width: 88%;"></div><div class="locked-line" style="width: 72%;"></div><div class="locked-line" style="width: 80%;"></div></div></div><div class="locked-section-icon">🔒</div></div><div class="prompt-header-visible subheader">Edge Case Handling</div><div class="locked-section"><div class="locked-section-bg"><div class="locked-section-lines"><div class="locked-line" style="width: 85%;"></div><div class="locked-line" style="width: 78%;"></div><div class="locked-line" style="width: 92%;"></div></div></div><div class="locked-section-icon">🔒</div></div><div class="prompt-header-visible">INPUTS</div><div class="locked-section"><div class="locked-section-bg"><div class="locked-section-lines"><div class="locked-line" style="width: 85%;"></div><div class="locked-line" style="width: 78%;"></div><div class="locked-line" style="width: 92%;"></div><div class="locked-line" style="width: 75%;"></div><div class="locked-line" style="width: 88%;"></div><div class="locked-line" style="width: 72%;"></div><div class="locked-line" style="width: 80%;"></div><div class="locked-line" style="width: 95%;"></div><div class="locked-line" style="width: 70%;"></div></div></div><div class="locked-section-icon">🔒</div></div><div class="prompt-header-visible">OUTPUT SPECIFICATION</div><div class="locked-section"><div class="locked-section-bg"><div class="locked-section-lines"><div class="locked-line" style="width: 85%;"></div><div class="locked-line" style="width: 78%;"></div></div></div><div class="locked-section-icon">🔒</div></div><div class="prompt-header-visible subheader">1) {Pre-Analysis Summary}</div><div class="locked-section"><div class="locked-section-bg"><div class="locked-section-lines"><div class="locked-line" style="width: 85%;"></div><div class="locked-line" style="width: 78%;"></div><div class="locked-line" style="width: 92%;"></div></div></div><div class="locked-section-icon">🔒</div></div><div class="prompt-header-visible subheader">2) {Video Overview}</div><div class="locked-section"><div class="locked-section-bg"><div class="locked-section-lines"><div class="locked-line" style="width: 85%;"></div><div class="locked-line" style="width: 78%;"></div><div class="locked-line" style="width: 92%;"></div><div class="locked-line" style="width: 75%;"></div></div></div><div class="locked-section-icon">🔒</div></div><div class="prompt-header-visible subheader">3) {Opening (Hook + Setup)} (roughly first 20–40 seconds)</div><div class="locked-section"><div class="locked-section-bg"><div class="locked-section-lines"><div class="locked-line" style="width: 85%;"></div><div class="locked-line" style="width: 78%;"></div><div class="locked-line" style="width: 92%;"></div><div class="locked-line" style="width: 75%;"></div><div class="locked-line" style="width: 88%;"></div><div class="locked-line" style="width: 72%;"></div></div></div><div class="locked-section-icon">🔒</div></div><div class="prompt-header-visible subheader">4) {Main Segments}</div><div class="locked-section"><div class="locked-section-bg"><div class="locked-section-lines"><div class="locked-line" style="width: 85%;"></div><div class="locked-line" style="width: 78%;"></div><div class="locked-line" style="width: 92%;"></div><div class="locked-line" style="width: 75%;"></div><div class="locked-line" style="width: 88%;"></div><div class="locked-line" style="width: 72%;"></div><div class="locked-line" style="width: 80%;"></div><div class="locked-line" style="width: 95%;"></div><div class="locked-line" style="width: 70%;"></div><div class="locked-line" style="width: 83%;"></div><div class="locked-line" style="width: 85%;"></div><div class="locked-line" style="width: 78%;"></div><div class="locked-line" style="width: 92%;"></div></div></div><div class="locked-section-icon">🔒</div></div><div class="prompt-header-visible subheader">5) {Conclusion (Wrap + CTA)} (roughly last 20–45 seconds)</div><div class="locked-section"><div class="locked-section-bg"><div class="locked-section-lines"><div class="locked-line" style="width: 85%;"></div><div class="locked-line" style="width: 78%;"></div><div class="locked-line" style="width: 92%;"></div><div class="locked-line" style="width: 75%;"></div><div class="locked-line" style="width: 88%;"></div></div></div><div class="locked-section-icon">🔒</div></div><div class="prompt-header-visible subheader">6) {Flexibility &amp; Upgrade Notes}</div><div class="locked-section"><div class="locked-section-bg"><div class="locked-section-lines"><div class="locked-line" style="width: 85%;"></div><div class="locked-line" style="width: 78%;"></div><div class="locked-line" style="width: 92%;"></div><div class="locked-line" style="width: 75%;"></div></div></div><div class="locked-section-icon">🔒</div></div><div class="prompt-header-visible">QUALITY CHECKS</div><div class="locked-section"><div class="locked-section-bg"><div class="locked-section-lines"><div class="locked-line" style="width: 85%;"></div><div class="locked-line" style="width: 78%;"></div><div class="locked-line" style="width: 92%;"></div><div class="locked-line" style="width: 75%;"></div><div class="locked-line" style="width: 88%;"></div><div class="locked-line" style="width: 72%;"></div></div></div><div class="locked-section-icon">🔒</div></div>            </div>
            <!-- Unlocked: Full content (hidden by default) -->
            <div class="prompt-content-full" id="premium-prompt-content" style="display: none;">
                ## OBJECTIVE
Create a production-ready video outline for **[TOPIC]** that a filming/editing team can follow end-to-end. It must keep viewers watching by combining a strong opening, clearly organized sections, and a memorable close.

## PERSONA
You are a senior video narrative designer who builds tight, high-retention scripts for educational and brand content. You write with clarity, pacing, and visual storytelling in mind, giving crews practical direction (what to show, what to hear, what to say).

## CONSTRAINTS
- Optimize for clarity, accuracy, and audience engagement.
- Make the structure easy to hand off to producers, editors, animators, and voice talent.
- Use plain language and avoid unnecessary jargon; define any required technical terms briefly.
- Keep the outline adaptable (include options where useful).
- **Variable format compliance:** user-supplied values must appear as **[UPPERCASE_WITH_UNDERSCORES]**; AI-filled placeholders must appear only as **{Title Case}**.

### What This Is NOT (Scope Boundaries)
- Not a fully written word-for-word screenplay (only select narration lines/snippets).
- Not a shot list with lens specs, lighting diagrams, or exact frame-by-frame edit decisions.
- Not a research paper or a list of sources (unless the user explicitly asks for citations).

## PROCESS
1. **Pre-analysis (mandatory):** Briefly state your understanding of the video’s purpose, who it’s for (infer if missing), and the likely best platform style (e.g., YouTube explainer, short-form social, training video). Then proceed.
2. Build an **opening sequence** that uses a hook mechanism (curiosity, contrast, surprising data point, or relatable moment).
3. Provide a **roadmap line** that tells viewers what they’ll learn without sounding like a table of contents.
4. Develop the **core chapters** as a sequence of segments that progress logically from basics → nuance → practical application (adjust to topic).
5. Add **retention beats** throughout: questions, quick prompts for comments, “watch for this next” cues, or lightweight polls (platform-dependent).
6. Close with a **strong wrap-up**: summarize, deliver a clear next step, and end on a resonant question or statement.
7. Add a **flex notes** section with optional swaps, upgrades, or alternate angles.

### Edge Case Handling
- If **[TOPIC]** is broad, propose a narrower angle and proceed using that angle.
- If **[TOPIC]** is unclear, list 3 plausible interpretations and select the most reasonable one to draft the outline.
- If critical context is missing (platform, length, audience), make sensible assumptions and label them clearly.

## INPUTS
- **Video subject:** [TOPIC]  
- **Primary user segment (optional):** [TARGET_AUDIENCE]  
- **Platform/channel (optional):** [PLATFORM]  
- **Tone preferences (optional):** [TONE]  
- **Brand voice guidance (optional):** [BRAND_VOICE]  
- **Primary goal (optional):** [PRIMARY_GOAL]  
- **Background constraints (optional):** [CONTEXT]  
- **Required keywords (optional):** [KEYWORDS]  
- **Time target (optional):** [TIMEFRAME]  

## OUTPUT SPECIFICATION
Deliver the outline using the structure below.

### 1) {Pre-Analysis Summary}
- {Assumed Audience}
- {Assumed Platform &amp; Style}
- {Learning Promise / Outcome}

### 2) {Video Overview}
- {Working Title}
- {One-Sentence Premise}
- {Target Viewer Takeaways} (bullets)
- {Estimated Runtime Range} (if [TIMEFRAME] not provided, suggest one)

### 3) {Opening (Hook + Setup)} (roughly first 20–40 seconds)
- **Hook mechanism:** {Hook Type}
- **On-screen / visuals:** {Opening Visual Notes}
- **Audio:** {Music/SFX Notes}
- **Narration snippets (2–4 lines):** {Opening Lines}
- **Credibility builder:** {Why Viewer Should Trust This Video}
- **Roadmap line:** {Preview Line}

### 4) {Main Segments}
For each segment, repeat:

#### {Segment Number}. {Segment Title}
- **Objective:** {Segment Objective}
- **Key points:**  
  - {Key Point 1}  
  - {Key Point 2}  
  - {Key Point 3}
- **Visual plan:** {B-Roll / Graphics / Animation Ideas}
- **Audio plan:** {VO / SFX / Music / Beat Changes}
- **Dialogue/script notes (snippets):** {Narration/Host Lines}
- **Engagement beat:** {Comment Prompt / Question / Poll Suggestion}
- **Transition out:** {Transition Line or Visual Bridge}

*(Include as many segments as needed to fully cover [TOPIC] without bloating; typically 4–7.)*

### 5) {Conclusion (Wrap + CTA)} (roughly last 20–45 seconds)
- **Recap bullets:** {Key Takeaways}
- **Call to action:** {CTA Line} (subscribe/follow/visit/etc.)
- **Final resonance:** {Closing Question or Statement}
- **End-screen / final visuals:** {End Visual Notes}
- **Audio:** {Outro Music/SFX Notes}

### 6) {Flexibility &amp; Upgrade Notes}
- {Optional Segment Swaps}
- {Alternate Hook Options} (2 alternatives)
- {Places to Add Examples/Case Study}
- {If Comments Reveal Confusion, Adjustments To Make}

## QUALITY CHECKS
Before finalizing, verify:
- The hook and early setup create clear curiosity within the first ~30 seconds.
- Each segment has a single, concrete objective and a logical transition.
- Visual/audio notes are actionable for production (not vague).
- Engagement prompts feel natural and are spaced across the video.
- The ending includes recap + CTA + a memorable final line, aligned to [PRIMARY_GOAL] if provided.            </div>
        </div>


    </div>

    <!-- CTA Row - Full width buttons -->
    <div class="prompt-cta-row">
        <button class="prompt-cta-btn prompt-cta-copy flowpast-copy-prompt-btn" onclick="handlePromptCopy()">
            <svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" fill="currentColor" viewBox="0 0 16 16">
                <path d="M4 1.5H3a2 2 0 0 0-2 2V14a2 2 0 0 0 2 2h10a2 2 0 0 0 2-2V3.5a2 2 0 0 0-2-2h-1v1h1a1 1 0 0 1 1 1V14a1 1 0 0 1-1 1H3a1 1 0 0 1-1-1V3.5a1 1 0 0 1 1-1h1v-1z" />
                <path d="M9.5 1a.5.5 0 0 1 .5.5v1a.5.5 0 0 1-.5.5h-3a.5.5 0 0 1-.5-.5v-1a.5.5 0 0 1 .5-.5h3zm-3-1A1.5 1.5 0 0 0 5 1.5v1A1.5 1.5 0 0 0 6.5 4h3A1.5 1.5 0 0 0 11 2.5v-1A1.5 1.5 0 0 0 9.5 0h-3z" />
            </svg>
            <span class="cta-copy-text">Copy Full Prompt</span>
        </button>
    </div>
</div>

<style>
    /* Gated prompt states */
    .prompt-gated-wrapper {
        position: relative;
    }

    /* When unlocked - show full content, hide gated */
    body.flowpast-unlocked .prompt-gated-wrapper .prompt-gated-content {
        display: none;
    }

    body.flowpast-unlocked .prompt-gated-wrapper .prompt-content-full {
        display: block !important;
    }

    /* Show/hide elements based on unlock state */
    body.flowpast-unlocked .btn-when-unlocked {
        display: inline-flex !important;
    }

    .prompt-viewer-wrapper {
        scroll-margin-top: 250px;
    }

    /* ========================================
   PROMPT VIEWER - MAIN WRAPPER
   ======================================== */
    .prompt-viewer-wrapper {
        margin: 30px 0;
        display: flex;
        flex-direction: column;
        gap: 20px;
    }

    /* ========================================
   PROMPT BOX CONTAINER
   ======================================== */
    .prompt-comparison-row {
        border-radius: 12px;
        overflow: hidden;
        border: 1px solid #e0e0e0;
        background: #fff;
    }

    /* ========================================
   HEADER WITH BUTTONS
   ======================================== */
    .prompt-row-header {
        display: flex;
        align-items: center;
        gap: 10px;
        padding: 14px 20px;
        color: #fff !important;
        background: #141414;
        border-bottom: 1px solid #e0e0e0;
        flex-wrap: wrap;
    }

    .prompt-row-icon {
        font-size: 20px;
    }

    .prompt-row-title {
        font-weight: 600;
        font-size: 22px;
        color: #fff !important;
        text-decoration: underline
    }

    .prompt-header-buttons {
        margin-left: auto;
        display: flex;
        gap: 10px;
        flex-wrap: wrap;
    }

    /* Header buttons */
    .prompt-header-btn {
        display: inline-flex;
        align-items: center;
        gap: 8px;
        padding: 10px 20px;
        border-radius: 6px;
        font-size: 14px;
        font-weight: 600;
        cursor: pointer;
        transition: all 0.2s;
        text-decoration: none;
        border: none;
    }

    .prompt-header-copy {
        background: #3a3a3a;
        color: #fff;
    }

    .prompt-header-copy:hover {
        background: #2a2a2a;
    }

    .prompt-header-copy.copied {
        background: #2e7d32;
    }

    .prompt-header-copy-green {
        background: #04AA6D !important;
        color: #fff !important;
    }

    .prompt-header-copy-green:hover {
        background: #039860 !important;
    }

    .prompt-header-copy-green.copied {
        background: #2e7d32 !important;
    }

    .prompt-header-access {
        background: rgb(5, 152, 98);
        color: #fff !important;
    }

    .prompt-header-access:hover {
        background: rgb(4, 130, 83);
        transform: translateY(-1px);
    }

    /* ========================================
   PROMPT CONTENT - FULL (NO SCROLL)
   ======================================== */
    .prompt-box {
        background: #ffffff;
    }

    .prompt-content-full {
        padding: 24px;
        margin: 0;
        color: #202124;
        background: #ffffff;
        font-family: 'Fira Code', 'Monaco', 'Consolas', monospace;
        font-size: 13px;
        line-height: 1.7;
        white-space: pre-wrap;
        word-wrap: break-word;
        /* No scroll - show full content */
        max-height: none;
        overflow: visible;
    }

    /* Highlighted variable in prompt */
    .prompt-variable {
        background: #fff3cd;
        color: #1967d2;
        font-weight: 700;
        padding: 2px 4px;
        border-radius: 3px;
        border: 1px solid #ffc107;
    }

    .prompt-variable-filled {
        background: #d4edda;
        color: #155724;
        font-weight: 700;
        padding: 2px 4px;
        border-radius: 3px;
        border: 1px solid #28a745;
    }

    /* ========================================
   GATED CONTENT (NO ACCESS)
   ======================================== */
    .prompt-gated-content {
        padding: 24px;
        background: #ffffff;
        font-family: 'Fira Code', 'Monaco', 'Consolas', monospace;
        font-size: 13px;
        line-height: 1.8;
        max-height: none;
        overflow: visible;
        user-select: none;
        -webkit-user-select: none;
        -moz-user-select: none;
        -ms-user-select: none;
        cursor: default;
    }

    /* ## headers - larger, black */
    .prompt-header-visible {
        color: #202124;
        font-weight: 600;
        margin: 5px 0 0px 0;
        font-size: 20px;
        user-select: none;
        -webkit-user-select: none;
        -moz-user-select: none;
        -ms-user-select: none;
        text-decoration: underline;
        text-underline-offset: 4px;
    }

    /* ### headers - smaller, black */
    .prompt-header-visible.subheader {
        color: #202124;
        font-weight: 600;
        margin: 5px 0;
        font-size: 18px;
    }

    .prompt-header-visible:first-child {
        margin-top: 0;
    }

    /* ========================================
   LOCKED SECTION BLOCK
   ======================================== */
    .locked-section {
        position: relative;
        margin: 4px 0 8px 0;
        border-radius: 6px;
        overflow: hidden;
        background: linear-gradient(110deg, #e2e8f0 8%, #f1f5f9 18%, #e2e8f0 33%);
        user-select: none;
        -webkit-user-select: none;
        -moz-user-select: none;
        -ms-user-select: none;
    }

    .locked-section-bg {
        position: relative;
    }

    .locked-section-lines {
        padding: 8px 12px;
        position: relative;
    }

    .locked-line {
        height: 6px;
        background: rgba(255, 255, 255, 0.6);
        border-radius: 3px;
        margin-bottom: 4px;
        margin-left: 12px;
    }

    .locked-line:last-child {
        margin-bottom: 0;
    }

    .locked-section-icon {
        position: absolute;
        top: 50%;
        left: 50%;
        transform: translate(-50%, -50%);
        z-index: 10;
        font-size: 24px;
        filter: drop-shadow(0 1px 3px rgba(0, 0, 0, 0.1));
    }

    /* Subheader locked sections - slightly indented */
    /*  .prompt-header-visible.subheader+.locked-section {
        margin-left: 16px;
    } */

    /* ========================================
   COMPATIBILITY BADGES
   ======================================== */
    .prompt-compatibility {
        display: flex;
        flex-wrap: wrap;
        align-items: center;
        gap: 8px;
        padding: 12px 20px;
        background: #f8f9fa;
        border-top: 1px solid #e0e0e0;
    }

    .compat-label {
        font-size: 13px;
        color: #5f6368;
        font-weight: 500;
    }

    .compat-badge {
        padding: 4px 10px;
        background: #e8f0fe;
        color: #1967d2;
        border-radius: 4px;
        font-size: 12px;
        font-weight: 500;
    }

    /* ========================================
   CTA ROW - FULL WIDTH BUTTONS
   ======================================== */
    .prompt-cta-row {
        display: flex;
        gap: 16px;
        flex-wrap: wrap;
    }

    .prompt-cta-btn {
        flex: 1;
        min-width: 200px;
        display: inline-flex;
        align-items: center;
        justify-content: center;
        gap: 10px;
        padding: 16px 24px;
        border-radius: 8px;
        font-size: 16px;
        font-weight: 600;
        cursor: pointer;
        transition: all 0.2s;
        text-decoration: none;
        border: none;
    }

    .prompt-cta-copy {
        background: #3a3a3a;
        color: #fff;
    }

    .prompt-cta-copy:hover {
        background: #2a2a2a;
        transform: translateY(-2px);
        box-shadow: 0 4px 12px rgba(0, 0, 0, 0.15);
    }

    .prompt-cta-copy.copied {
        background: #2e7d32;
    }

    .prompt-cta-reset {
        background: #3a3a3a;
        color: #fff;
    }

    .prompt-cta-reset:hover {
        background: #2a2a2a;
        transform: translateY(-2px);
        box-shadow: 0 4px 12px rgba(0, 0, 0, 0.15);
    }

    .prompt-cta-access {
        background: rgb(5, 152, 98);
        color: #fff !important;
    }

    .prompt-cta-access:hover {
        background: rgb(4, 130, 83);
        transform: translateY(-2px);
        box-shadow: 0 4px 12px rgba(5, 152, 98, 0.3);
    }

    /* ========================================
    CUSTOMIZE YOUR PROMPT SECTION
    ======================================== */
    .prompt-customize-section {
        padding: 24px;
        border-bottom: 1px solid #e0e0e0;
        background: #fafbfc;
    }

    .customize-title {
        margin: 0 0 8px 0;
        font-size: 18px;
        font-weight: 700;
        color: #202124;
    }

    .customize-subtitle {
        margin: 0 0 20px 0;
        font-size: 14px;
        color: #5f6368;
    }

    .customize-table {
        width: 100%;
        border-collapse: collapse;
        margin-bottom: 20px;
    }

    .customize-table th {
        text-align: left;
        padding: 12px;
        background: #f1f3f4;
        border: 1px solid #e0e0e0;
        font-size: 13px;
        font-weight: 600;
        color: #202124;
    }

    .customize-table td {
        padding: 12px;
        border: 1px solid #e0e0e0;
        vertical-align: top;
    }

    .customize-table .var-name {
        width: 25%;
        background: #f8f9fa;
    }

    .customize-table .var-name code {
        background: #fff3cd;
        color: #1967d2;
        border: 1px solid #ffc107;
        padding: 4px 8px;
        border-radius: 4px;
        font-size: 12px;
        word-break: break-all;
        font-weight: 600;
    }

    .customize-table .var-desc {
        width: 35%;
        font-size: 13px;
        color: #5f6368;
        line-height: 1.5;
    }

    .customize-table .var-example {
        margin-top: 8px;
        padding: 8px 10px;
        background: #f8f9fa;
        border-left: 3px solid #dadce0;
        font-size: 12px;
        color: #5f6368;
        font-style: italic;
        border-radius: 0 4px 4px 0;
    }

    .customize-table .var-input {
        width: 40%;
    }

    .customize-input {
        width: 100%;
        padding: 10px 12px;
        border: 1px solid #dadce0;
        border-radius: 6px;
        font-size: 13px;
        font-family: inherit;
        resize: vertical;
        transition: border-color 0.2s, box-shadow 0.2s;
    }

    .customize-input:focus {
        outline: none;
        border-color: rgb(5, 152, 98);
        box-shadow: 0 0 0 3px rgba(5, 152, 98, 0.1);
    }

    .customize-input::placeholder {
        color: #9aa0a6;
        font-style: italic;
    }

    .copy-customized-btn {
        display: flex;
        align-items: center;
        justify-content: center;
        gap: 10px;
        width: 100%;
        padding: 16px 24px;
        background: rgb(5, 152, 98);
        color: #fff;
        border: none;
        border-radius: 8px;
        font-size: 16px;
        font-weight: 600;
        cursor: pointer;
        transition: all 0.2s;
    }

    .copy-customized-btn:hover {
        background: rgb(4, 130, 83);
        transform: translateY(-2px);
        box-shadow: 0 4px 12px rgba(5, 152, 98, 0.3);
    }

    .copy-customized-btn.copied {
        background: #2e7d32;
    }

    /* ========================================
    FULL PROMPT CODE HEADER
    ======================================== */
    .prompt-code-header {
        display: flex;
        align-items: center;
        justify-content: space-between;
        padding: 10px 20px;
        color: #fff !important;
        background: #141414;
        border-bottom: 1px solid #e0e0e0;
    }

    .prompt-code-title {
        font-size: 22px;
        font-weight: 600;
        text-decoration: underline;

    }

    .prompt-code-buttons {
        display: flex;
        gap: 8px;
    }

    .prompt-code-buttons .prompt-header-btn {
        padding: 8px 14px;
        font-size: 13px;
        background: #ffffff;
        color: #202124;
        border: 1px solid #dadce0;
    }

    .prompt-code-buttons .prompt-header-access {
        background: rgb(5, 152, 98);
        color: #fff !important;
        border-color: rgb(5, 152, 98);
    }

    .prompt-code-buttons .prompt-header-btn.prompt-header-access:hover {
        background: rgb(4, 130, 83) !important;
        border-color: rgb(4, 130, 83);
        color: #fff !important;
    }

    .prompt-code-buttons .prompt-header-btn:hover {
        background: #f1f3f4;
    }

    .prompt-code-buttons .prompt-header-copy.copied {
        background: #d4edda;
        color: #155724;
        border-color: #28a745;
    }

    .prompt-header-reset {
        background: #ffffff;
        color: #202124;
    }

    /* ========================================
   RESPONSIVE
   ======================================== */
    @media (max-width: 768px) {
        .prompt-row-header {
            flex-direction: column;
            align-items: flex-start;
            gap: 12px;
        }

        .prompt-header-buttons {
            margin-left: 0;
            width: 100%;
        }

        .prompt-header-btn {
            flex: 1;
            justify-content: center;
        }

        .prompt-cta-row {
            flex-direction: column;
        }

        .prompt-cta-btn {
            width: 100%;
        }

        /* Customize table responsive */
        .customize-table,
        .customize-table thead,
        .customize-table tbody,
        .customize-table tr,
        .customize-table th,
        .customize-table td {
            display: block;
        }

        .customize-table thead {
            display: none;
        }

        .customize-table tr {
            margin-bottom: 16px;
            border: 1px solid #e0e0e0;
            border-radius: 8px;
            overflow: hidden;
        }

        .customize-table td {
            width: 100% !important;
            border: none;
            border-bottom: 1px solid #e0e0e0;
        }

        .customize-table td:last-child {
            border-bottom: none;
        }

        .customize-table .var-name {
            background: #f1f3f4;
            font-weight: 600;
        }

        .prompt-code-header {
            flex-direction: column;
            gap: 12px;
            align-items: flex-start;
        }

        .prompt-code-buttons {
            width: 100%;
        }

        .prompt-code-buttons .prompt-header-btn {
            flex: 1;
            justify-content: center;
        }
    }
</style>

<script>
    function handlePromptCopy() {
        // Check if unlocked via cookie
        if (typeof window.flowpastIsUnlocked === 'function' && !window.flowpastIsUnlocked()) {
            // Show email popup
            if (typeof window.flowpastShowEmailPopup === 'function') {
                window.flowpastShowEmailPopup('prompt');
            }
            return;
        }

        // Copy the customized prompt (with filled variables)
        const customizedPrompt = getCustomizedPrompt();
        const copyButtons = document.querySelectorAll('.prompt-header-copy, .prompt-header-copy-green, .prompt-cta-copy, .copy-customized-btn');

        navigator.clipboard.writeText(customizedPrompt).then(() => {
            copyButtons.forEach(btn => {
                btn.classList.add('copied');
                const textSpan = btn.querySelector('span');
                if (textSpan) textSpan.textContent = 'Copied!';
            });

            setTimeout(() => {
                copyButtons.forEach(btn => {
                    btn.classList.remove('copied');
                    const textSpan = btn.querySelector('span');
                    if (textSpan) textSpan.textContent = 'Copy Full Prompt';
                });
            }, 2000);
        }).catch(err => {
            console.error('Failed to copy:', err);
        });
    }

    // Store original prompt for customization
    const originalPrompt = "## OBJECTIVE\r\nCreate a production-ready video outline for **[TOPIC]** that a filming\/editing team can follow end-to-end. It must keep viewers watching by combining a strong opening, clearly organized sections, and a memorable close.\r\n\r\n## PERSONA\r\nYou are a senior video narrative designer who builds tight, high-retention scripts for educational and brand content. You write with clarity, pacing, and visual storytelling in mind, giving crews practical direction (what to show, what to hear, what to say).\r\n\r\n## CONSTRAINTS\r\n- Optimize for clarity, accuracy, and audience engagement.\r\n- Make the structure easy to hand off to producers, editors, animators, and voice talent.\r\n- Use plain language and avoid unnecessary jargon; define any required technical terms briefly.\r\n- Keep the outline adaptable (include options where useful).\r\n- **Variable format compliance:** user-supplied values must appear as **[UPPERCASE_WITH_UNDERSCORES]**; AI-filled placeholders must appear only as **{Title Case}**.\r\n\r\n### What This Is NOT (Scope Boundaries)\r\n- Not a fully written word-for-word screenplay (only select narration lines\/snippets).\r\n- Not a shot list with lens specs, lighting diagrams, or exact frame-by-frame edit decisions.\r\n- Not a research paper or a list of sources (unless the user explicitly asks for citations).\r\n\r\n## PROCESS\r\n1. **Pre-analysis (mandatory):** Briefly state your understanding of the video\u2019s purpose, who it\u2019s for (infer if missing), and the likely best platform style (e.g., YouTube explainer, short-form social, training video). Then proceed.\r\n2. Build an **opening sequence** that uses a hook mechanism (curiosity, contrast, surprising data point, or relatable moment).\r\n3. Provide a **roadmap line** that tells viewers what they\u2019ll learn without sounding like a table of contents.\r\n4. Develop the **core chapters** as a sequence of segments that progress logically from basics \u2192 nuance \u2192 practical application (adjust to topic).\r\n5. Add **retention beats** throughout: questions, quick prompts for comments, \u201cwatch for this next\u201d cues, or lightweight polls (platform-dependent).\r\n6. Close with a **strong wrap-up**: summarize, deliver a clear next step, and end on a resonant question or statement.\r\n7. Add a **flex notes** section with optional swaps, upgrades, or alternate angles.\r\n\r\n### Edge Case Handling\r\n- If **[TOPIC]** is broad, propose a narrower angle and proceed using that angle.\r\n- If **[TOPIC]** is unclear, list 3 plausible interpretations and select the most reasonable one to draft the outline.\r\n- If critical context is missing (platform, length, audience), make sensible assumptions and label them clearly.\r\n\r\n## INPUTS\r\n- **Video subject:** [TOPIC]  \r\n- **Primary user segment (optional):** [TARGET_AUDIENCE]  \r\n- **Platform\/channel (optional):** [PLATFORM]  \r\n- **Tone preferences (optional):** [TONE]  \r\n- **Brand voice guidance (optional):** [BRAND_VOICE]  \r\n- **Primary goal (optional):** [PRIMARY_GOAL]  \r\n- **Background constraints (optional):** [CONTEXT]  \r\n- **Required keywords (optional):** [KEYWORDS]  \r\n- **Time target (optional):** [TIMEFRAME]  \r\n\r\n## OUTPUT SPECIFICATION\r\nDeliver the outline using the structure below.\r\n\r\n### 1) {Pre-Analysis Summary}\r\n- {Assumed Audience}\r\n- {Assumed Platform & Style}\r\n- {Learning Promise \/ Outcome}\r\n\r\n### 2) {Video Overview}\r\n- {Working Title}\r\n- {One-Sentence Premise}\r\n- {Target Viewer Takeaways} (bullets)\r\n- {Estimated Runtime Range} (if [TIMEFRAME] not provided, suggest one)\r\n\r\n### 3) {Opening (Hook + Setup)} (roughly first 20\u201340 seconds)\r\n- **Hook mechanism:** {Hook Type}\r\n- **On-screen \/ visuals:** {Opening Visual Notes}\r\n- **Audio:** {Music\/SFX Notes}\r\n- **Narration snippets (2\u20134 lines):** {Opening Lines}\r\n- **Credibility builder:** {Why Viewer Should Trust This Video}\r\n- **Roadmap line:** {Preview Line}\r\n\r\n### 4) {Main Segments}\r\nFor each segment, repeat:\r\n\r\n#### {Segment Number}. {Segment Title}\r\n- **Objective:** {Segment Objective}\r\n- **Key points:**  \r\n  - {Key Point 1}  \r\n  - {Key Point 2}  \r\n  - {Key Point 3}\r\n- **Visual plan:** {B-Roll \/ Graphics \/ Animation Ideas}\r\n- **Audio plan:** {VO \/ SFX \/ Music \/ Beat Changes}\r\n- **Dialogue\/script notes (snippets):** {Narration\/Host Lines}\r\n- **Engagement beat:** {Comment Prompt \/ Question \/ Poll Suggestion}\r\n- **Transition out:** {Transition Line or Visual Bridge}\r\n\r\n*(Include as many segments as needed to fully cover [TOPIC] without bloating; typically 4\u20137.)*\r\n\r\n### 5) {Conclusion (Wrap + CTA)} (roughly last 20\u201345 seconds)\r\n- **Recap bullets:** {Key Takeaways}\r\n- **Call to action:** {CTA Line} (subscribe\/follow\/visit\/etc.)\r\n- **Final resonance:** {Closing Question or Statement}\r\n- **End-screen \/ final visuals:** {End Visual Notes}\r\n- **Audio:** {Outro Music\/SFX Notes}\r\n\r\n### 6) {Flexibility & Upgrade Notes}\r\n- {Optional Segment Swaps}\r\n- {Alternate Hook Options} (2 alternatives)\r\n- {Places to Add Examples\/Case Study}\r\n- {If Comments Reveal Confusion, Adjustments To Make}\r\n\r\n## QUALITY CHECKS\r\nBefore finalizing, verify:\r\n- The hook and early setup create clear curiosity within the first ~30 seconds.\r\n- Each segment has a single, concrete objective and a logical transition.\r\n- Visual\/audio notes are actionable for production (not vague).\r\n- Engagement prompts feel natural and are spaced across the video.\r\n- The ending includes recap + CTA + a memorable final line, aligned to [PRIMARY_GOAL] if provided.";
    const variables = ["[TOPIC]","[UPPERCASE_WITH_UNDERSCORES]","[TARGET_AUDIENCE]","[PLATFORM]","[TONE]","[BRAND_VOICE]","[PRIMARY_GOAL]","[CONTEXT]","[KEYWORDS]","[TIMEFRAME]"];
    // Initial render with highlighted variables
    document.addEventListener('DOMContentLoaded', function() {
        renderPromptWithHighlights();
    });

    // Live update prompt as user types
    document.querySelectorAll('.customize-input').forEach(input => {
        input.addEventListener('input', renderPromptWithHighlights);
    });

    function renderPromptWithHighlights() {
        const promptContent = document.getElementById('premium-prompt-content');
        if (!promptContent) return;

        let updatedPrompt = originalPrompt;
        let filledVariables = {};

        // Collect filled values
        document.querySelectorAll('.customize-input').forEach(input => {
            const placeholder = input.dataset.placeholder;
            const value = input.value.trim();

            if (value) {
                filledVariables[placeholder] = value;
            }
        });

        // Replace filled variables and highlight remaining
        let htmlContent = escapeHtml(updatedPrompt);

        variables.forEach(placeholder => {
            const escapedPlaceholder = escapeHtml(placeholder);
            const regex = new RegExp(escapeRegex(escapedPlaceholder), 'g');

            if (filledVariables[placeholder]) {
                // Show filled value with green highlight
                htmlContent = htmlContent.replace(regex,
                    '<span class="prompt-variable-filled">' + escapeHtml(filledVariables[placeholder]) + '</span>'
                );
            } else {
                // Show original placeholder with yellow highlight
                htmlContent = htmlContent.replace(regex,
                    '<span class="prompt-variable">' + escapedPlaceholder + '</span>'
                );
            }
        });

        promptContent.innerHTML = htmlContent;
    }

    function escapeRegex(string) {
        return string.replace(/[.*+?^${}()|[\]\\]/g, '\\$&');
    }

    function escapeHtml(text) {
        const div = document.createElement('div');
        div.textContent = text;
        return div.innerHTML;
    }

    function resetPrompt() {
        // Clear all input fields
        document.querySelectorAll('.customize-input').forEach(input => {
            input.value = '';
        });

        // Re-render with original placeholders highlighted
        renderPromptWithHighlights();

        // Visual feedback
        const resetBtns = document.querySelectorAll('.prompt-header-reset, .prompt-cta-reset');
        resetBtns.forEach(btn => {
            const originalText = btn.querySelector('span').textContent;
            btn.querySelector('span').textContent = 'Reset!';
            setTimeout(() => {
                btn.querySelector('span').textContent = originalText;
            }, 1000);
        });
    }


    function getCustomizedPrompt() {
        let updatedPrompt = originalPrompt;

        document.querySelectorAll('.customize-input').forEach(input => {
            const placeholder = input.dataset.placeholder;
            const value = input.value.trim();

            if (value) {
                const regex = new RegExp(escapeRegex(placeholder), 'g');
                updatedPrompt = updatedPrompt.replace(regex, value);
            }
        });

        return updatedPrompt;
    }
</script>

</div>

<div class="pro-tips-section">

<h2 class="wp-block-heading">Pro Tips for Better AI Prompt Results</h2>



<ul class="wp-block-list">

<li><strong>Define the topic like a promise, not a category.</strong> “Email marketing” is too broad; “How to write a welcome email that gets your first reply” gives the outline a destination. If your topic can’t be measured, the chapters tend to wander.</li>


<li><strong>Ask for a specific platform style if it matters.</strong> The prompt will infer a likely style, but you can steer it with a follow-up like: “Redo the outline as a YouTube explainer with light humor and a 6–8 minute target length.” That one line changes pacing, chapter length, and how many retention beats you need.</li>


<li><strong>Make the visuals real to your production constraints.</strong> After you get the first outline, add: “We have only a talking-head setup plus simple screen recordings; replace any B-roll suggestions with feasible alternatives.” Honestly, this prevents outlines that look great on paper but die in production.</li>


<li><strong>Use contrast passes to sharpen the hook.</strong> Try: “Give me 3 alternative opening hooks: one curiosity-led, one contrast-led, and one surprising data point. Keep each under 12 seconds.” Then pick the best and ask it to align the first chapter to that hook.</li>


<li><strong>Force a retention audit after the draft.</strong> Follow with: “Audit this outline for drop-off risk. Identify the 3 weakest moments and add a retention beat (question, demo, mini-reveal) to each.” You’ll usually get a tighter midsection and a stronger bridge into the close.</li>

</ul>

</div>

<div class="related-prompts-section">

<h2 class="wp-block-heading">Related Prompts</h2>



<p>Once your video outline is locked, these prompts help with adjacent planning work where structure and handoff clarity matter.</p>



<p>If you also need to turn the video’s CTA into a retention-friendly offer, <a href="https://flowpast.com/prompts/create-a-loyalty-program-proposal-ai-prompt/">Create a Loyalty Program Proposal AI Prompt</a> helps you shape a clear proposal you can reference in your closing and on-screen graphics. It’s useful when the video is meant to push viewers toward a program, not just inform.</p>



<p>For teams doing stakeholder approvals, <a href="https://flowpast.com/prompts/write-a-loyalty-program-business-proposal-with-this-ai-prompt/">Write a Loyalty Program Business Proposal with this AI Prompt</a> can complement your outline by giving leadership-ready language and structure. That’s handy when the video is part of a larger initiative and you need internal alignment before launch.</p>



<p>When your content is meant to support customer retention directly, <a href="https://flowpast.com/prompts/build-a-customer-loyalty-program-with-this-ai-prompt/">Build a Customer Loyalty Program with this AI Prompt</a> pairs well because it helps define benefits, tiers, and mechanics you can illustrate as on-screen examples. The clearer the program, the easier it is to storyboard believable scenarios.</p>


<br>


<p>Quick reference:</p>



<ul class="wp-block-list">

<li><a href="https://flowpast.com/prompts/create-a-loyalty-program-proposal-ai-prompt/">Create a Loyalty Program Proposal AI Prompt</a>: Draft a clear loyalty proposal fast.</li>


<li><a href="https://flowpast.com/prompts/write-a-loyalty-program-business-proposal-with-this-ai-prompt/">Write a Loyalty Program Business Proposal with this AI Prompt</a>: Stakeholder-ready business proposal structure.</li>


<li><a href="https://flowpast.com/prompts/build-a-customer-loyalty-program-with-this-ai-prompt/">Build a Customer Loyalty Program with this AI Prompt</a>: Design program mechanics and benefits.</li>

<li><a href="https://flowpast.com/prompts/build-a-multi-channel-loyalty-program-with-this-ai-prompt/">Build a Multi-Channel Loyalty Program with this AI Prompt</a>: Coordinate loyalty across channels.</li>

<li><a href="https://flowpast.com/prompts/build-a-loyalty-program-blueprint-ai-prompt/">Build a Loyalty Program Blueprint AI Prompt</a>: Full blueprint for rollout and ops.</li>
<!-- /wp:post-content -->
</ul>
<!-- /wp:list -->
</div>

<div class="faq-section">
<!-- wp:heading {"level":2} -->
<h2 class="wp-block-heading">Common Questions</h2>
<!-- /wp:heading -->

<div class="faq-item">
<span class="question">Which roles benefit most from this video outline AI prompt?</span>
<!-- wp:paragraph -->
<p class="answer"><strong>Video producers</strong> use this to get a clean handoff document that reduces back-and-forth with writers and stakeholders. <strong>Content marketing managers</strong> rely on it to translate a campaign goal into chapters, beats, and a closing CTA that feels earned. <strong>YouTube strategists</strong> benefit from the built-in hook mechanisms and retention beats that keep the pacing tight. <strong>Course creators</strong> apply it to map a lesson flow from basics to nuance to application without accidentally skipping steps.</p>
<!-- /wp:paragraph -->
</div>

<div class="faq-item">
<span class="question">Which industries get the most value from this video outline AI prompt?</span>
<!-- wp:paragraph -->
<p class="answer"><strong>SaaS companies</strong> use it for feature explainers, onboarding videos, and “how it works” content where clarity and progression matter. The outline format helps align product marketing with what the audience actually needs to understand first. <strong>E-commerce brands</strong> apply it to product education, UGC-style explainers, and comparison videos, especially when visuals and audio cues need to be planned around a real shoot setup. <strong>Professional services firms</strong> lean on it for authority-building videos that must balance credibility with accessibility, like “what to expect” or “common mistakes” topics. <strong>Agencies</strong> get value because the prompt’s structure is easy to hand to editors and freelancers across multiple client accounts.</p>
<!-- /wp:paragraph -->
</div>

<div class="faq-item">
<span class="question">Why do basic AI prompts for building a video outline produce weak results?</span>
<!-- wp:paragraph -->
<p class="answer">A typical prompt like “<em>Write me a video outline for my topic</em>” fails because it: lacks a pre-analysis of purpose, audience, and platform style, so the pacing is random; provides no retention framework, so the middle turns into a dull list; ignores handoff needs for producers and editors, so there are no usable visual/audio cues; produces generic sections instead of a basics-to-nuance-to-application progression; and misses a designed close, which makes the CTA feel tacked on.</p>
<!-- /wp:paragraph -->
</div>

<div class="faq-item">
<span class="question">Can I customize this video outline AI prompt for my specific situation?</span>
<!-- wp:paragraph -->
<p class="answer">Yes, but you’ll do it through what you put into [TOPIC] and the follow-up instructions you give after the first output. If you want a different platform style, say so explicitly (for example, “Rework this as a 45–60 second short with fast cuts and minimal narration”). You can also constrain production by adding notes like “Only screen recordings and simple motion graphics, no live shoot.” A useful follow-up is: “Rewrite the roadmap line and chapter beats for an audience of [UPPERCASE_WITH_UNDERSCORES] beginners and keep total runtime under {X} minutes.”</p>
<!-- /wp:paragraph -->
</div>

<div class="faq-item">
<span class="question">What are the most common mistakes when using this video outline AI prompt?</span>
<!-- wp:paragraph -->
<p class="answer">The biggest mistake is leaving [TOPIC] too vague — instead of “AI tools,” try “How to use AI to draft weekly LinkedIn posts without sounding generic.” Another common error is asking for a “full script” even though the prompt is designed for an outline; better is “Add 1–2 sample narration lines per chapter, not a word-for-word script.” People also forget production constraints, which leads to unrealistic visuals; a better input is “Assume a talking-head plus on-screen captions and 2 simple b-roll clips max.” Finally, teams skip the iteration step; ask “Now add two additional retention beats to chapters 2 and 4 and tighten the close to one memorable takeaway.”</p>
<!-- /wp:paragraph -->
</div>

<div class="faq-item">
<span class="question">Who should NOT use this video outline AI prompt?</span>
<!-- wp:paragraph -->
<p class="answer">This prompt isn’t ideal for one-take, improvisational content where you intentionally avoid structure, or for teams that only want a quick fill-in-the-blank template with no narrative thinking. It’s also not the right tool if you need a shot list with lens specs, lighting diagrams, or frame-by-frame edit decisions, because that’s out of scope. If you need those deliverables, start with a director-level storyboard/shot-list workflow instead, then use this outline as supporting narrative guidance.</p>
<!-- /wp:paragraph -->
</div>

<script type="application/ld+json">
{
  "@context": "https://schema.org",
  "@type": "FAQPage",
  "mainEntity": [
    {
      "@type": "Question",
      "name": "Which roles benefit most from this video outline AI prompt?",
      "acceptedAnswer": {
        "@type": "Answer",
        "text": "Video producers use this to get a clean handoff document that reduces back-and-forth with writers and stakeholders. Content marketing managers rely on it to translate a campaign goal into chapters, beats, and a closing CTA that feels earned. YouTube strategists benefit from the built-in hook mechanisms and retention beats that keep the pacing tight. Course creators apply it to map a lesson flow from basics to nuance to application without accidentally skipping steps."
      }
    },
    {
      "@type": "Question",
      "name": "Which industries get the most value from this video outline AI prompt?",
      "acceptedAnswer": {
        "@type": "Answer",
        "text": "SaaS companies use it for feature explainers, onboarding videos, and “how it works” content where clarity and progression matter. The outline format helps align product marketing with what the audience actually needs to understand first. E-commerce brands apply it to product education, UGC-style explainers, and comparison videos, especially when visuals and audio cues need to be planned around a real shoot setup. Professional services firms lean on it for authority-building videos that must balance credibility with accessibility, like “what to expect” or “common mistakes” topics. Agencies get value because the prompt’s structure is easy to hand to editors and freelancers across multiple client accounts."
      }
    },
    {
      "@type": "Question",
      "name": "Why do basic AI prompts for building a video outline produce weak results?",
      "acceptedAnswer": {
        "@type": "Answer",
        "text": "A typical prompt like “Write me a video outline for my topic” fails because it: lacks a pre-analysis of purpose, audience, and platform style, so the pacing is random; provides no retention framework, so the middle turns into a dull list; ignores handoff needs for producers and editors, so there are no usable visual/audio cues; produces generic sections instead of a basics-to-nuance-to-application progression; and misses a designed close, which makes the CTA feel tacked on."
      }
    },
    {
      "@type": "Question",
      "name": "Can I customize this video outline AI prompt for my specific situation?",
      "acceptedAnswer": {
        "@type": "Answer",
        "text": "Yes, but you’ll do it through what you put into [TOPIC] and the follow-up instructions you give after the first output. If you want a different platform style, say so explicitly (for example, “Rework this as a 45–60 second short with fast cuts and minimal narration”). You can also constrain production by adding notes like “Only screen recordings and simple motion graphics, no live shoot.” A useful follow-up is: “Rewrite the roadmap line and chapter beats for an audience of [UPPERCASE_WITH_UNDERSCORES] beginners and keep total runtime under {X} minutes.”"
      }
    },
    {
      "@type": "Question",
      "name": "What are the most common mistakes when using this video outline AI prompt?",
      "acceptedAnswer": {
        "@type": "Answer",
        "text": "The biggest mistake is leaving [TOPIC] too vague — instead of “AI tools,” try “How to use AI to draft weekly LinkedIn posts without sounding generic.” Another common error is asking for a “full script” even though the prompt is designed for an outline; better is “Add 1–2 sample narration lines per chapter, not a word-for-word script.” People also forget production constraints, which leads to unrealistic visuals; a better input is “Assume a talking-head plus on-screen captions and 2 simple b-roll clips max.” Finally, teams skip the iteration step; ask “Now add two additional retention beats to chapters 2 and 4 and tighten the close to one memorable takeaway.”"
      }
    },
    {
      "@type": "Question",
      "name": "Who should NOT use this video outline AI prompt?",
      "acceptedAnswer": {
        "@type": "Answer",
        "text": "This prompt isn’t ideal for one-take, improvisational content where you intentionally avoid structure, or for teams that only want a quick fill-in-the-blank template with no narrative thinking. It’s also not the right tool if you need a shot list with lens specs, lighting diagrams, or frame-by-frame edit decisions, because that’s out of scope. If you need those deliverables, start with a director-level storyboard/shot-list workflow instead, then use this outline as supporting narrative guidance."
      }
    }
  ]
}
</script>
</div>

<div class="closing-section">
<!-- wp:paragraph -->
<p>A good outline saves hours in filming and days in editing. Paste this prompt into your AI tool, set your [TOPIC], and walk into production with a plan you can actually execute.</p>
<!-- /wp:paragraph -->
</div>]]></content:encoded>
					
		
		
		<media:content url="https://flowpast.s3.eu-north-1.amazonaws.com/featured_blog_images/5000618.webp" medium="image"></media:content>
            	</item>
		<item>
		<title>Write a Story-Driven Video Script with this AI Prompt</title>
		<link>https://flowpast.com/prompts/write-a-story-driven-video-script-with-this-ai-prompt/</link>
		
		<dc:creator><![CDATA[Lisa Granqvist]]></dc:creator>
		<pubDate>Fri, 23 Jan 2026 02:22:36 +0000</pubDate>
				<category><![CDATA[Prompts]]></category>
		<guid isPermaLink="false">https://flowpast.com/?p=5000617</guid>

					<description><![CDATA[Viewer retention drops fast - this AI Prompt writes a story-driven branded video script with hook, cues, and CTA. Explore thousands of AI prompts by function and industry.]]></description>
										<content:encoded><![CDATA[<!-- FOCUS_KEYWORD: story-driven video script -->

<div class="hook-introduction">

<p>Your videos can be “good” and still lose people in the first 10 seconds. The usual culprit is structure: the intro meanders, the value lands late, and the CTA feels tacked on. Then you’re stuck rewriting, guessing, and hoping the next cut holds attention.</p>



<p>This <strong>story-driven video script</strong> is built for <strong>brand marketers</strong> who need a ready-to-film script for a launch or campaign asset, <strong>founders</strong> who are filming explainers and want a clear arc without sounding salesy, and <strong>content leads</strong> who have to ship weekly videos while keeping tone consistent across presenters. The output is a narrative script with a fast hook, a setup → development → payoff structure, interaction prompts, in-line production cues (visual/audio), and a clear CTA that matches your brand voice.</p>

</div>

<div class="what-and-when-section">

<h2 class="wp-block-heading">What Does This AI Prompt Do and When to Use It?</h2>



<table class="solution-results-table three-column" role="presentation" aria-label="What this prompt does, when to use it, and what you get">
 <thead>
    <tr>
      <th scope="col">What This Prompt Does</th>
      <th scope="col">When to Use This Prompt</th>
      <th scope="col">What You&#8217;ll Get</th>
    </tr>
  </thead>
  <tbody>
    <tr>
      <td>
        <ul class="automation-list">
          <li>It restates your assignment in 3–6 bullets so you can confirm the intended viewer, the core promise, and the end action before writing.</li>
          <li>It turns your key messages into a problem → insight → solution/next step throughline instead of a list of points.</li>
          <li>It generates a hook designed for the first ~5–8 seconds using an attention disruptor that fits your brand voice.</li>
          <li>It writes a full story arc (setup, development, payoff) with mini-stories or examples that make the teaching portion feel watchable.</li>
          <li>It inserts performance-friendly production cues for your visual and audio elements so an editor can assemble the piece faster.</li>
       </ul>
      </td>
      <td>
        <ul class="results-list">
          <li>You have a solid topic, but every draft starts slow and retention drops in the first quarter of the video.</li>
          <li>You are translating a complex idea into something teachable and you need the message to stay focused, not wander.</li>
          <li>You’re preparing a branded video and the tone keeps drifting when different people contribute to the script.</li>
          <li>You want viewers to comment, click, or try something, but your interaction prompts currently feel awkward or spammy.</li>
          <li>You are scaling content production and need a repeatable script structure that stays consistent across episodes.</li>
        </ul>
      </td>
       <td>
         <ul class="deliverables-list">
           <li>A ready-to-film narrative script with a hook, body, and ending CTA (formatted for presenter or voiceover delivery).</li>
           <li>A 3–6 bullet pre-analysis summary that confirms audience, promise, and desired action before the script begins.</li>
           <li>A message map that converts your key messages into a single throughline you can reuse for thumbnails and captions.</li>
           <li>Natural interaction prompts placed in the script (for example, a quick “comment X” moment and a mid-video check-in).</li>
           <li>In-line production cues for visuals and audio, written in plain language your editor can follow.</li>
         </ul>
       </td>
    </tr>
  </tbody>
</table>

</div>

<div class="prompt-display-section">

<h2 class="wp-block-heading">The Full AI Prompt: Story-Driven Branded Video Script Builder</h2>



<div class="prompt-viewer-wrapper" id="prompt-section">
    <div class="prompt-comparison-row prompt-premium">
        <!-- Header with buttons -->
        <div class="prompt-row-header">
            <!-- <span class="prompt-row-icon">✨</span> -->
            <span class="prompt-row-title">
                                    Step 1: Customize the prompt with your input
                            </span>
            <div class="prompt-header-buttons">
                                    <button class="prompt-header-btn prompt-header-reset" onclick="resetPrompt()">
                        <svg xmlns="http://www.w3.org/2000/svg" width="16" height="16" fill="currentColor" viewBox="0 0 16 16">
                            <path fill-rule="evenodd" d="M8 3a5 5 0 1 0 4.546 2.914.5.5 0 0 1 .908-.417A6 6 0 1 1 8 2v1z" />
                            <path d="M8 4.466V.534a.25.25 0 0 1 .41-.192l2.36 1.966c.12.1.12.284 0 .384L8.41 4.658A.25.25 0 0 1 8 4.466z" />
                        </svg>
                        <span>Reset</span>
                    </button>
                                <button class="prompt-header-btn prompt-header-copy-green flowpast-copy-prompt-btn" onclick="handlePromptCopy()">
                    <svg xmlns="http://www.w3.org/2000/svg" width="16" height="16" fill="currentColor" viewBox="0 0 16 16">
                        <path d="M4 1.5H3a2 2 0 0 0-2 2V14a2 2 0 0 0 2 2h10a2 2 0 0 0 2-2V3.5a2 2 0 0 0-2-2h-1v1h1a1 1 0 0 1 1 1V14a1 1 0 0 1-1 1H3a1 1 0 0 1-1-1V3.5a1 1 0 0 1 1-1h1v-1z" />
                        <path d="M9.5 1a.5.5 0 0 1 .5.5v1a.5.5 0 0 1-.5.5h-3a.5.5 0 0 1-.5-.5v-1a.5.5 0 0 1 .5-.5h3zm-3-1A1.5 1.5 0 0 0 5 1.5v1A1.5 1.5 0 0 0 6.5 4h3A1.5 1.5 0 0 0 11 2.5v-1A1.5 1.5 0 0 0 9.5 0h-3z" />
                    </svg>
                    <span>Customize and Copy Full Prompt</span>
                </button>
            </div>
        </div>

        <!-- Customize the Prompt Section -->
                    <div class="prompt-customize-section">
                <span class="customize-title">Customize the Prompt</span>
                <p class="customize-subtitle">Fill in the fields below to personalize this prompt for your needs.</p>
                <table class="customize-table">
                    <thead>
                        <tr>
                            <th>Variable</th>
                            <th>What to Enter</th>
                            <th>Customise the prompt</th>
                        </tr>
                    </thead>
                    <tbody>
                                                    <tr>
                                <td class="var-name"><code>[TOPIC]</code></td>
                                <td class="var-desc">
                                    Specify the main subject or theme of the video script. This should be concise and directly relevant to your audience.                                    <div class="var-example">For example: "How to optimize your LinkedIn profile for job seekers in tech."</div>
                                </td>
                                <td class="var-input">
                                                                            <input
                                            type="text"
                                            class="customize-input"
                                            data-placeholder="[TOPIC]"
                                            placeholder="Enter your value here..." />
                                                                    </td>
                            </tr>
                                                    <tr>
                                <td class="var-name"><code>[BRAND_VOICE]</code></td>
                                <td class="var-desc">
                                    Describe the tone, style, and personality of your brand&#039;s communication. Include specific traits like formal, casual, humorous, or authoritative.                                    <div class="var-example">For example: "Empathetic and approachable with a focus on practical advice and a conversational tone."</div>
                                </td>
                                <td class="var-input">
                                                                            <textarea
                                            class="customize-input"
                                            data-placeholder="[BRAND_VOICE]"
                                            placeholder="Enter your value here..."
                                            rows="3"></textarea>
                                                                    </td>
                            </tr>
                                                    <tr>
                                <td class="var-name"><code>[KEY_MESSAGES]</code></td>
                                <td class="var-desc">
                                    List the core ideas or points the video must communicate. These should align with your goals and resonate with the audience.                                    <div class="var-example">For example: "1. LinkedIn is the key to professional networking. 2. Optimize your profile with specific keywords. 3. Use engagement strategies to attract recruiters."</div>
                                </td>
                                <td class="var-input">
                                                                            <textarea
                                            class="customize-input"
                                            data-placeholder="[KEY_MESSAGES]"
                                            placeholder="Enter your value here..."
                                            rows="3"></textarea>
                                                                    </td>
                            </tr>
                                                    <tr>
                                <td class="var-name"><code>[CALL_TO_ACTION]</code></td>
                                <td class="var-desc">
                                    Specify the desired action viewers should take after watching the video. Keep it clear and actionable.                                    <div class="var-example">For example: "Visit our website to download the free LinkedIn optimization checklist."</div>
                                </td>
                                <td class="var-input">
                                                                            <input
                                            type="text"
                                            class="customize-input"
                                            data-placeholder="[CALL_TO_ACTION]"
                                            placeholder="Enter your value here..." />
                                                                    </td>
                            </tr>
                                                    <tr>
                                <td class="var-name"><code>[TARGET_AUDIENCE]</code></td>
                                <td class="var-desc">
                                    Describe the primary audience for the video, including demographics, interests, and any relevant characteristics.                                    <div class="var-example">For example: "Mid-career professionals in the tech industry looking to advance their careers through networking."</div>
                                </td>
                                <td class="var-input">
                                                                            <textarea
                                            class="customize-input"
                                            data-placeholder="[TARGET_AUDIENCE]"
                                            placeholder="Enter your value here..."
                                            rows="3"></textarea>
                                                                    </td>
                            </tr>
                                                    <tr>
                                <td class="var-name"><code>[VISUAL_AND_AUDIO_ELEMENTS]</code></td>
                                <td class="var-desc">
                                    Provide details about the visuals, audio, or production cues to include in the video. Mention specific graphics, music, or sound effects.                                    <div class="var-example">For example: "Include upbeat background music, on-screen text summarizing key points, and b-roll footage of professionals working in office spaces."</div>
                                </td>
                                <td class="var-input">
                                                                            <textarea
                                            class="customize-input"
                                            data-placeholder="[VISUAL_AND_AUDIO_ELEMENTS]"
                                            placeholder="Enter your value here..."
                                            rows="3"></textarea>
                                                                    </td>
                            </tr>
                                                    <tr>
                                <td class="var-name"><code>[PLATFORM]</code></td>
                                <td class="var-desc">
                                    Specify the platform or channel where the video will be published. This helps tailor the format and style appropriately.                                    <div class="var-example">For example: "LinkedIn video posts or YouTube educational content."</div>
                                </td>
                                <td class="var-input">
                                                                            <input
                                            type="text"
                                            class="customize-input"
                                            data-placeholder="[PLATFORM]"
                                            placeholder="Enter your value here..." />
                                                                    </td>
                            </tr>
                                                    <tr>
                                <td class="var-name"><code>[TIMEFRAME]</code></td>
                                <td class="var-desc">
                                    Indicate the timeline or deadline for completing the video production. Include specific dates or durations if possible.                                    <div class="var-example">For example: "Complete the video script by October 15th, with final production by October 30th."</div>
                                </td>
                                <td class="var-input">
                                                                            <input
                                            type="text"
                                            class="customize-input"
                                            data-placeholder="[TIMEFRAME]"
                                            placeholder="Enter your value here..." />
                                                                    </td>
                            </tr>
                                            </tbody>
                </table>

                <button class="copy-customized-btn flowpast-copy-prompt-btn" onclick="handlePromptCopy()">
                    <svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" fill="currentColor" viewBox="0 0 16 16">
                        <path d="M4 1.5H3a2 2 0 0 0-2 2V14a2 2 0 0 0 2 2h10a2 2 0 0 0 2-2V3.5a2 2 0 0 0-2-2h-1v1h1a1 1 0 0 1 1 1V14a1 1 0 0 1-1 1H3a1 1 0 0 1-1-1V3.5a1 1 0 0 1 1-1h1v-1z" />
                        <path d="M9.5 1a.5.5 0 0 1 .5.5v1a.5.5 0 0 1-.5.5h-3a.5.5 0 0 1-.5-.5v-1a.5.5 0 0 1 .5-.5h3zm-3-1A1.5 1.5 0 0 0 5 1.5v1A1.5 1.5 0 0 0 6.5 4h3A1.5 1.5 0 0 0 11 2.5v-1A1.5 1.5 0 0 0 9.5 0h-3z" />
                    </svg>
                    <span class="copy-customized-text">Customise the prompt now</span>
                </button>
            </div>
        
        <!-- Full Prompt Code Header -->
                    <div class="prompt-code-header">
                <span class="prompt-code-title">
                    Step 2: Copy the Prompt
                </span>
                <div class="prompt-code-buttons">
                    <!-- Reset: Only visible when unlocked -->
                    <button class="prompt-header-btn prompt-header-reset btn-when-unlocked" onclick="resetPrompt()" style="display: none;">
                        <svg xmlns="http://www.w3.org/2000/svg" width="16" height="16" fill="currentColor" viewBox="0 0 16 16">
                            <path fill-rule="evenodd" d="M8 3a5 5 0 1 0 4.546 2.914.5.5 0 0 1 .908-.417A6 6 0 1 1 8 2v1z" />
                            <path d="M8 4.466V.534a.25.25 0 0 1 .41-.192l2.36 1.966c.12.1.12.284 0 .384L8.41 4.658A.25.25 0 0 1 8 4.466z" />
                        </svg>
                        <span>Reset</span>
                    </button>
                    <!-- Copy Full Prompt -->
                    <button class="prompt-header-btn prompt-header-copy flowpast-copy-prompt-btn" onclick="handlePromptCopy()">
                        <svg xmlns="http://www.w3.org/2000/svg" width="16" height="16" fill="currentColor" viewBox="0 0 16 16">
                            <path d="M4 1.5H3a2 2 0 0 0-2 2V14a2 2 0 0 0 2 2h10a2 2 0 0 0 2-2V3.5a2 2 0 0 0-2-2h-1v1h1a1 1 0 0 1 1 1V14a1 1 0 0 1-1 1H3a1 1 0 0 1-1-1V3.5a1 1 0 0 1 1-1h1v-1z" />
                            <path d="M9.5 1a.5.5 0 0 1 .5.5v1a.5.5 0 0 1-.5.5h-3a.5.5 0 0 1-.5-.5v-1a.5.5 0 0 1 .5-.5h3zm-3-1A1.5 1.5 0 0 0 5 1.5v1A1.5 1.5 0 0 0 6.5 4h3A1.5 1.5 0 0 0 11 2.5v-1A1.5 1.5 0 0 0 9.5 0h-3z" />
                        </svg>
                        <span>Copy Full Prompt</span>
                    </button>
                </div>
            </div>
        

        <!-- Prompt Content -->
        <div class="prompt-box prompt-gated-wrapper">
            <!-- Gated: Blurred content -->
            <div class="prompt-gated-content">
                <div class="prompt-header-visible">OBJECTIVE</div><div class="locked-section"><div class="locked-section-bg"><div class="locked-section-lines"><div class="locked-line" style="width: 85%;"></div><div class="locked-line" style="width: 78%;"></div></div></div><div class="locked-section-icon">🔒</div></div><div class="prompt-header-visible">PERSONA</div><div class="locked-section"><div class="locked-section-bg"><div class="locked-section-lines"><div class="locked-line" style="width: 85%;"></div><div class="locked-line" style="width: 78%;"></div></div></div><div class="locked-section-icon">🔒</div></div><div class="prompt-header-visible">CONSTRAINTS</div><div class="locked-section"><div class="locked-section-bg"><div class="locked-section-lines"><div class="locked-line" style="width: 85%;"></div><div class="locked-line" style="width: 78%;"></div><div class="locked-line" style="width: 92%;"></div><div class="locked-line" style="width: 75%;"></div><div class="locked-line" style="width: 88%;"></div><div class="locked-line" style="width: 72%;"></div><div class="locked-line" style="width: 80%;"></div></div></div><div class="locked-section-icon">🔒</div></div><div class="prompt-header-visible subheader">What This Is NOT</div><div class="locked-section"><div class="locked-section-bg"><div class="locked-section-lines"><div class="locked-line" style="width: 85%;"></div><div class="locked-line" style="width: 78%;"></div><div class="locked-line" style="width: 92%;"></div></div></div><div class="locked-section-icon">🔒</div></div><div class="prompt-header-visible">PROCESS</div><div class="locked-section"><div class="locked-section-bg"><div class="locked-section-lines"><div class="locked-line" style="width: 85%;"></div><div class="locked-line" style="width: 78%;"></div><div class="locked-line" style="width: 92%;"></div><div class="locked-line" style="width: 75%;"></div><div class="locked-line" style="width: 88%;"></div><div class="locked-line" style="width: 72%;"></div><div class="locked-line" style="width: 80%;"></div><div class="locked-line" style="width: 95%;"></div><div class="locked-line" style="width: 70%;"></div><div class="locked-line" style="width: 83%;"></div><div class="locked-line" style="width: 85%;"></div></div></div><div class="locked-section-icon">🔒</div></div><div class="prompt-header-visible">INPUTS</div><div class="locked-section"><div class="locked-section-bg"><div class="locked-section-lines"><div class="locked-line" style="width: 85%;"></div><div class="locked-line" style="width: 78%;"></div><div class="locked-line" style="width: 92%;"></div><div class="locked-line" style="width: 75%;"></div><div class="locked-line" style="width: 88%;"></div><div class="locked-line" style="width: 72%;"></div><div class="locked-line" style="width: 80%;"></div><div class="locked-line" style="width: 95%;"></div></div></div><div class="locked-section-icon">🔒</div></div><div class="prompt-header-visible">OUTPUT SPECIFICATION</div><div class="locked-section"><div class="locked-section-bg"><div class="locked-section-lines"><div class="locked-line" style="width: 85%;"></div><div class="locked-line" style="width: 78%;"></div></div></div><div class="locked-section-icon">🔒</div></div><div class="prompt-header-visible subheader">1) {Pre-Analysis Summary}</div><div class="locked-section"><div class="locked-section-bg"><div class="locked-section-lines"><div class="locked-line" style="width: 85%;"></div><div class="locked-line" style="width: 78%;"></div></div></div><div class="locked-section-icon">🔒</div></div><div class="prompt-header-visible subheader">2) {Script Title} + {One-Line Premise}</div><div class="prompt-header-visible subheader">3) Introduction (Hook + Setup)</div><div class="locked-section"><div class="locked-section-bg"><div class="locked-section-lines"><div class="locked-line" style="width: 85%;"></div><div class="locked-line" style="width: 78%;"></div><div class="locked-line" style="width: 92%;"></div><div class="locked-line" style="width: 75%;"></div><div class="locked-line" style="width: 88%;"></div></div></div><div class="locked-section-icon">🔒</div></div><div class="prompt-header-visible subheader">4) Body (Story Development + Key Points)</div><div class="locked-section"><div class="locked-section-bg"><div class="locked-section-lines"><div class="locked-line" style="width: 85%;"></div><div class="locked-line" style="width: 78%;"></div><div class="locked-line" style="width: 92%;"></div><div class="locked-line" style="width: 75%;"></div><div class="locked-line" style="width: 88%;"></div><div class="locked-line" style="width: 72%;"></div><div class="locked-line" style="width: 80%;"></div></div></div><div class="locked-section-icon">🔒</div></div><div class="prompt-header-visible subheader">5) Conclusion (Payoff + Recap + CTA)</div><div class="locked-section"><div class="locked-section-bg"><div class="locked-section-lines"><div class="locked-line" style="width: 85%;"></div><div class="locked-line" style="width: 78%;"></div><div class="locked-line" style="width: 92%;"></div><div class="locked-line" style="width: 75%;"></div></div></div><div class="locked-section-icon">🔒</div></div><div class="prompt-header-visible subheader">6) {Editing Notes}</div><div class="locked-section"><div class="locked-section-bg"><div class="locked-section-lines"><div class="locked-line" style="width: 85%;"></div><div class="locked-line" style="width: 78%;"></div></div></div><div class="locked-section-icon">🔒</div></div><div class="prompt-header-visible">QUALITY CHECKS</div><div class="locked-section"><div class="locked-section-bg"><div class="locked-section-lines"><div class="locked-line" style="width: 85%;"></div><div class="locked-line" style="width: 78%;"></div><div class="locked-line" style="width: 92%;"></div><div class="locked-line" style="width: 75%;"></div><div class="locked-line" style="width: 88%;"></div><div class="locked-line" style="width: 72%;"></div></div></div><div class="locked-section-icon">🔒</div></div>            </div>
            <!-- Unlocked: Full content (hidden by default) -->
            <div class="prompt-content-full" id="premium-prompt-content" style="display: none;">
                ## OBJECTIVE
Create a ready-to-film narrative video script about **[TOPIC]** that holds attention fast, teaches clearly, and drives meaningful viewer participation. The script must match **[BRAND_VOICE]**, communicate **[KEY_MESSAGES]**, and end with **[CALL_TO_ACTION]**.

## PERSONA
You are a senior video scriptwriter and story producer who blends audience psychology with practical on-screen direction. You write in a clean, performance-friendly style that’s easy for a presenter (or voiceover) to deliver and easy for an editor to assemble.

## CONSTRAINTS
- Write for the **primary user segment**: **[TARGET_AUDIENCE]** (assume their typical knowledge level unless specified).
- Use a clear story arc: setup → development → payoff.
- Hook the viewer quickly (first ~5–8 seconds).
- Keep language consistent with **[BRAND_VOICE]**; avoid tone drift.
- Weave in interaction prompts naturally (not spammy).
- Include in-line production cues for **[VISUAL_AND_AUDIO_ELEMENTS]**.
- Stay focused on the topic; do not add unrelated subtopics or long tangents.

### What This Is NOT
- Not a full marketing campaign plan, media buying strategy, or SEO brief.
- Not a shot list with exact camera lenses or a full edit decision list (unless provided in inputs).
- Not a research paper with citations; keep it audience-friendly and watchable.

## PROCESS
1. **Pre-analysis (mandatory):** Restate your understanding of the assignment in 3–6 bullets, including the intended viewer, the core promise of the video, and the desired action at the end.
2. **Message mapping:** Turn **[KEY_MESSAGES]** into a simple throughline: problem → insight → solution/next step.
3. **Hook mechanism:** Create an attention disruptor that fits the brand (e.g., counterintuitive statement, high-stakes question, quick scenario).
4. **Build the narrative:**
   - Setup: establish relevance and stakes for the viewer.
   - Development: deliver the key points using mini-stories, concrete examples, or a short case vignette.
   - Payoff: recap, reframe benefits, and deliver **[CALL_TO_ACTION]** with clarity.
5. **Production cues:** Add visual/audio notes at the moments they increase comprehension or emotion (graphics, b-roll, on-screen text, music shifts, SFX).
6. **Engagement beats:** Add 3–6 moments where the viewer is prompted to comment, choose an option, or reflect (spread across the script).
7. **Edge-case handling:** If any inputs are missing or vague, make the smallest reasonable assumptions, label them clearly, and provide 2–3 options the user can pick from.
8. **Final polish:** Ensure smooth pacing, simple phrasing for spoken delivery, and consistent brand voice.

## INPUTS
- **Topic:** [TOPIC]  
- **Primary user segment (viewer):** [TARGET_AUDIENCE]  
- **Brand voice / style:** [BRAND_VOICE]  
- **Key messages to communicate:** [KEY_MESSAGES]  
- **Visual + audio elements to use:** [VISUAL_AND_AUDIO_ELEMENTS]  
- **Call to action:** [CALL_TO_ACTION]  
- **Platform/channel (optional):** [PLATFORM]  
- **Desired length (optional):** [TIMEFRAME]  

## OUTPUT SPECIFICATION
Deliver a single script document with these sections and placeholders:

### 1) {Pre-Analysis Summary}
- Bullets confirming understanding and any assumptions.

### 2) {Script Title} + {One-Line Premise}

### 3) Introduction (Hook + Setup)
- **VO/Host:** {Spoken Lines}
- **On-screen text:** {Text Overlay}
- **Visuals:** {Visual Direction}
- **Audio:** {Music/SFX Notes}
- **Engagement prompt:** {Question or Prompt}

### 4) Body (Story Development + Key Points)
Break into 2–5 subsections:
- **Section label:** {Section Name}
- **VO/Host:** {Spoken Lines}
- **Visuals:** {Visual Direction}
- **Audio:** {Music/SFX Notes}
- **Example/Anecdote:** {Mini-Story or Scenario}
- **Engagement prompt:** {Question or Prompt}

### 5) Conclusion (Payoff + Recap + CTA)
- **VO/Host:** {Spoken Lines}
- **Visuals:** {Visual Direction}
- **Audio:** {Music/SFX Notes}
- **CTA:** {Call To Action Lines}

### 6) {Editing Notes}
- 5–10 bullets for pacing, transitions, and where to place graphics/b-roll.

## QUALITY CHECKS
Before finalizing, verify:
- The hook lands within ~5–8 seconds and matches **[BRAND_VOICE]**.
- Every item in **[KEY_MESSAGES]** is clearly expressed (no missing points).
- Engagement prompts are spaced out and feel natural for **[TARGET_AUDIENCE]**.
- Visual/audio cues are specific enough to execute using **[VISUAL_AND_AUDIO_ELEMENTS]**.
- The ending CTA is unambiguous and aligned with the story’s payoff.            </div>
        </div>


    </div>

    <!-- CTA Row - Full width buttons -->
    <div class="prompt-cta-row">
        <button class="prompt-cta-btn prompt-cta-copy flowpast-copy-prompt-btn" onclick="handlePromptCopy()">
            <svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" fill="currentColor" viewBox="0 0 16 16">
                <path d="M4 1.5H3a2 2 0 0 0-2 2V14a2 2 0 0 0 2 2h10a2 2 0 0 0 2-2V3.5a2 2 0 0 0-2-2h-1v1h1a1 1 0 0 1 1 1V14a1 1 0 0 1-1 1H3a1 1 0 0 1-1-1V3.5a1 1 0 0 1 1-1h1v-1z" />
                <path d="M9.5 1a.5.5 0 0 1 .5.5v1a.5.5 0 0 1-.5.5h-3a.5.5 0 0 1-.5-.5v-1a.5.5 0 0 1 .5-.5h3zm-3-1A1.5 1.5 0 0 0 5 1.5v1A1.5 1.5 0 0 0 6.5 4h3A1.5 1.5 0 0 0 11 2.5v-1A1.5 1.5 0 0 0 9.5 0h-3z" />
            </svg>
            <span class="cta-copy-text">Copy Full Prompt</span>
        </button>
    </div>
</div>

<style>
    /* Gated prompt states */
    .prompt-gated-wrapper {
        position: relative;
    }

    /* When unlocked - show full content, hide gated */
    body.flowpast-unlocked .prompt-gated-wrapper .prompt-gated-content {
        display: none;
    }

    body.flowpast-unlocked .prompt-gated-wrapper .prompt-content-full {
        display: block !important;
    }

    /* Show/hide elements based on unlock state */
    body.flowpast-unlocked .btn-when-unlocked {
        display: inline-flex !important;
    }

    .prompt-viewer-wrapper {
        scroll-margin-top: 250px;
    }

    /* ========================================
   PROMPT VIEWER - MAIN WRAPPER
   ======================================== */
    .prompt-viewer-wrapper {
        margin: 30px 0;
        display: flex;
        flex-direction: column;
        gap: 20px;
    }

    /* ========================================
   PROMPT BOX CONTAINER
   ======================================== */
    .prompt-comparison-row {
        border-radius: 12px;
        overflow: hidden;
        border: 1px solid #e0e0e0;
        background: #fff;
    }

    /* ========================================
   HEADER WITH BUTTONS
   ======================================== */
    .prompt-row-header {
        display: flex;
        align-items: center;
        gap: 10px;
        padding: 14px 20px;
        color: #fff !important;
        background: #141414;
        border-bottom: 1px solid #e0e0e0;
        flex-wrap: wrap;
    }

    .prompt-row-icon {
        font-size: 20px;
    }

    .prompt-row-title {
        font-weight: 600;
        font-size: 22px;
        color: #fff !important;
        text-decoration: underline
    }

    .prompt-header-buttons {
        margin-left: auto;
        display: flex;
        gap: 10px;
        flex-wrap: wrap;
    }

    /* Header buttons */
    .prompt-header-btn {
        display: inline-flex;
        align-items: center;
        gap: 8px;
        padding: 10px 20px;
        border-radius: 6px;
        font-size: 14px;
        font-weight: 600;
        cursor: pointer;
        transition: all 0.2s;
        text-decoration: none;
        border: none;
    }

    .prompt-header-copy {
        background: #3a3a3a;
        color: #fff;
    }

    .prompt-header-copy:hover {
        background: #2a2a2a;
    }

    .prompt-header-copy.copied {
        background: #2e7d32;
    }

    .prompt-header-copy-green {
        background: #04AA6D !important;
        color: #fff !important;
    }

    .prompt-header-copy-green:hover {
        background: #039860 !important;
    }

    .prompt-header-copy-green.copied {
        background: #2e7d32 !important;
    }

    .prompt-header-access {
        background: rgb(5, 152, 98);
        color: #fff !important;
    }

    .prompt-header-access:hover {
        background: rgb(4, 130, 83);
        transform: translateY(-1px);
    }

    /* ========================================
   PROMPT CONTENT - FULL (NO SCROLL)
   ======================================== */
    .prompt-box {
        background: #ffffff;
    }

    .prompt-content-full {
        padding: 24px;
        margin: 0;
        color: #202124;
        background: #ffffff;
        font-family: 'Fira Code', 'Monaco', 'Consolas', monospace;
        font-size: 13px;
        line-height: 1.7;
        white-space: pre-wrap;
        word-wrap: break-word;
        /* No scroll - show full content */
        max-height: none;
        overflow: visible;
    }

    /* Highlighted variable in prompt */
    .prompt-variable {
        background: #fff3cd;
        color: #1967d2;
        font-weight: 700;
        padding: 2px 4px;
        border-radius: 3px;
        border: 1px solid #ffc107;
    }

    .prompt-variable-filled {
        background: #d4edda;
        color: #155724;
        font-weight: 700;
        padding: 2px 4px;
        border-radius: 3px;
        border: 1px solid #28a745;
    }

    /* ========================================
   GATED CONTENT (NO ACCESS)
   ======================================== */
    .prompt-gated-content {
        padding: 24px;
        background: #ffffff;
        font-family: 'Fira Code', 'Monaco', 'Consolas', monospace;
        font-size: 13px;
        line-height: 1.8;
        max-height: none;
        overflow: visible;
        user-select: none;
        -webkit-user-select: none;
        -moz-user-select: none;
        -ms-user-select: none;
        cursor: default;
    }

    /* ## headers - larger, black */
    .prompt-header-visible {
        color: #202124;
        font-weight: 600;
        margin: 5px 0 0px 0;
        font-size: 20px;
        user-select: none;
        -webkit-user-select: none;
        -moz-user-select: none;
        -ms-user-select: none;
        text-decoration: underline;
        text-underline-offset: 4px;
    }

    /* ### headers - smaller, black */
    .prompt-header-visible.subheader {
        color: #202124;
        font-weight: 600;
        margin: 5px 0;
        font-size: 18px;
    }

    .prompt-header-visible:first-child {
        margin-top: 0;
    }

    /* ========================================
   LOCKED SECTION BLOCK
   ======================================== */
    .locked-section {
        position: relative;
        margin: 4px 0 8px 0;
        border-radius: 6px;
        overflow: hidden;
        background: linear-gradient(110deg, #e2e8f0 8%, #f1f5f9 18%, #e2e8f0 33%);
        user-select: none;
        -webkit-user-select: none;
        -moz-user-select: none;
        -ms-user-select: none;
    }

    .locked-section-bg {
        position: relative;
    }

    .locked-section-lines {
        padding: 8px 12px;
        position: relative;
    }

    .locked-line {
        height: 6px;
        background: rgba(255, 255, 255, 0.6);
        border-radius: 3px;
        margin-bottom: 4px;
        margin-left: 12px;
    }

    .locked-line:last-child {
        margin-bottom: 0;
    }

    .locked-section-icon {
        position: absolute;
        top: 50%;
        left: 50%;
        transform: translate(-50%, -50%);
        z-index: 10;
        font-size: 24px;
        filter: drop-shadow(0 1px 3px rgba(0, 0, 0, 0.1));
    }

    /* Subheader locked sections - slightly indented */
    /*  .prompt-header-visible.subheader+.locked-section {
        margin-left: 16px;
    } */

    /* ========================================
   COMPATIBILITY BADGES
   ======================================== */
    .prompt-compatibility {
        display: flex;
        flex-wrap: wrap;
        align-items: center;
        gap: 8px;
        padding: 12px 20px;
        background: #f8f9fa;
        border-top: 1px solid #e0e0e0;
    }

    .compat-label {
        font-size: 13px;
        color: #5f6368;
        font-weight: 500;
    }

    .compat-badge {
        padding: 4px 10px;
        background: #e8f0fe;
        color: #1967d2;
        border-radius: 4px;
        font-size: 12px;
        font-weight: 500;
    }

    /* ========================================
   CTA ROW - FULL WIDTH BUTTONS
   ======================================== */
    .prompt-cta-row {
        display: flex;
        gap: 16px;
        flex-wrap: wrap;
    }

    .prompt-cta-btn {
        flex: 1;
        min-width: 200px;
        display: inline-flex;
        align-items: center;
        justify-content: center;
        gap: 10px;
        padding: 16px 24px;
        border-radius: 8px;
        font-size: 16px;
        font-weight: 600;
        cursor: pointer;
        transition: all 0.2s;
        text-decoration: none;
        border: none;
    }

    .prompt-cta-copy {
        background: #3a3a3a;
        color: #fff;
    }

    .prompt-cta-copy:hover {
        background: #2a2a2a;
        transform: translateY(-2px);
        box-shadow: 0 4px 12px rgba(0, 0, 0, 0.15);
    }

    .prompt-cta-copy.copied {
        background: #2e7d32;
    }

    .prompt-cta-reset {
        background: #3a3a3a;
        color: #fff;
    }

    .prompt-cta-reset:hover {
        background: #2a2a2a;
        transform: translateY(-2px);
        box-shadow: 0 4px 12px rgba(0, 0, 0, 0.15);
    }

    .prompt-cta-access {
        background: rgb(5, 152, 98);
        color: #fff !important;
    }

    .prompt-cta-access:hover {
        background: rgb(4, 130, 83);
        transform: translateY(-2px);
        box-shadow: 0 4px 12px rgba(5, 152, 98, 0.3);
    }

    /* ========================================
    CUSTOMIZE YOUR PROMPT SECTION
    ======================================== */
    .prompt-customize-section {
        padding: 24px;
        border-bottom: 1px solid #e0e0e0;
        background: #fafbfc;
    }

    .customize-title {
        margin: 0 0 8px 0;
        font-size: 18px;
        font-weight: 700;
        color: #202124;
    }

    .customize-subtitle {
        margin: 0 0 20px 0;
        font-size: 14px;
        color: #5f6368;
    }

    .customize-table {
        width: 100%;
        border-collapse: collapse;
        margin-bottom: 20px;
    }

    .customize-table th {
        text-align: left;
        padding: 12px;
        background: #f1f3f4;
        border: 1px solid #e0e0e0;
        font-size: 13px;
        font-weight: 600;
        color: #202124;
    }

    .customize-table td {
        padding: 12px;
        border: 1px solid #e0e0e0;
        vertical-align: top;
    }

    .customize-table .var-name {
        width: 25%;
        background: #f8f9fa;
    }

    .customize-table .var-name code {
        background: #fff3cd;
        color: #1967d2;
        border: 1px solid #ffc107;
        padding: 4px 8px;
        border-radius: 4px;
        font-size: 12px;
        word-break: break-all;
        font-weight: 600;
    }

    .customize-table .var-desc {
        width: 35%;
        font-size: 13px;
        color: #5f6368;
        line-height: 1.5;
    }

    .customize-table .var-example {
        margin-top: 8px;
        padding: 8px 10px;
        background: #f8f9fa;
        border-left: 3px solid #dadce0;
        font-size: 12px;
        color: #5f6368;
        font-style: italic;
        border-radius: 0 4px 4px 0;
    }

    .customize-table .var-input {
        width: 40%;
    }

    .customize-input {
        width: 100%;
        padding: 10px 12px;
        border: 1px solid #dadce0;
        border-radius: 6px;
        font-size: 13px;
        font-family: inherit;
        resize: vertical;
        transition: border-color 0.2s, box-shadow 0.2s;
    }

    .customize-input:focus {
        outline: none;
        border-color: rgb(5, 152, 98);
        box-shadow: 0 0 0 3px rgba(5, 152, 98, 0.1);
    }

    .customize-input::placeholder {
        color: #9aa0a6;
        font-style: italic;
    }

    .copy-customized-btn {
        display: flex;
        align-items: center;
        justify-content: center;
        gap: 10px;
        width: 100%;
        padding: 16px 24px;
        background: rgb(5, 152, 98);
        color: #fff;
        border: none;
        border-radius: 8px;
        font-size: 16px;
        font-weight: 600;
        cursor: pointer;
        transition: all 0.2s;
    }

    .copy-customized-btn:hover {
        background: rgb(4, 130, 83);
        transform: translateY(-2px);
        box-shadow: 0 4px 12px rgba(5, 152, 98, 0.3);
    }

    .copy-customized-btn.copied {
        background: #2e7d32;
    }

    /* ========================================
    FULL PROMPT CODE HEADER
    ======================================== */
    .prompt-code-header {
        display: flex;
        align-items: center;
        justify-content: space-between;
        padding: 10px 20px;
        color: #fff !important;
        background: #141414;
        border-bottom: 1px solid #e0e0e0;
    }

    .prompt-code-title {
        font-size: 22px;
        font-weight: 600;
        text-decoration: underline;

    }

    .prompt-code-buttons {
        display: flex;
        gap: 8px;
    }

    .prompt-code-buttons .prompt-header-btn {
        padding: 8px 14px;
        font-size: 13px;
        background: #ffffff;
        color: #202124;
        border: 1px solid #dadce0;
    }

    .prompt-code-buttons .prompt-header-access {
        background: rgb(5, 152, 98);
        color: #fff !important;
        border-color: rgb(5, 152, 98);
    }

    .prompt-code-buttons .prompt-header-btn.prompt-header-access:hover {
        background: rgb(4, 130, 83) !important;
        border-color: rgb(4, 130, 83);
        color: #fff !important;
    }

    .prompt-code-buttons .prompt-header-btn:hover {
        background: #f1f3f4;
    }

    .prompt-code-buttons .prompt-header-copy.copied {
        background: #d4edda;
        color: #155724;
        border-color: #28a745;
    }

    .prompt-header-reset {
        background: #ffffff;
        color: #202124;
    }

    /* ========================================
   RESPONSIVE
   ======================================== */
    @media (max-width: 768px) {
        .prompt-row-header {
            flex-direction: column;
            align-items: flex-start;
            gap: 12px;
        }

        .prompt-header-buttons {
            margin-left: 0;
            width: 100%;
        }

        .prompt-header-btn {
            flex: 1;
            justify-content: center;
        }

        .prompt-cta-row {
            flex-direction: column;
        }

        .prompt-cta-btn {
            width: 100%;
        }

        /* Customize table responsive */
        .customize-table,
        .customize-table thead,
        .customize-table tbody,
        .customize-table tr,
        .customize-table th,
        .customize-table td {
            display: block;
        }

        .customize-table thead {
            display: none;
        }

        .customize-table tr {
            margin-bottom: 16px;
            border: 1px solid #e0e0e0;
            border-radius: 8px;
            overflow: hidden;
        }

        .customize-table td {
            width: 100% !important;
            border: none;
            border-bottom: 1px solid #e0e0e0;
        }

        .customize-table td:last-child {
            border-bottom: none;
        }

        .customize-table .var-name {
            background: #f1f3f4;
            font-weight: 600;
        }

        .prompt-code-header {
            flex-direction: column;
            gap: 12px;
            align-items: flex-start;
        }

        .prompt-code-buttons {
            width: 100%;
        }

        .prompt-code-buttons .prompt-header-btn {
            flex: 1;
            justify-content: center;
        }
    }
</style>

<script>
    function handlePromptCopy() {
        // Check if unlocked via cookie
        if (typeof window.flowpastIsUnlocked === 'function' && !window.flowpastIsUnlocked()) {
            // Show email popup
            if (typeof window.flowpastShowEmailPopup === 'function') {
                window.flowpastShowEmailPopup('prompt');
            }
            return;
        }

        // Copy the customized prompt (with filled variables)
        const customizedPrompt = getCustomizedPrompt();
        const copyButtons = document.querySelectorAll('.prompt-header-copy, .prompt-header-copy-green, .prompt-cta-copy, .copy-customized-btn');

        navigator.clipboard.writeText(customizedPrompt).then(() => {
            copyButtons.forEach(btn => {
                btn.classList.add('copied');
                const textSpan = btn.querySelector('span');
                if (textSpan) textSpan.textContent = 'Copied!';
            });

            setTimeout(() => {
                copyButtons.forEach(btn => {
                    btn.classList.remove('copied');
                    const textSpan = btn.querySelector('span');
                    if (textSpan) textSpan.textContent = 'Copy Full Prompt';
                });
            }, 2000);
        }).catch(err => {
            console.error('Failed to copy:', err);
        });
    }

    // Store original prompt for customization
    const originalPrompt = "## OBJECTIVE\r\nCreate a ready-to-film narrative video script about **[TOPIC]** that holds attention fast, teaches clearly, and drives meaningful viewer participation. The script must match **[BRAND_VOICE]**, communicate **[KEY_MESSAGES]**, and end with **[CALL_TO_ACTION]**.\r\n\r\n## PERSONA\r\nYou are a senior video scriptwriter and story producer who blends audience psychology with practical on-screen direction. You write in a clean, performance-friendly style that\u2019s easy for a presenter (or voiceover) to deliver and easy for an editor to assemble.\r\n\r\n## CONSTRAINTS\r\n- Write for the **primary user segment**: **[TARGET_AUDIENCE]** (assume their typical knowledge level unless specified).\r\n- Use a clear story arc: setup \u2192 development \u2192 payoff.\r\n- Hook the viewer quickly (first ~5\u20138 seconds).\r\n- Keep language consistent with **[BRAND_VOICE]**; avoid tone drift.\r\n- Weave in interaction prompts naturally (not spammy).\r\n- Include in-line production cues for **[VISUAL_AND_AUDIO_ELEMENTS]**.\r\n- Stay focused on the topic; do not add unrelated subtopics or long tangents.\r\n\r\n### What This Is NOT\r\n- Not a full marketing campaign plan, media buying strategy, or SEO brief.\r\n- Not a shot list with exact camera lenses or a full edit decision list (unless provided in inputs).\r\n- Not a research paper with citations; keep it audience-friendly and watchable.\r\n\r\n## PROCESS\r\n1. **Pre-analysis (mandatory):** Restate your understanding of the assignment in 3\u20136 bullets, including the intended viewer, the core promise of the video, and the desired action at the end.\r\n2. **Message mapping:** Turn **[KEY_MESSAGES]** into a simple throughline: problem \u2192 insight \u2192 solution\/next step.\r\n3. **Hook mechanism:** Create an attention disruptor that fits the brand (e.g., counterintuitive statement, high-stakes question, quick scenario).\r\n4. **Build the narrative:**\r\n   - Setup: establish relevance and stakes for the viewer.\r\n   - Development: deliver the key points using mini-stories, concrete examples, or a short case vignette.\r\n   - Payoff: recap, reframe benefits, and deliver **[CALL_TO_ACTION]** with clarity.\r\n5. **Production cues:** Add visual\/audio notes at the moments they increase comprehension or emotion (graphics, b-roll, on-screen text, music shifts, SFX).\r\n6. **Engagement beats:** Add 3\u20136 moments where the viewer is prompted to comment, choose an option, or reflect (spread across the script).\r\n7. **Edge-case handling:** If any inputs are missing or vague, make the smallest reasonable assumptions, label them clearly, and provide 2\u20133 options the user can pick from.\r\n8. **Final polish:** Ensure smooth pacing, simple phrasing for spoken delivery, and consistent brand voice.\r\n\r\n## INPUTS\r\n- **Topic:** [TOPIC]  \r\n- **Primary user segment (viewer):** [TARGET_AUDIENCE]  \r\n- **Brand voice \/ style:** [BRAND_VOICE]  \r\n- **Key messages to communicate:** [KEY_MESSAGES]  \r\n- **Visual + audio elements to use:** [VISUAL_AND_AUDIO_ELEMENTS]  \r\n- **Call to action:** [CALL_TO_ACTION]  \r\n- **Platform\/channel (optional):** [PLATFORM]  \r\n- **Desired length (optional):** [TIMEFRAME]  \r\n\r\n## OUTPUT SPECIFICATION\r\nDeliver a single script document with these sections and placeholders:\r\n\r\n### 1) {Pre-Analysis Summary}\r\n- Bullets confirming understanding and any assumptions.\r\n\r\n### 2) {Script Title} + {One-Line Premise}\r\n\r\n### 3) Introduction (Hook + Setup)\r\n- **VO\/Host:** {Spoken Lines}\r\n- **On-screen text:** {Text Overlay}\r\n- **Visuals:** {Visual Direction}\r\n- **Audio:** {Music\/SFX Notes}\r\n- **Engagement prompt:** {Question or Prompt}\r\n\r\n### 4) Body (Story Development + Key Points)\r\nBreak into 2\u20135 subsections:\r\n- **Section label:** {Section Name}\r\n- **VO\/Host:** {Spoken Lines}\r\n- **Visuals:** {Visual Direction}\r\n- **Audio:** {Music\/SFX Notes}\r\n- **Example\/Anecdote:** {Mini-Story or Scenario}\r\n- **Engagement prompt:** {Question or Prompt}\r\n\r\n### 5) Conclusion (Payoff + Recap + CTA)\r\n- **VO\/Host:** {Spoken Lines}\r\n- **Visuals:** {Visual Direction}\r\n- **Audio:** {Music\/SFX Notes}\r\n- **CTA:** {Call To Action Lines}\r\n\r\n### 6) {Editing Notes}\r\n- 5\u201310 bullets for pacing, transitions, and where to place graphics\/b-roll.\r\n\r\n## QUALITY CHECKS\r\nBefore finalizing, verify:\r\n- The hook lands within ~5\u20138 seconds and matches **[BRAND_VOICE]**.\r\n- Every item in **[KEY_MESSAGES]** is clearly expressed (no missing points).\r\n- Engagement prompts are spaced out and feel natural for **[TARGET_AUDIENCE]**.\r\n- Visual\/audio cues are specific enough to execute using **[VISUAL_AND_AUDIO_ELEMENTS]**.\r\n- The ending CTA is unambiguous and aligned with the story\u2019s payoff.";
    const variables = ["[TOPIC]","[BRAND_VOICE]","[KEY_MESSAGES]","[CALL_TO_ACTION]","[TARGET_AUDIENCE]","[VISUAL_AND_AUDIO_ELEMENTS]","[PLATFORM]","[TIMEFRAME]"];
    // Initial render with highlighted variables
    document.addEventListener('DOMContentLoaded', function() {
        renderPromptWithHighlights();
    });

    // Live update prompt as user types
    document.querySelectorAll('.customize-input').forEach(input => {
        input.addEventListener('input', renderPromptWithHighlights);
    });

    function renderPromptWithHighlights() {
        const promptContent = document.getElementById('premium-prompt-content');
        if (!promptContent) return;

        let updatedPrompt = originalPrompt;
        let filledVariables = {};

        // Collect filled values
        document.querySelectorAll('.customize-input').forEach(input => {
            const placeholder = input.dataset.placeholder;
            const value = input.value.trim();

            if (value) {
                filledVariables[placeholder] = value;
            }
        });

        // Replace filled variables and highlight remaining
        let htmlContent = escapeHtml(updatedPrompt);

        variables.forEach(placeholder => {
            const escapedPlaceholder = escapeHtml(placeholder);
            const regex = new RegExp(escapeRegex(escapedPlaceholder), 'g');

            if (filledVariables[placeholder]) {
                // Show filled value with green highlight
                htmlContent = htmlContent.replace(regex,
                    '<span class="prompt-variable-filled">' + escapeHtml(filledVariables[placeholder]) + '</span>'
                );
            } else {
                // Show original placeholder with yellow highlight
                htmlContent = htmlContent.replace(regex,
                    '<span class="prompt-variable">' + escapedPlaceholder + '</span>'
                );
            }
        });

        promptContent.innerHTML = htmlContent;
    }

    function escapeRegex(string) {
        return string.replace(/[.*+?^${}()|[\]\\]/g, '\\$&');
    }

    function escapeHtml(text) {
        const div = document.createElement('div');
        div.textContent = text;
        return div.innerHTML;
    }

    function resetPrompt() {
        // Clear all input fields
        document.querySelectorAll('.customize-input').forEach(input => {
            input.value = '';
        });

        // Re-render with original placeholders highlighted
        renderPromptWithHighlights();

        // Visual feedback
        const resetBtns = document.querySelectorAll('.prompt-header-reset, .prompt-cta-reset');
        resetBtns.forEach(btn => {
            const originalText = btn.querySelector('span').textContent;
            btn.querySelector('span').textContent = 'Reset!';
            setTimeout(() => {
                btn.querySelector('span').textContent = originalText;
            }, 1000);
        });
    }


    function getCustomizedPrompt() {
        let updatedPrompt = originalPrompt;

        document.querySelectorAll('.customize-input').forEach(input => {
            const placeholder = input.dataset.placeholder;
            const value = input.value.trim();

            if (value) {
                const regex = new RegExp(escapeRegex(placeholder), 'g');
                updatedPrompt = updatedPrompt.replace(regex, value);
            }
        });

        return updatedPrompt;
    }
</script>

</div>

<div class="pro-tips-section">

<h2 class="wp-block-heading">Pro Tips for Better AI Prompt Results</h2>



<ul class="wp-block-list">

<li><strong>Define your viewer like you’re buying ads.</strong> “Small business owners” is too broad; you’ll get generic pacing and examples. Try something like: “first-time course creators with an existing email list of 1–5k who struggle with video scripting” so the hook and objections land correctly.</li>


<li><strong>Make your key messages executable, not inspirational.</strong> Instead of “show them our product is easy,” feed in 3–5 messages that can be proven on screen. Follow-up prompt you can use after the first draft: “Rewrite the development section so each key message includes one concrete example and one ‘common mistake’ callout.”</li>


<li><strong>Give your brand voice guardrails.</strong> Add do’s and don’ts: “short sentences, light humor, no hype, avoid jargon, one rhetorical question max.” Honestly, this one change prevents tone drift more than anything else because the script has to “behave” the whole way through.</li>


<li><strong>Iterate the hook separately.</strong> After you get the full script, ask: “Generate 7 alternative hooks using (1) counterintuitive claim, (2) high-stakes question, (3) quick scenario, and (4) ‘myth vs reality’, all in the same brand voice.” Then paste your favorite hook back in and request a tightened first 20 seconds.</li>


<li><strong>Use production cues to reduce editing time.</strong> Provide your <em>VISUAL_AND_AUDIO_ELEMENTS</em> as building blocks (b-roll types, on-screen text style, music vibe, sound effects). If you want more precision, follow with: “Add one on-screen text line per section and mark it as [TEXT] so it’s easy to pull into captions.”</li>

</ul>

</div>

<div class="related-prompts-section">

<h2 class="wp-block-heading">Related Prompts</h2>



<p>Once your script has a clean story arc, these prompts help you tighten brand consistency and supporting assets around the video.</p>



<p>If you also need your on-screen phrasing to match the rest of your brand (taglines, headline style, “what we stand for” language), pair this with <a href="https://flowpast.com/prompts/create-brand-taglines-with-this-ai-prompt/">Create Brand Taglines with this AI Prompt</a>. It’s especially useful when your script’s hook needs a repeatable line you can reuse in thumbnails, intros, and paid cutdowns.</p>



<p>When you’re building a consistent presence across channels after the video goes live, <a href="https://flowpast.com/prompts/create-an-off-page-brand-consistency-playbook-ai-prompt/">Create an Off-Page Brand Consistency Playbook AI Prompt</a> helps you keep tone and messaging aligned in places you don’t fully control (partners, listings, profiles, third-party pages). That matters because viewers often “check you out” elsewhere after watching.</p>



<p>For teams doing founder-led content, <a href="https://flowpast.com/prompts/create-a-personal-brand-playbook-with-this-ai-prompt/">Create a Personal Brand Playbook with this AI Prompt</a> pairs well with a story-driven script because it clarifies what you sound like, what you believe, and what you won’t say. Use it when multiple videos are filmed over time and you want the personality to feel stable, not random.</p>


<br>


<p>Quick reference:</p>



<ul class="wp-block-list">

<li><a href="https://flowpast.com/prompts/create-brand-taglines-with-this-ai-prompt/">Create Brand Taglines with this AI Prompt</a>: Punchy lines for hooks and thumbnails.</li>


<li><a href="https://flowpast.com/prompts/create-an-off-page-brand-consistency-playbook-ai-prompt/">Create an Off-Page Brand Consistency Playbook AI Prompt</a>: Keep messaging consistent beyond your channels.</li>


<li><a href="https://flowpast.com/prompts/create-a-personal-brand-playbook-with-this-ai-prompt/">Create a Personal Brand Playbook with this AI Prompt</a>: Define voice and boundaries for founder content.</li>

<li><a href="https://flowpast.com/prompts/create-a-brand-positioning-assessment-ai-prompt/">Create a Brand Positioning Assessment AI Prompt</a>: Clarify positioning before you script.</li>

<li><a href="https://flowpast.com/prompts/create-a-product-size-guide-with-this-ai-prompt/">Create a Product Size Guide with this AI Prompt</a>: Useful if your video explains fit/selection.</li>
<!-- /wp:post-content -->
</div>

<div class="faq-section">
<!-- wp:heading {"level":2} -->
<h2 class="wp-block-heading">Common Questions</h2>
<!-- /wp:heading -->

<div class="faq-item">
<span class="question">Which roles benefit most from this story-driven video script AI prompt?</span>
<!-- wp:paragraph -->
<p class="answer"><strong>Content Marketing Managers</strong> use this to ship scripts that consistently open strong and teach one clear idea without fluff. <strong>Performance Marketers</strong> rely on it for tighter hooks and clearer mid-video engagement moments that support comments, clicks, or trials. <strong>Founders and Startup CEOs</strong> like it because it preserves their voice while giving them a presenter-friendly structure that’s easy to film. <strong>Creative Strategists</strong> apply it to align messaging, story arc, and production cues so editors and creators aren’t guessing.</p>
<!-- /wp:paragraph -->
</div>

<div class="faq-item">
<span class="question">Which industries get the most value from this story-driven video script AI prompt?</span>
<!-- wp:paragraph -->
<p class="answer"><strong>SaaS companies</strong> use it for product education, feature reveals, and “how it works” videos that still feel like a story, not a walkthrough. <strong>E-commerce brands</strong> get value when they need branded explainers (ingredient philosophy, product use cases, comparisons) with strong retention and a clean CTA to shop or subscribe. <strong>Professional services firms</strong> (agencies, accounting, legal, coaching) use it to turn abstract expertise into relatable mini-stories that build trust quickly. <strong>Creator-led media and education brands</strong> lean on it for repeatable episode structures where the hook, lesson, and payoff stay consistent week to week.</p>
<!-- /wp:paragraph -->
</div>

<div class="faq-item">
<span class="question">Why do basic AI prompts for writing a video script produce weak results?</span>
<!-- wp:paragraph -->
<p class="answer">A typical prompt like &#8220;<em>Write me a video script about my topic</em>&#8221; fails because it: lacks a defined story arc (setup → development → payoff), provides no message mapping from key points into a single throughline, ignores brand voice constraints so the tone drifts, produces generic “tips” instead of a performance-friendly script, and misses production cues that make the script easier to film and edit. You often get a slow intro, scattered points, and an ending CTA that feels bolted on. This prompt forces clarity up front, then builds the narrative around it.</p>
<!-- /wp:paragraph -->
</div>

<div class="faq-item">
<span class="question">Can I customize this story-driven video script prompt for my specific situation?</span>
<!-- wp:paragraph -->
<p class="answer">Yes. The best leverage comes from tightening the inputs for TOPIC, TARGET_AUDIENCE, BRAND_VOICE, KEY_MESSAGES, CALL_TO_ACTION, and VISUAL_AND_AUDIO_ELEMENTS so the script reads like it came from your team. If your first draft is close but not quite, add a follow-up like: “Keep the same structure, but make the hook more counterintuitive, cut 20% of the words, and add one real-world example for each key message.” You can also specify length (“60 seconds” or “6–8 minutes”) and the format (“talking head with b-roll” or “voiceover montage”) inside your topic notes.</p>
<!-- /wp:paragraph -->
</div>

<div class="faq-item">
<span class="question">What are the most common mistakes when using this story-driven video script prompt?</span>
<!-- wp:paragraph -->
<p class="answer">The biggest mistake is leaving TARGET_AUDIENCE too vague — instead of “entrepreneurs,” try “B2B consultants selling $3–10k packages who struggle to explain their differentiator in under 60 seconds.” Another common error is stuffing KEY_MESSAGES with slogans; swap “We’re innovative” for “Show the 3-step workflow and the exact before/after result.” People also under-specify BRAND_VOICE (bad: “professional”; good: “calm, direct, minimal hype, short sentences, one light joke max”). Finally, VISUAL_AND_AUDIO_ELEMENTS often get skipped; even a simple list like “screen recordings, simple captions, subtle lo-fi bed, occasional sound hits” makes the output dramatically more filmable.</p>
<!-- /wp:paragraph -->
</div>

<div class="faq-item">
<span class="question">Who should NOT use this story-driven video script prompt?</span>
<!-- wp:paragraph -->
<p class="answer">This prompt isn’t ideal for one-off projects where you will not iterate, because the best results come from tightening inputs and refining the hook after draft one. It’s also not a fit if you need a technical shot list with camera lenses, exact angles, and full edit decision lists; it gives practical cues, not cinema-level breakdowns. And if you haven’t validated your core message or offer yet, you may want to do positioning work first, then script. In that case, start with a positioning tool and come back once your key messages are stable.</p>
<!-- /wp:paragraph -->
</div>

<script type="application/ld+json">
{
  "@context": "https://schema.org",
  "@type": "FAQPage",
  "mainEntity": [
    {
      "@type": "Question",
      "name": "Which roles benefit most from this story-driven video script AI prompt?",
      "acceptedAnswer": {
        "@type": "Answer",
        "text": "Content Marketing Managers use this to ship scripts that consistently open strong and teach one clear idea without fluff. Performance Marketers rely on it for tighter hooks and clearer mid-video engagement moments that support comments, clicks, or trials. Founders and Startup CEOs like it because it preserves their voice while giving them a presenter-friendly structure that’s easy to film. Creative Strategists apply it to align messaging, story arc, and production cues so editors and creators aren’t guessing."
      }
    },
    {
      "@type": "Question",
      "name": "Which industries get the most value from this story-driven video script AI prompt?",
      "acceptedAnswer": {
        "@type": "Answer",
        "text": "SaaS companies use it for product education, feature reveals, and “how it works” videos that still feel like a story, not a walkthrough. E-commerce brands get value when they need branded explainers (ingredient philosophy, product use cases, comparisons) with strong retention and a clean CTA to shop or subscribe. Professional services firms (agencies, accounting, legal, coaching) use it to turn abstract expertise into relatable mini-stories that build trust quickly. Creator-led media and education brands lean on it for repeatable episode structures where the hook, lesson, and payoff stay consistent week to week."
      }
    },
    {
      "@type": "Question",
      "name": "Why do basic AI prompts for writing a video script produce weak results?",
      "acceptedAnswer": {
        "@type": "Answer",
        "text": "A typical prompt like \"Write me a video script about my topic\" fails because it: lacks a defined story arc (setup → development → payoff), provides no message mapping from key points into a single throughline, ignores brand voice constraints so the tone drifts, produces generic “tips” instead of a performance-friendly script, and misses production cues that make the script easier to film and edit. You often get a slow intro, scattered points, and an ending CTA that feels bolted on. This prompt forces clarity up front, then builds the narrative around it."
      }
    },
    {
      "@type": "Question",
      "name": "Can I customize this story-driven video script prompt for my specific situation?",
      "acceptedAnswer": {
        "@type": "Answer",
        "text": "Yes. The best leverage comes from tightening the inputs for TOPIC, TARGET_AUDIENCE, BRAND_VOICE, KEY_MESSAGES, CALL_TO_ACTION, and VISUAL_AND_AUDIO_ELEMENTS so the script reads like it came from your team. If your first draft is close but not quite, add a follow-up like: “Keep the same structure, but make the hook more counterintuitive, cut 20% of the words, and add one real-world example for each key message.” You can also specify length (“60 seconds” or “6–8 minutes”) and the format (“talking head with b-roll” or “voiceover montage”) inside your topic notes."
      }
    },
    {
      "@type": "Question",
      "name": "What are the most common mistakes when using this story-driven video script prompt?",
      "acceptedAnswer": {
        "@type": "Answer",
        "text": "The biggest mistake is leaving TARGET_AUDIENCE too vague — instead of “entrepreneurs,” try “B2B consultants selling $3–10k packages who struggle to explain their differentiator in under 60 seconds.” Another common error is stuffing KEY_MESSAGES with slogans; swap “We’re innovative” for “Show the 3-step workflow and the exact before/after result.” People also under-specify BRAND_VOICE (bad: “professional”; good: “calm, direct, minimal hype, short sentences, one light joke max”). Finally, VISUAL_AND_AUDIO_ELEMENTS often get skipped; even a simple list like “screen recordings, simple captions, subtle lo-fi bed, occasional sound hits” makes the output dramatically more filmable."
      }
    },
    {
      "@type": "Question",
      "name": "Who should NOT use this story-driven video script prompt?",
      "acceptedAnswer": {
        "@type": "Answer",
        "text": "This prompt isn’t ideal for one-off projects where you will not iterate, because the best results come from tightening inputs and refining the hook after draft one. It’s also not a fit if you need a technical shot list with camera lenses, exact angles, and full edit decision lists; it gives practical cues, not cinema-level breakdowns. And if you haven’t validated your core message or offer yet, you may want to do positioning work first, then script. In that case, start with a positioning tool and come back once your key messages are stable."
      }
    }
  ]
}
</script>
</div>

<div class="closing-section">
<!-- wp:paragraph -->
<p>A watchable branded video is rarely about “more ideas.” It’s about a tighter arc, a faster hook, and cleaner direction for filming. Paste this prompt into ChatGPT, fill in your inputs, and get a script you can actually shoot.</p>
<!-- /wp:paragraph -->
</div>]]></content:encoded>
					
		
		
		<media:content url="https://flowpast.s3.eu-north-1.amazonaws.com/featured_blog_images/5000617.webp" medium="image"></media:content>
            	</item>
		<item>
		<title>Generate Video Topic Ideas AI Prompt</title>
		<link>https://flowpast.com/prompts/generate-video-topic-ideas-ai-prompt/</link>
		
		<dc:creator><![CDATA[Lisa Granqvist]]></dc:creator>
		<pubDate>Fri, 23 Jan 2026 02:22:06 +0000</pubDate>
				<category><![CDATA[Prompts]]></category>
		<guid isPermaLink="false">https://flowpast.com/?p=5002387</guid>

					<description><![CDATA[Stuck on what to post next - a proven AI Prompt that delivers scored video topic ideas with titles, segments, and angles. Discover more AI prompts for marketing, sales, and ops.]]></description>
										<content:encoded><![CDATA[<!-- FOCUS_KEYWORD: video topic ideas -->
<div class="hook-introduction">

<p>You know you need to post. You even have a niche. But when it’s time to pick a video topic, your brain goes blank or you default to safe “tips and tricks” ideas that get polite views and almost no comments.</p>



<p>This <strong>video topic ideas</strong> prompt is built for <strong>social media managers</strong> who have to fill a weekly content calendar fast, <strong>YouTube creators</strong> trying to escape the “same 10 topics” loop in their niche, and <strong>marketing leads</strong> who need discussion-driving angles that actually earn engagement. The output is a curated set of topic ideas, each with a punchy title, a clear summary, an ideal recipient segment, and an engagement score from 0–10.</p>

</div>

<div class="what-and-when-section">

<h2 class="wp-block-heading">What Does This AI Prompt Do and When to Use It?</h2>



<table class="solution-results-table three-column" role="presentation" aria-label="What this prompt does, when to use it, and what you get">
 <thead>
    <tr>
      <th scope="col">What This Prompt Does</th>
      <th scope="col">When to Use This Prompt</th>
      <th scope="col">What You&#8217;ll Get</th>
    </tr>
  </thead>
  <tbody>
    <tr>
      <td>
        <ul class="automation-list">
          <li>It restates your request up front (topic, audience, and idea count) so the generation stays anchored to what you actually asked for.</li>
          <li>It runs a lightweight trend and audience scan to surface “why now” angles, misconceptions, controversies, and emerging changes around your subject.</li>
          <li>It produces a varied mix of angles (myth-busting, contrarian takes, case-based topics, ethical implications, and future predictions) rather than a single style of idea.</li>
          <li>It filters or rewrites anything that reads generic, repetitive, or too broad to spark conversation in comments.</li>
          <li>It assigns an engagement score from 0–10 using a consistent rationale tied to novelty, relevance, emotional pull, debate potential, and clarity.</li>
       </ul>
      </td>
      <td>
        <ul class="results-list">
          <li>You have to plan next week’s posts and you cannot afford another brainstorming session that ends with “maybe we do a Q&amp;A?”</li>
          <li>Your channel is plateauing because your topics are correct but predictable, so viewers have no reason to react or share.</li>
          <li>You’re entering a new sub-niche and need to find angles that signal expertise without sounding like a generic explainer.</li>
          <li>A competitor’s content is getting more comments, and you need stronger “discussion hooks” without becoming clickbaity.</li>
          <li>You’re expanding output (more shorts, more platforms) and need a reliable way to generate fresh concepts on demand.</li>
        </ul>
      </td>
       <td>
         <ul class="deliverables-list">
           <li>A curated set of exactly the requested number of video topic ideas focused on one subject.</li>
           <li>For every idea: 1 punchy title and 1 plain-language summary that explains the angle.</li>
           <li>A defined “ideal recipient segment” per idea (for example, beginners, skeptical buyers, or experienced practitioners).</li>
           <li>An engagement score from 0–10 for each topic, with scoring based on a consistent rationale.</li>
           <li>A spread of angles you can plug into a content calendar (debate topics, myth-busting, frameworks, and “why now” takes).</li>
         </ul>
       </td>
    </tr>
  </tbody>
</table>

</div>

<div class="prompt-display-section">

<h2 class="wp-block-heading">The Full AI Prompt: Scored Video Topic Ideas Generator</h2>



<div class="prompt-viewer-wrapper" id="prompt-section">
    <div class="prompt-comparison-row prompt-premium">
        <!-- Header with buttons -->
        <div class="prompt-row-header">
            <!-- <span class="prompt-row-icon">✨</span> -->
            <span class="prompt-row-title">
                                    Step 1: Customize the prompt with your input
                            </span>
            <div class="prompt-header-buttons">
                                    <button class="prompt-header-btn prompt-header-reset" onclick="resetPrompt()">
                        <svg xmlns="http://www.w3.org/2000/svg" width="16" height="16" fill="currentColor" viewBox="0 0 16 16">
                            <path fill-rule="evenodd" d="M8 3a5 5 0 1 0 4.546 2.914.5.5 0 0 1 .908-.417A6 6 0 1 1 8 2v1z" />
                            <path d="M8 4.466V.534a.25.25 0 0 1 .41-.192l2.36 1.966c.12.1.12.284 0 .384L8.41 4.658A.25.25 0 0 1 8 4.466z" />
                        </svg>
                        <span>Reset</span>
                    </button>
                                <button class="prompt-header-btn prompt-header-copy-green flowpast-copy-prompt-btn" onclick="handlePromptCopy()">
                    <svg xmlns="http://www.w3.org/2000/svg" width="16" height="16" fill="currentColor" viewBox="0 0 16 16">
                        <path d="M4 1.5H3a2 2 0 0 0-2 2V14a2 2 0 0 0 2 2h10a2 2 0 0 0 2-2V3.5a2 2 0 0 0-2-2h-1v1h1a1 1 0 0 1 1 1V14a1 1 0 0 1-1 1H3a1 1 0 0 1-1-1V3.5a1 1 0 0 1 1-1h1v-1z" />
                        <path d="M9.5 1a.5.5 0 0 1 .5.5v1a.5.5 0 0 1-.5.5h-3a.5.5 0 0 1-.5-.5v-1a.5.5 0 0 1 .5-.5h3zm-3-1A1.5 1.5 0 0 0 5 1.5v1A1.5 1.5 0 0 0 6.5 4h3A1.5 1.5 0 0 0 11 2.5v-1A1.5 1.5 0 0 0 9.5 0h-3z" />
                    </svg>
                    <span>Customize and Copy Full Prompt</span>
                </button>
            </div>
        </div>

        <!-- Customize the Prompt Section -->
                    <div class="prompt-customize-section">
                <span class="customize-title">Customize the Prompt</span>
                <p class="customize-subtitle">Fill in the fields below to personalize this prompt for your needs.</p>
                <table class="customize-table">
                    <thead>
                        <tr>
                            <th>Variable</th>
                            <th>What to Enter</th>
                            <th>Customise the prompt</th>
                        </tr>
                    </thead>
                    <tbody>
                                                    <tr>
                                <td class="var-name"><code>[UPPERCASE_WITH_UNDERSCORES]</code></td>
                                <td class="var-desc">
                                    This is a placeholder used to indicate user inputs in prompts, written in uppercase with underscores. It is not an actual input field.                                    <div class="var-example">For example: "[TOPIC], [NUMBER_OF_IDEAS], [TARGET_AUDIENCE]"</div>
                                </td>
                                <td class="var-input">
                                                                            <input
                                            type="text"
                                            class="customize-input"
                                            data-placeholder="[UPPERCASE_WITH_UNDERSCORES]"
                                            placeholder="Enter your value here..." />
                                                                    </td>
                            </tr>
                                                    <tr>
                                <td class="var-name"><code>[TOPIC]</code></td>
                                <td class="var-desc">
                                    Enter the main subject or theme for the video topics you want generated. Be specific and concise.                                    <div class="var-example">For example: "Sustainable fashion trends in 2023"</div>
                                </td>
                                <td class="var-input">
                                                                            <input
                                            type="text"
                                            class="customize-input"
                                            data-placeholder="[TOPIC]"
                                            placeholder="Enter your value here..." />
                                                                    </td>
                            </tr>
                                                    <tr>
                                <td class="var-name"><code>[NUMBER_OF_IDEAS]</code></td>
                                <td class="var-desc">
                                    Specify the exact number of video topic ideas you want generated. Provide a numeric value.                                    <div class="var-example">For example: "10"</div>
                                </td>
                                <td class="var-input">
                                                                            <input
                                            type="text"
                                            class="customize-input"
                                            data-placeholder="[NUMBER_OF_IDEAS]"
                                            placeholder="Enter your value here..." />
                                                                    </td>
                            </tr>
                                                    <tr>
                                <td class="var-name"><code>[TARGET_AUDIENCE]</code></td>
                                <td class="var-desc">
                                    Describe the main audience for the video topics, including demographics, interests, or other relevant characteristics.                                    <div class="var-example">For example: "Young professionals aged 25–35 interested in eco-friendly living and fashion innovation."</div>
                                </td>
                                <td class="var-input">
                                                                            <textarea
                                            class="customize-input"
                                            data-placeholder="[TARGET_AUDIENCE]"
                                            placeholder="Enter your value here..."
                                            rows="3"></textarea>
                                                                    </td>
                            </tr>
                                                    <tr>
                                <td class="var-name"><code>[PLATFORM]</code></td>
                                <td class="var-desc">
                                    Specify the platform or channel where the video will be published, such as YouTube, TikTok, or Instagram.                                    <div class="var-example">For example: "YouTube"</div>
                                </td>
                                <td class="var-input">
                                                                            <input
                                            type="text"
                                            class="customize-input"
                                            data-placeholder="[PLATFORM]"
                                            placeholder="Enter your value here..." />
                                                                    </td>
                            </tr>
                                                    <tr>
                                <td class="var-name"><code>[CONTEXT]</code></td>
                                <td class="var-desc">
                                    Provide any additional details or limitations that should be considered when generating video topics, such as tone, style, or specific audience preferences.                                    <div class="var-example">For example: "Focus on topics with a light-hearted tone suitable for TikTok&#039;s short-form video format."</div>
                                </td>
                                <td class="var-input">
                                                                            <textarea
                                            class="customize-input"
                                            data-placeholder="[CONTEXT]"
                                            placeholder="Enter your value here..."
                                            rows="3"></textarea>
                                                                    </td>
                            </tr>
                                            </tbody>
                </table>

                <button class="copy-customized-btn flowpast-copy-prompt-btn" onclick="handlePromptCopy()">
                    <svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" fill="currentColor" viewBox="0 0 16 16">
                        <path d="M4 1.5H3a2 2 0 0 0-2 2V14a2 2 0 0 0 2 2h10a2 2 0 0 0 2-2V3.5a2 2 0 0 0-2-2h-1v1h1a1 1 0 0 1 1 1V14a1 1 0 0 1-1 1H3a1 1 0 0 1-1-1V3.5a1 1 0 0 1 1-1h1v-1z" />
                        <path d="M9.5 1a.5.5 0 0 1 .5.5v1a.5.5 0 0 1-.5.5h-3a.5.5 0 0 1-.5-.5v-1a.5.5 0 0 1 .5-.5h3zm-3-1A1.5 1.5 0 0 0 5 1.5v1A1.5 1.5 0 0 0 6.5 4h3A1.5 1.5 0 0 0 11 2.5v-1A1.5 1.5 0 0 0 9.5 0h-3z" />
                    </svg>
                    <span class="copy-customized-text">Customise the prompt now</span>
                </button>
            </div>
        
        <!-- Full Prompt Code Header -->
                    <div class="prompt-code-header">
                <span class="prompt-code-title">
                    Step 2: Copy the Prompt
                </span>
                <div class="prompt-code-buttons">
                    <!-- Reset: Only visible when unlocked -->
                    <button class="prompt-header-btn prompt-header-reset btn-when-unlocked" onclick="resetPrompt()" style="display: none;">
                        <svg xmlns="http://www.w3.org/2000/svg" width="16" height="16" fill="currentColor" viewBox="0 0 16 16">
                            <path fill-rule="evenodd" d="M8 3a5 5 0 1 0 4.546 2.914.5.5 0 0 1 .908-.417A6 6 0 1 1 8 2v1z" />
                            <path d="M8 4.466V.534a.25.25 0 0 1 .41-.192l2.36 1.966c.12.1.12.284 0 .384L8.41 4.658A.25.25 0 0 1 8 4.466z" />
                        </svg>
                        <span>Reset</span>
                    </button>
                    <!-- Copy Full Prompt -->
                    <button class="prompt-header-btn prompt-header-copy flowpast-copy-prompt-btn" onclick="handlePromptCopy()">
                        <svg xmlns="http://www.w3.org/2000/svg" width="16" height="16" fill="currentColor" viewBox="0 0 16 16">
                            <path d="M4 1.5H3a2 2 0 0 0-2 2V14a2 2 0 0 0 2 2h10a2 2 0 0 0 2-2V3.5a2 2 0 0 0-2-2h-1v1h1a1 1 0 0 1 1 1V14a1 1 0 0 1-1 1H3a1 1 0 0 1-1-1V3.5a1 1 0 0 1 1-1h1v-1z" />
                            <path d="M9.5 1a.5.5 0 0 1 .5.5v1a.5.5 0 0 1-.5.5h-3a.5.5 0 0 1-.5-.5v-1a.5.5 0 0 1 .5-.5h3zm-3-1A1.5 1.5 0 0 0 5 1.5v1A1.5 1.5 0 0 0 6.5 4h3A1.5 1.5 0 0 0 11 2.5v-1A1.5 1.5 0 0 0 9.5 0h-3z" />
                        </svg>
                        <span>Copy Full Prompt</span>
                    </button>
                </div>
            </div>
        

        <!-- Prompt Content -->
        <div class="prompt-box prompt-gated-wrapper">
            <!-- Gated: Blurred content -->
            <div class="prompt-gated-content">
                <div class="prompt-header-visible">OBJECTIVE</div><div class="locked-section"><div class="locked-section-bg"><div class="locked-section-lines"><div class="locked-line" style="width: 85%;"></div><div class="locked-line" style="width: 78%;"></div></div></div><div class="locked-section-icon">🔒</div></div><div class="prompt-header-visible">PERSONA</div><div class="locked-section"><div class="locked-section-bg"><div class="locked-section-lines"><div class="locked-line" style="width: 85%;"></div><div class="locked-line" style="width: 78%;"></div></div></div><div class="locked-section-icon">🔒</div></div><div class="prompt-header-visible">CONSTRAINTS</div><div class="locked-section"><div class="locked-section-bg"><div class="locked-section-lines"><div class="locked-line" style="width: 85%;"></div><div class="locked-line" style="width: 78%;"></div><div class="locked-line" style="width: 92%;"></div><div class="locked-line" style="width: 75%;"></div><div class="locked-line" style="width: 88%;"></div></div></div><div class="locked-section-icon">🔒</div></div><div class="prompt-header-visible subheader">What This Is NOT</div><div class="locked-section"><div class="locked-section-bg"><div class="locked-section-lines"><div class="locked-line" style="width: 85%;"></div><div class="locked-line" style="width: 78%;"></div><div class="locked-line" style="width: 92%;"></div></div></div><div class="locked-section-icon">🔒</div></div><div class="prompt-header-visible">PROCESS</div><div class="locked-section"><div class="locked-section-bg"><div class="locked-section-lines"><div class="locked-line" style="width: 85%;"></div><div class="locked-line" style="width: 78%;"></div><div class="locked-line" style="width: 92%;"></div><div class="locked-line" style="width: 75%;"></div><div class="locked-line" style="width: 88%;"></div></div></div><div class="locked-section-icon">🔒</div></div><div class="prompt-header-visible subheader">Edge Case Handling</div><div class="locked-section"><div class="locked-section-bg"><div class="locked-section-lines"><div class="locked-line" style="width: 85%;"></div><div class="locked-line" style="width: 78%;"></div><div class="locked-line" style="width: 92%;"></div></div></div><div class="locked-section-icon">🔒</div></div><div class="prompt-header-visible">INPUTS</div><div class="locked-section"><div class="locked-section-bg"><div class="locked-section-lines"><div class="locked-line" style="width: 85%;"></div><div class="locked-line" style="width: 78%;"></div><div class="locked-line" style="width: 92%;"></div><div class="locked-line" style="width: 75%;"></div><div class="locked-line" style="width: 88%;"></div></div></div><div class="locked-section-icon">🔒</div></div><div class="prompt-header-visible">OUTPUT SPECIFICATION</div><div class="locked-section"><div class="locked-section-bg"><div class="locked-section-lines"><div class="locked-line" style="width: 85%;"></div><div class="locked-line" style="width: 78%;"></div><div class="locked-line" style="width: 92%;"></div><div class="locked-line" style="width: 75%;"></div><div class="locked-line" style="width: 88%;"></div><div class="locked-line" style="width: 72%;"></div></div></div><div class="locked-section-icon">🔒</div></div><div class="prompt-header-visible">QUALITY CHECKS</div><div class="locked-section"><div class="locked-section-bg"><div class="locked-section-lines"><div class="locked-line" style="width: 85%;"></div><div class="locked-line" style="width: 78%;"></div><div class="locked-line" style="width: 92%;"></div><div class="locked-line" style="width: 75%;"></div><div class="locked-line" style="width: 88%;"></div><div class="locked-line" style="width: 72%;"></div></div></div><div class="locked-section-icon">🔒</div></div>            </div>
            <!-- Unlocked: Full content (hidden by default) -->
            <div class="prompt-content-full" id="premium-prompt-content" style="display: none;">
                ## OBJECTIVE
Create a curated set of compelling, discussion-worthy video topic ideas centered on a single subject, optimized for viewer interest and interaction.

## PERSONA
You are a senior ideation moderator for digital video creators. You think like a producer and audience researcher: fast at spotting angles, strong at differentiating concepts, and focused on what will spark comments, shares, and debate.

## CONSTRAINTS
- Generate exactly the requested number of ideas.
- Every idea must include: a punchy title, a clear summary, an ideal recipient segment, and an engagement score from 0–10 (10 = highest).
- Favor specific, nuanced angles over vague “overview” concepts.
- Keep ideas aligned to what people are currently curious about and likely to discuss.
- Use the variable formats exactly as provided: user inputs in **[UPPERCASE_WITH_UNDERSCORES]** and AI-filled fields in **{Title Case}**.

### What This Is NOT
- Not a full script, outline, storyboard, or SEO keyword strategy.
- Not a guarantee of performance—scores are reasoned estimates.
- Not a generic list of broad themes (e.g., “All About [TOPIC]”) without a distinct point of view.

## PROCESS
1. **Pre-analysis (state your understanding first):** Briefly restate what you’re generating, for whom, and how many ideas, based on the inputs.
2. **Trend + audience scan (lightweight):** Identify likely current conversations, controversies, misconceptions, emerging changes, and “why now” angles related to the topic.
3. **Angle generation:** Produce a varied mix (e.g., myth-busting, contrarian takes, case-based topics, practical frameworks, ethical implications, future predictions, beginner vs advanced tensions).
4. **Quality filter:** Remove or rewrite anything that feels generic, too broad, repetitive, or not inherently discussion-provoking.
5. **Scoring:** Assign an engagement score (0–10) using a consistent rationale (novelty, relevance, emotional pull, debate potential, clarity).

### Edge Case Handling
- If [TOPIC] is missing or ambiguous, ask up to 3 clarifying questions before generating ideas.
- If [NUMBER_OF_IDEAS] is missing, default to **10** and mention the assumption in the pre-analysis.
- If the topic is very niche, include a few “bridge” ideas that connect it to wider interests without dumbing it down.

## INPUTS
- **Video subject:** [TOPIC]  
- **How many ideas to create:** [NUMBER_OF_IDEAS]  
- **Primary user segment (optional):** [TARGET_AUDIENCE]  
- **Platform or channel context (optional):** [PLATFORM]  
- **Any extra background or constraints (optional):** [CONTEXT]  

## OUTPUT SPECIFICATION
Provide a numbered list from 1 to [NUMBER_OF_IDEAS]. For each item, include:

- **Idea {#}:**
  - **Title:** {Idea Title}
  - **Description:** {Idea Description}
  - **Target Audience:** {Ideal Recipient Segment}
  - **Engagement Potential Score (0–10):** {Score}

## QUALITY CHECKS
At the end, verify:
- Generated count matches [NUMBER_OF_IDEAS] (or stated default).
- Each idea contains all four required fields.
- No idea is overly broad, interchangeable, or a rephrased duplicate.
- The set includes multiple distinct angle types (not all “tips,” not all “news,” etc.).
- Scores appear plausible and differentiated (not all clustered at the same number).            </div>
        </div>


    </div>

    <!-- CTA Row - Full width buttons -->
    <div class="prompt-cta-row">
        <button class="prompt-cta-btn prompt-cta-copy flowpast-copy-prompt-btn" onclick="handlePromptCopy()">
            <svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" fill="currentColor" viewBox="0 0 16 16">
                <path d="M4 1.5H3a2 2 0 0 0-2 2V14a2 2 0 0 0 2 2h10a2 2 0 0 0 2-2V3.5a2 2 0 0 0-2-2h-1v1h1a1 1 0 0 1 1 1V14a1 1 0 0 1-1 1H3a1 1 0 0 1-1-1V3.5a1 1 0 0 1 1-1h1v-1z" />
                <path d="M9.5 1a.5.5 0 0 1 .5.5v1a.5.5 0 0 1-.5.5h-3a.5.5 0 0 1-.5-.5v-1a.5.5 0 0 1 .5-.5h3zm-3-1A1.5 1.5 0 0 0 5 1.5v1A1.5 1.5 0 0 0 6.5 4h3A1.5 1.5 0 0 0 11 2.5v-1A1.5 1.5 0 0 0 9.5 0h-3z" />
            </svg>
            <span class="cta-copy-text">Copy Full Prompt</span>
        </button>
    </div>
</div>

<style>
    /* Gated prompt states */
    .prompt-gated-wrapper {
        position: relative;
    }

    /* When unlocked - show full content, hide gated */
    body.flowpast-unlocked .prompt-gated-wrapper .prompt-gated-content {
        display: none;
    }

    body.flowpast-unlocked .prompt-gated-wrapper .prompt-content-full {
        display: block !important;
    }

    /* Show/hide elements based on unlock state */
    body.flowpast-unlocked .btn-when-unlocked {
        display: inline-flex !important;
    }

    .prompt-viewer-wrapper {
        scroll-margin-top: 250px;
    }

    /* ========================================
   PROMPT VIEWER - MAIN WRAPPER
   ======================================== */
    .prompt-viewer-wrapper {
        margin: 30px 0;
        display: flex;
        flex-direction: column;
        gap: 20px;
    }

    /* ========================================
   PROMPT BOX CONTAINER
   ======================================== */
    .prompt-comparison-row {
        border-radius: 12px;
        overflow: hidden;
        border: 1px solid #e0e0e0;
        background: #fff;
    }

    /* ========================================
   HEADER WITH BUTTONS
   ======================================== */
    .prompt-row-header {
        display: flex;
        align-items: center;
        gap: 10px;
        padding: 14px 20px;
        color: #fff !important;
        background: #141414;
        border-bottom: 1px solid #e0e0e0;
        flex-wrap: wrap;
    }

    .prompt-row-icon {
        font-size: 20px;
    }

    .prompt-row-title {
        font-weight: 600;
        font-size: 22px;
        color: #fff !important;
        text-decoration: underline
    }

    .prompt-header-buttons {
        margin-left: auto;
        display: flex;
        gap: 10px;
        flex-wrap: wrap;
    }

    /* Header buttons */
    .prompt-header-btn {
        display: inline-flex;
        align-items: center;
        gap: 8px;
        padding: 10px 20px;
        border-radius: 6px;
        font-size: 14px;
        font-weight: 600;
        cursor: pointer;
        transition: all 0.2s;
        text-decoration: none;
        border: none;
    }

    .prompt-header-copy {
        background: #3a3a3a;
        color: #fff;
    }

    .prompt-header-copy:hover {
        background: #2a2a2a;
    }

    .prompt-header-copy.copied {
        background: #2e7d32;
    }

    .prompt-header-copy-green {
        background: #04AA6D !important;
        color: #fff !important;
    }

    .prompt-header-copy-green:hover {
        background: #039860 !important;
    }

    .prompt-header-copy-green.copied {
        background: #2e7d32 !important;
    }

    .prompt-header-access {
        background: rgb(5, 152, 98);
        color: #fff !important;
    }

    .prompt-header-access:hover {
        background: rgb(4, 130, 83);
        transform: translateY(-1px);
    }

    /* ========================================
   PROMPT CONTENT - FULL (NO SCROLL)
   ======================================== */
    .prompt-box {
        background: #ffffff;
    }

    .prompt-content-full {
        padding: 24px;
        margin: 0;
        color: #202124;
        background: #ffffff;
        font-family: 'Fira Code', 'Monaco', 'Consolas', monospace;
        font-size: 13px;
        line-height: 1.7;
        white-space: pre-wrap;
        word-wrap: break-word;
        /* No scroll - show full content */
        max-height: none;
        overflow: visible;
    }

    /* Highlighted variable in prompt */
    .prompt-variable {
        background: #fff3cd;
        color: #1967d2;
        font-weight: 700;
        padding: 2px 4px;
        border-radius: 3px;
        border: 1px solid #ffc107;
    }

    .prompt-variable-filled {
        background: #d4edda;
        color: #155724;
        font-weight: 700;
        padding: 2px 4px;
        border-radius: 3px;
        border: 1px solid #28a745;
    }

    /* ========================================
   GATED CONTENT (NO ACCESS)
   ======================================== */
    .prompt-gated-content {
        padding: 24px;
        background: #ffffff;
        font-family: 'Fira Code', 'Monaco', 'Consolas', monospace;
        font-size: 13px;
        line-height: 1.8;
        max-height: none;
        overflow: visible;
        user-select: none;
        -webkit-user-select: none;
        -moz-user-select: none;
        -ms-user-select: none;
        cursor: default;
    }

    /* ## headers - larger, black */
    .prompt-header-visible {
        color: #202124;
        font-weight: 600;
        margin: 5px 0 0px 0;
        font-size: 20px;
        user-select: none;
        -webkit-user-select: none;
        -moz-user-select: none;
        -ms-user-select: none;
        text-decoration: underline;
        text-underline-offset: 4px;
    }

    /* ### headers - smaller, black */
    .prompt-header-visible.subheader {
        color: #202124;
        font-weight: 600;
        margin: 5px 0;
        font-size: 18px;
    }

    .prompt-header-visible:first-child {
        margin-top: 0;
    }

    /* ========================================
   LOCKED SECTION BLOCK
   ======================================== */
    .locked-section {
        position: relative;
        margin: 4px 0 8px 0;
        border-radius: 6px;
        overflow: hidden;
        background: linear-gradient(110deg, #e2e8f0 8%, #f1f5f9 18%, #e2e8f0 33%);
        user-select: none;
        -webkit-user-select: none;
        -moz-user-select: none;
        -ms-user-select: none;
    }

    .locked-section-bg {
        position: relative;
    }

    .locked-section-lines {
        padding: 8px 12px;
        position: relative;
    }

    .locked-line {
        height: 6px;
        background: rgba(255, 255, 255, 0.6);
        border-radius: 3px;
        margin-bottom: 4px;
        margin-left: 12px;
    }

    .locked-line:last-child {
        margin-bottom: 0;
    }

    .locked-section-icon {
        position: absolute;
        top: 50%;
        left: 50%;
        transform: translate(-50%, -50%);
        z-index: 10;
        font-size: 24px;
        filter: drop-shadow(0 1px 3px rgba(0, 0, 0, 0.1));
    }

    /* Subheader locked sections - slightly indented */
    /*  .prompt-header-visible.subheader+.locked-section {
        margin-left: 16px;
    } */

    /* ========================================
   COMPATIBILITY BADGES
   ======================================== */
    .prompt-compatibility {
        display: flex;
        flex-wrap: wrap;
        align-items: center;
        gap: 8px;
        padding: 12px 20px;
        background: #f8f9fa;
        border-top: 1px solid #e0e0e0;
    }

    .compat-label {
        font-size: 13px;
        color: #5f6368;
        font-weight: 500;
    }

    .compat-badge {
        padding: 4px 10px;
        background: #e8f0fe;
        color: #1967d2;
        border-radius: 4px;
        font-size: 12px;
        font-weight: 500;
    }

    /* ========================================
   CTA ROW - FULL WIDTH BUTTONS
   ======================================== */
    .prompt-cta-row {
        display: flex;
        gap: 16px;
        flex-wrap: wrap;
    }

    .prompt-cta-btn {
        flex: 1;
        min-width: 200px;
        display: inline-flex;
        align-items: center;
        justify-content: center;
        gap: 10px;
        padding: 16px 24px;
        border-radius: 8px;
        font-size: 16px;
        font-weight: 600;
        cursor: pointer;
        transition: all 0.2s;
        text-decoration: none;
        border: none;
    }

    .prompt-cta-copy {
        background: #3a3a3a;
        color: #fff;
    }

    .prompt-cta-copy:hover {
        background: #2a2a2a;
        transform: translateY(-2px);
        box-shadow: 0 4px 12px rgba(0, 0, 0, 0.15);
    }

    .prompt-cta-copy.copied {
        background: #2e7d32;
    }

    .prompt-cta-reset {
        background: #3a3a3a;
        color: #fff;
    }

    .prompt-cta-reset:hover {
        background: #2a2a2a;
        transform: translateY(-2px);
        box-shadow: 0 4px 12px rgba(0, 0, 0, 0.15);
    }

    .prompt-cta-access {
        background: rgb(5, 152, 98);
        color: #fff !important;
    }

    .prompt-cta-access:hover {
        background: rgb(4, 130, 83);
        transform: translateY(-2px);
        box-shadow: 0 4px 12px rgba(5, 152, 98, 0.3);
    }

    /* ========================================
    CUSTOMIZE YOUR PROMPT SECTION
    ======================================== */
    .prompt-customize-section {
        padding: 24px;
        border-bottom: 1px solid #e0e0e0;
        background: #fafbfc;
    }

    .customize-title {
        margin: 0 0 8px 0;
        font-size: 18px;
        font-weight: 700;
        color: #202124;
    }

    .customize-subtitle {
        margin: 0 0 20px 0;
        font-size: 14px;
        color: #5f6368;
    }

    .customize-table {
        width: 100%;
        border-collapse: collapse;
        margin-bottom: 20px;
    }

    .customize-table th {
        text-align: left;
        padding: 12px;
        background: #f1f3f4;
        border: 1px solid #e0e0e0;
        font-size: 13px;
        font-weight: 600;
        color: #202124;
    }

    .customize-table td {
        padding: 12px;
        border: 1px solid #e0e0e0;
        vertical-align: top;
    }

    .customize-table .var-name {
        width: 25%;
        background: #f8f9fa;
    }

    .customize-table .var-name code {
        background: #fff3cd;
        color: #1967d2;
        border: 1px solid #ffc107;
        padding: 4px 8px;
        border-radius: 4px;
        font-size: 12px;
        word-break: break-all;
        font-weight: 600;
    }

    .customize-table .var-desc {
        width: 35%;
        font-size: 13px;
        color: #5f6368;
        line-height: 1.5;
    }

    .customize-table .var-example {
        margin-top: 8px;
        padding: 8px 10px;
        background: #f8f9fa;
        border-left: 3px solid #dadce0;
        font-size: 12px;
        color: #5f6368;
        font-style: italic;
        border-radius: 0 4px 4px 0;
    }

    .customize-table .var-input {
        width: 40%;
    }

    .customize-input {
        width: 100%;
        padding: 10px 12px;
        border: 1px solid #dadce0;
        border-radius: 6px;
        font-size: 13px;
        font-family: inherit;
        resize: vertical;
        transition: border-color 0.2s, box-shadow 0.2s;
    }

    .customize-input:focus {
        outline: none;
        border-color: rgb(5, 152, 98);
        box-shadow: 0 0 0 3px rgba(5, 152, 98, 0.1);
    }

    .customize-input::placeholder {
        color: #9aa0a6;
        font-style: italic;
    }

    .copy-customized-btn {
        display: flex;
        align-items: center;
        justify-content: center;
        gap: 10px;
        width: 100%;
        padding: 16px 24px;
        background: rgb(5, 152, 98);
        color: #fff;
        border: none;
        border-radius: 8px;
        font-size: 16px;
        font-weight: 600;
        cursor: pointer;
        transition: all 0.2s;
    }

    .copy-customized-btn:hover {
        background: rgb(4, 130, 83);
        transform: translateY(-2px);
        box-shadow: 0 4px 12px rgba(5, 152, 98, 0.3);
    }

    .copy-customized-btn.copied {
        background: #2e7d32;
    }

    /* ========================================
    FULL PROMPT CODE HEADER
    ======================================== */
    .prompt-code-header {
        display: flex;
        align-items: center;
        justify-content: space-between;
        padding: 10px 20px;
        color: #fff !important;
        background: #141414;
        border-bottom: 1px solid #e0e0e0;
    }

    .prompt-code-title {
        font-size: 22px;
        font-weight: 600;
        text-decoration: underline;

    }

    .prompt-code-buttons {
        display: flex;
        gap: 8px;
    }

    .prompt-code-buttons .prompt-header-btn {
        padding: 8px 14px;
        font-size: 13px;
        background: #ffffff;
        color: #202124;
        border: 1px solid #dadce0;
    }

    .prompt-code-buttons .prompt-header-access {
        background: rgb(5, 152, 98);
        color: #fff !important;
        border-color: rgb(5, 152, 98);
    }

    .prompt-code-buttons .prompt-header-btn.prompt-header-access:hover {
        background: rgb(4, 130, 83) !important;
        border-color: rgb(4, 130, 83);
        color: #fff !important;
    }

    .prompt-code-buttons .prompt-header-btn:hover {
        background: #f1f3f4;
    }

    .prompt-code-buttons .prompt-header-copy.copied {
        background: #d4edda;
        color: #155724;
        border-color: #28a745;
    }

    .prompt-header-reset {
        background: #ffffff;
        color: #202124;
    }

    /* ========================================
   RESPONSIVE
   ======================================== */
    @media (max-width: 768px) {
        .prompt-row-header {
            flex-direction: column;
            align-items: flex-start;
            gap: 12px;
        }

        .prompt-header-buttons {
            margin-left: 0;
            width: 100%;
        }

        .prompt-header-btn {
            flex: 1;
            justify-content: center;
        }

        .prompt-cta-row {
            flex-direction: column;
        }

        .prompt-cta-btn {
            width: 100%;
        }

        /* Customize table responsive */
        .customize-table,
        .customize-table thead,
        .customize-table tbody,
        .customize-table tr,
        .customize-table th,
        .customize-table td {
            display: block;
        }

        .customize-table thead {
            display: none;
        }

        .customize-table tr {
            margin-bottom: 16px;
            border: 1px solid #e0e0e0;
            border-radius: 8px;
            overflow: hidden;
        }

        .customize-table td {
            width: 100% !important;
            border: none;
            border-bottom: 1px solid #e0e0e0;
        }

        .customize-table td:last-child {
            border-bottom: none;
        }

        .customize-table .var-name {
            background: #f1f3f4;
            font-weight: 600;
        }

        .prompt-code-header {
            flex-direction: column;
            gap: 12px;
            align-items: flex-start;
        }

        .prompt-code-buttons {
            width: 100%;
        }

        .prompt-code-buttons .prompt-header-btn {
            flex: 1;
            justify-content: center;
        }
    }
</style>

<script>
    function handlePromptCopy() {
        // Check if unlocked via cookie
        if (typeof window.flowpastIsUnlocked === 'function' && !window.flowpastIsUnlocked()) {
            // Show email popup
            if (typeof window.flowpastShowEmailPopup === 'function') {
                window.flowpastShowEmailPopup('prompt');
            }
            return;
        }

        // Copy the customized prompt (with filled variables)
        const customizedPrompt = getCustomizedPrompt();
        const copyButtons = document.querySelectorAll('.prompt-header-copy, .prompt-header-copy-green, .prompt-cta-copy, .copy-customized-btn');

        navigator.clipboard.writeText(customizedPrompt).then(() => {
            copyButtons.forEach(btn => {
                btn.classList.add('copied');
                const textSpan = btn.querySelector('span');
                if (textSpan) textSpan.textContent = 'Copied!';
            });

            setTimeout(() => {
                copyButtons.forEach(btn => {
                    btn.classList.remove('copied');
                    const textSpan = btn.querySelector('span');
                    if (textSpan) textSpan.textContent = 'Copy Full Prompt';
                });
            }, 2000);
        }).catch(err => {
            console.error('Failed to copy:', err);
        });
    }

    // Store original prompt for customization
    const originalPrompt = "## OBJECTIVE\r\nCreate a curated set of compelling, discussion-worthy video topic ideas centered on a single subject, optimized for viewer interest and interaction.\r\n\r\n## PERSONA\r\nYou are a senior ideation moderator for digital video creators. You think like a producer and audience researcher: fast at spotting angles, strong at differentiating concepts, and focused on what will spark comments, shares, and debate.\r\n\r\n## CONSTRAINTS\r\n- Generate exactly the requested number of ideas.\r\n- Every idea must include: a punchy title, a clear summary, an ideal recipient segment, and an engagement score from 0\u201310 (10 = highest).\r\n- Favor specific, nuanced angles over vague \u201coverview\u201d concepts.\r\n- Keep ideas aligned to what people are currently curious about and likely to discuss.\r\n- Use the variable formats exactly as provided: user inputs in **[UPPERCASE_WITH_UNDERSCORES]** and AI-filled fields in **{Title Case}**.\r\n\r\n### What This Is NOT\r\n- Not a full script, outline, storyboard, or SEO keyword strategy.\r\n- Not a guarantee of performance\u2014scores are reasoned estimates.\r\n- Not a generic list of broad themes (e.g., \u201cAll About [TOPIC]\u201d) without a distinct point of view.\r\n\r\n## PROCESS\r\n1. **Pre-analysis (state your understanding first):** Briefly restate what you\u2019re generating, for whom, and how many ideas, based on the inputs.\r\n2. **Trend + audience scan (lightweight):** Identify likely current conversations, controversies, misconceptions, emerging changes, and \u201cwhy now\u201d angles related to the topic.\r\n3. **Angle generation:** Produce a varied mix (e.g., myth-busting, contrarian takes, case-based topics, practical frameworks, ethical implications, future predictions, beginner vs advanced tensions).\r\n4. **Quality filter:** Remove or rewrite anything that feels generic, too broad, repetitive, or not inherently discussion-provoking.\r\n5. **Scoring:** Assign an engagement score (0\u201310) using a consistent rationale (novelty, relevance, emotional pull, debate potential, clarity).\r\n\r\n### Edge Case Handling\r\n- If [TOPIC] is missing or ambiguous, ask up to 3 clarifying questions before generating ideas.\r\n- If [NUMBER_OF_IDEAS] is missing, default to **10** and mention the assumption in the pre-analysis.\r\n- If the topic is very niche, include a few \u201cbridge\u201d ideas that connect it to wider interests without dumbing it down.\r\n\r\n## INPUTS\r\n- **Video subject:** [TOPIC]  \r\n- **How many ideas to create:** [NUMBER_OF_IDEAS]  \r\n- **Primary user segment (optional):** [TARGET_AUDIENCE]  \r\n- **Platform or channel context (optional):** [PLATFORM]  \r\n- **Any extra background or constraints (optional):** [CONTEXT]  \r\n\r\n## OUTPUT SPECIFICATION\r\nProvide a numbered list from 1 to [NUMBER_OF_IDEAS]. For each item, include:\r\n\r\n- **Idea {#}:**\r\n  - **Title:** {Idea Title}\r\n  - **Description:** {Idea Description}\r\n  - **Target Audience:** {Ideal Recipient Segment}\r\n  - **Engagement Potential Score (0\u201310):** {Score}\r\n\r\n## QUALITY CHECKS\r\nAt the end, verify:\r\n- Generated count matches [NUMBER_OF_IDEAS] (or stated default).\r\n- Each idea contains all four required fields.\r\n- No idea is overly broad, interchangeable, or a rephrased duplicate.\r\n- The set includes multiple distinct angle types (not all \u201ctips,\u201d not all \u201cnews,\u201d etc.).\r\n- Scores appear plausible and differentiated (not all clustered at the same number).";
    const variables = ["[UPPERCASE_WITH_UNDERSCORES]","[TOPIC]","[NUMBER_OF_IDEAS]","[TARGET_AUDIENCE]","[PLATFORM]","[CONTEXT]"];
    // Initial render with highlighted variables
    document.addEventListener('DOMContentLoaded', function() {
        renderPromptWithHighlights();
    });

    // Live update prompt as user types
    document.querySelectorAll('.customize-input').forEach(input => {
        input.addEventListener('input', renderPromptWithHighlights);
    });

    function renderPromptWithHighlights() {
        const promptContent = document.getElementById('premium-prompt-content');
        if (!promptContent) return;

        let updatedPrompt = originalPrompt;
        let filledVariables = {};

        // Collect filled values
        document.querySelectorAll('.customize-input').forEach(input => {
            const placeholder = input.dataset.placeholder;
            const value = input.value.trim();

            if (value) {
                filledVariables[placeholder] = value;
            }
        });

        // Replace filled variables and highlight remaining
        let htmlContent = escapeHtml(updatedPrompt);

        variables.forEach(placeholder => {
            const escapedPlaceholder = escapeHtml(placeholder);
            const regex = new RegExp(escapeRegex(escapedPlaceholder), 'g');

            if (filledVariables[placeholder]) {
                // Show filled value with green highlight
                htmlContent = htmlContent.replace(regex,
                    '<span class="prompt-variable-filled">' + escapeHtml(filledVariables[placeholder]) + '</span>'
                );
            } else {
                // Show original placeholder with yellow highlight
                htmlContent = htmlContent.replace(regex,
                    '<span class="prompt-variable">' + escapedPlaceholder + '</span>'
                );
            }
        });

        promptContent.innerHTML = htmlContent;
    }

    function escapeRegex(string) {
        return string.replace(/[.*+?^${}()|[\]\\]/g, '\\$&');
    }

    function escapeHtml(text) {
        const div = document.createElement('div');
        div.textContent = text;
        return div.innerHTML;
    }

    function resetPrompt() {
        // Clear all input fields
        document.querySelectorAll('.customize-input').forEach(input => {
            input.value = '';
        });

        // Re-render with original placeholders highlighted
        renderPromptWithHighlights();

        // Visual feedback
        const resetBtns = document.querySelectorAll('.prompt-header-reset, .prompt-cta-reset');
        resetBtns.forEach(btn => {
            const originalText = btn.querySelector('span').textContent;
            btn.querySelector('span').textContent = 'Reset!';
            setTimeout(() => {
                btn.querySelector('span').textContent = originalText;
            }, 1000);
        });
    }


    function getCustomizedPrompt() {
        let updatedPrompt = originalPrompt;

        document.querySelectorAll('.customize-input').forEach(input => {
            const placeholder = input.dataset.placeholder;
            const value = input.value.trim();

            if (value) {
                const regex = new RegExp(escapeRegex(placeholder), 'g');
                updatedPrompt = updatedPrompt.replace(regex, value);
            }
        });

        return updatedPrompt;
    }
</script>

</div>

<div class="pro-tips-section">

<h2 class="wp-block-heading">Pro Tips for Better AI Prompt Results</h2>



<ul class="wp-block-list">

<li><strong>Make your topic narrower than you think.</strong> “Email marketing” will trigger bland ideas; “abandoned cart emails for subscription skincare” forces sharper angles and clearer segments. If you’re not sure how to narrow, run it twice: once broad to see the landscape, then again with the most promising sub-angle.</li>


<li><strong>Ask for an exact number that matches your workflow.</strong> Don’t request 50 ideas if you only need 8 for the next two weeks; you’ll get more redundancy and weaker filtering. Follow up with: “Take the top 5 by score and rewrite the titles as punchier YouTube-style headlines without adding clickbait.”</li>

<li><strong>Use the engagement score as a sorter, not a verdict.</strong> A “6/10” can still be perfect if it targets a high-intent segment you sell to. After the first run, try: “Explain why idea #3 scored an 8 and suggest one change that would push it to a 9.”</li>

<li><strong>Force variety when your niche gets repetitive.</strong> Some spaces (fitness, business advice) naturally churn out the same patterns. Ask: “Regenerate the list, but include at least 2 contrarian takes, 2 myth-busting topics, 2 ethical implications, and 2 future predictions.”</li>


<li><strong>Pair each topic with a platform-specific execution prompt.</strong> Once you pick winners, you can immediately move into asset creation for the platform you’re posting on. For example, take the best idea and then use <a href="https://flowpast.com/prompts/write-social-media-captions-that-convert-ai-prompt/">Write Social Media Captions That Convert AI Prompt</a> to generate caption options that match the angle and invite comments.</li>

</ul>

</div>

<div class="related-prompts-section">

<h2 class="wp-block-heading">Related Prompts</h2>



<p>Once you have strong topics, the next step is turning them into ads, captions, and creative concepts that fit each platform’s style.</p>



<p>If you also need to promote your best-performing topic with paid social, <a href="https://flowpast.com/prompts/create-tiktok-ad-copy-with-this-ai-prompt/">Create TikTok Ad Copy with this AI Prompt</a> pairs well because it helps you translate a discussion-driven angle into punchy, scroll-stopping ad language. Use it after you’ve chosen 1–2 high-score topics and want to test them as hooks in Spark Ads or UGC-style placements.</p>



<p>When your topic list is solid but your creative still feels flat, <a href="https://flowpast.com/prompts/create-5-instagram-ad-concepts-with-this-ai-prompt/">Create 5 Instagram Ad Concepts with this AI Prompt</a> helps you build multiple executions around the same core idea. That’s useful for A/B tests: one concept leans educational, another leans contrarian, another goes story-first.</p>



<p>For teams doing organic posting at volume, <a href="https://flowpast.com/prompts/write-social-media-captions-that-convert-ai-prompt/">Write Social Media Captions That Convert AI Prompt</a> helps you keep the “discussion spark” intact when you move from topic to caption. It’s especially handy when the video’s angle is nuanced and you want the caption to steer comments in a specific direction.</p>


<br>


<p>Quick reference:</p>



<ul class="wp-block-list">

<li><a href="https://flowpast.com/prompts/create-tiktok-ad-copy-with-this-ai-prompt/">Create TikTok Ad Copy with this AI Prompt</a>: Turn topics into TikTok-style ad hooks.</li>


<li><a href="https://flowpast.com/prompts/create-5-instagram-ad-concepts-with-this-ai-prompt/">Create 5 Instagram Ad Concepts with this AI Prompt</a>: Generate multiple creative angles for testing.</li>


<li><a href="https://flowpast.com/prompts/write-social-media-captions-that-convert-ai-prompt/">Write Social Media Captions That Convert AI Prompt</a>: Write captions that drive clicks and comments.</li>


<li><a href="https://flowpast.com/prompts/write-instagram-ad-copy-that-converts-ai-prompt/">Write Instagram Ad Copy That Converts AI Prompt</a>: Convert a topic into tight Instagram ad copy.</li>


<li><a href="https://flowpast.com/prompts/write-pinterest-ad-captions-with-this-ai-prompt/">Write Pinterest Ad Captions with this AI Prompt</a>: Craft Pinterest-ready captions from a core angle.</li>

</ul>

</div>

<div class="faq-section">

<h2 class="wp-block-heading">Common Questions</h2>


<div class="faq-item">
<span class="question">Which roles benefit most from this video topic ideas AI prompt?</span>

<p class="answer"><strong>Content strategists</strong> use this to generate a bank of angles that map to different audience segments (beginner, advanced, skeptical, and comparison shoppers) without guessing. <strong>Social media managers</strong> rely on it when they need consistent weekly posting ideas with built-in engagement intent, not just “educational” topics. <strong>YouTube producers</strong> get value from the scoring and variety filter, which helps avoid repetitive formats and identifies debate-worthy hooks. <strong>Growth marketers</strong> use the top-scoring ideas as inputs for creative testing, then hand them off to copy and design for execution.</p>

</div>

<div class="faq-item">
<span class="question">Which industries get the most value from this video topic ideas AI prompt?</span>

<p class="answer"><strong>SaaS companies</strong> use it to create topics that address misconceptions, “tool fatigue,” and workflow debates (great for comments from power users). It also helps product marketers split topics by segment, like admins vs end users. <strong>E-commerce brands</strong> apply it to find opinionated angles around product categories, routines, and buyer skepticism, then build short-form series around the highest-scoring themes. <strong>Coaches and educators</strong> lean on it to generate contrarian or myth-busting topics that position their framework without sounding like generic motivation content. <strong>Agencies</strong> benefit because they can quickly ideate per client niche and deliver a scored, discussable list that clients actually feel excited to approve.</p>

</div>

<div class="faq-item">
<span class="question">Why do basic AI prompts for generating video topic ideas produce weak results?</span>

<p class="answer">A typical prompt like “Write me video ideas about my niche” fails because it: lacks a built-in trend and audience scan, so it misses what people are currently debating; provides no structure for title, summary, and recipient segment, so ideas come out half-formed; ignores the need for varied angles, which creates repetitive “top 10 tips” suggestions; produces generic outcomes instead of discussion-worthy viewpoints; and misses a consistent scoring method, so you can’t prioritize the best ideas confidently.</p>

</div>

<div class="faq-item">
<span class="question">Can I customize this video topic ideas prompt for my specific situation?</span>

<p class="answer">Yes, and frankly you should. The fastest way is to be precise with the input brackets in the prompt, especially [TOPIC], the intended audience/recipient details, and the exact number of ideas you want generated. If your first output is close but not quite, follow up with: “Regenerate the list for the same [TOPIC], but aim at {your exact segment} and make half the ideas contrarian and half practical frameworks.” You can also ask it to keep only ideas above a threshold, like “Keep only topics scoring 8+ and rewrite the titles to be shorter.”</p>

</div>

<div class="faq-item">
<span class="question">What are the most common mistakes when using this video topic ideas prompt?</span>

<p class="answer">The biggest mistake is leaving [TOPIC] too vague — instead of “personal finance,” try “paying off credit card debt with a variable income (freelancers).” Another common error is asking for “ideas for everyone,” which leads to fuzzy recipient segments; better is “ideal recipient segment: new Shopify store owners at $5–20K/month.” People also forget to specify an exact quantity, so they get an arbitrary list that’s hard to plan around; request “exactly 12 ideas for a 3-week posting plan.” Finally, many users accept the first scoring at face value; ask for a short rationale tweak like “What would make idea #7 more debate-provoking without becoming misleading?”</p>

</div>

<div class="faq-item">
<span class="question">Who should NOT use this video topic ideas prompt?</span>

<p class="answer">This prompt isn’t ideal for teams that only need a fully written script today, because it’s designed for ideation and scoring, not scripting. It’s also a poor fit if you refuse to provide a clear topic or audience details; vague inputs will give you vague segments and bland titles. And if your brand cannot touch controversy at all, you may find the most engaging angles too debate-oriented. In those cases, use a scripting or brand-compliance workflow first, then return to this for safer topic exploration.</p>

</div>

<script type="application/ld+json">
{
  "@context": "https://schema.org",
  "@type": "FAQPage",
  "mainEntity": [
    {
      "@type": "Question",
      "name": "Which roles benefit most from this video topic ideas AI prompt?",
      "acceptedAnswer": {
        "@type": "Answer",
        "text": "Content strategists use this to generate a bank of angles that map to different audience segments (beginner, advanced, skeptical, and comparison shoppers) without guessing. Social media managers rely on it when they need consistent weekly posting ideas with built-in engagement intent, not just “educational” topics. YouTube producers get value from the scoring and variety filter, which helps avoid repetitive formats and identifies debate-worthy hooks. Growth marketers use the top-scoring ideas as inputs for creative testing, then hand them off to copy and design for execution."
      }
    },
    {
      "@type": "Question",
      "name": "Which industries get the most value from this video topic ideas AI prompt?",
      "acceptedAnswer": {
        "@type": "Answer",
        "text": "SaaS companies use it to create topics that address misconceptions, “tool fatigue,” and workflow debates (great for comments from power users). It also helps product marketers split topics by segment, like admins vs end users. E-commerce brands apply it to find opinionated angles around product categories, routines, and buyer skepticism, then build short-form series around the highest-scoring themes. Coaches and educators lean on it to generate contrarian or myth-busting topics that position their framework without sounding like generic motivation content. Agencies benefit because they can quickly ideate per client niche and deliver a scored, discussable list that clients actually feel excited to approve."
      }
    },
    {
      "@type": "Question",
      "name": "Why do basic AI prompts for generating video topic ideas produce weak results?",
      "acceptedAnswer": {
        "@type": "Answer",
        "text": "A typical prompt like “Write me video ideas about my niche” fails because it: lacks a built-in trend and audience scan, so it misses what people are currently debating; provides no structure for title, summary, and recipient segment, so ideas come out half-formed; ignores the need for varied angles, which creates repetitive “top 10 tips” suggestions; produces generic outcomes instead of discussion-worthy viewpoints; and misses a consistent scoring method, so you can’t prioritize the best ideas confidently."
      }
    },
    {
      "@type": "Question",
      "name": "Can I customize this video topic ideas prompt for my specific situation?",
      "acceptedAnswer": {
        "@type": "Answer",
        "text": "Yes, and frankly you should. The fastest way is to be precise with the input brackets in the prompt, especially [TOPIC], the intended audience/recipient details, and the exact number of ideas you want generated. If your first output is close but not quite, follow up with: “Regenerate the list for the same [TOPIC], but aim at {your exact segment} and make half the ideas contrarian and half practical frameworks.” You can also ask it to keep only ideas above a threshold, like “Keep only topics scoring 8+ and rewrite the titles to be shorter.”"
      }
    },
    {
      "@type": "Question",
      "name": "What are the most common mistakes when using this video topic ideas prompt?",
      "acceptedAnswer": {
        "@type": "Answer",
        "text": "The biggest mistake is leaving [TOPIC] too vague — instead of “personal finance,” try “paying off credit card debt with a variable income (freelancers).” Another common error is asking for “ideas for everyone,” which leads to fuzzy recipient segments; better is “ideal recipient segment: new Shopify store owners at $5–20K/month.” People also forget to specify an exact quantity, so they get an arbitrary list that’s hard to plan around; request “exactly 12 ideas for a 3-week posting plan.” Finally, many users accept the first scoring at face value; ask for a short rationale tweak like “What would make idea #7 more debate-provoking without becoming misleading?”"
      }
    },
    {
      "@type": "Question",
      "name": "Who should NOT use this video topic ideas prompt?",
      "acceptedAnswer": {
        "@type": "Answer",
        "text": "This prompt isn’t ideal for teams that only need a fully written script today, because it’s designed for ideation and scoring, not scripting. It’s also a poor fit if you refuse to provide a clear topic or audience details; vague inputs will give you vague segments and bland titles. And if your brand cannot touch controversy at all, you may find the most engaging angles too debate-oriented. In those cases, use a scripting or brand-compliance workflow first, then return to this for safer topic exploration."
      }
    }
  ]
}
</script>
</div>

<div class="closing-section">

<p>Good video ideas aren’t random. They’re shaped around angles people already want to argue about, share, or correct. Paste the prompt into your AI tool, generate your scored list, and pick the next topic with confidence.</p>

</div>]]></content:encoded>
					
		
		
		<media:content url="https://flowpast.s3.eu-north-1.amazonaws.com/featured_blog_images/5002387.webp" medium="image"></media:content>
            	</item>
		<item>
		<title>Write a Cinematic Character Backstory with this AI Prompt</title>
		<link>https://flowpast.com/prompts/write-a-cinematic-character-backstory-with-this-ai-prompt/</link>
		
		<dc:creator><![CDATA[Lisa Granqvist]]></dc:creator>
		<pubDate>Fri, 23 Jan 2026 02:21:24 +0000</pubDate>
				<category><![CDATA[Prompts]]></category>
		<guid isPermaLink="false">https://flowpast.com/?p=5000616</guid>

					<description><![CDATA[Flat characters stall scripts - this AI Prompt builds cinematic backstories with motives, wounds, trials, and arc hooks. Discover more AI prompts for marketing, sales, and ops.]]></description>
										<content:encoded><![CDATA[<!-- FOCUS_KEYWORD: cinematic character backstory -->
<div class="hook-introduction">

<p>Flat backstories don’t just make characters boring. They make your whole script feel convenient, because actions don’t have believable causes. Then you’re stuck rewriting scenes to “force” motivation that should have been there from the start.</p>



<p>This <strong>cinematic character backstory</strong> prompt is built for <strong>screenwriters</strong> who need a character to finally click before the next draft, <strong>story producers</strong> who are stress-testing cast motivations against a show bible, and <strong>game narrative designers</strong> who need playable flaws, not just vibes. The output is a story-ready backstory package: a clear internal engine (desire, fear, strength, weakness), formative history, specific wounds, and practical arc hooks you can write scenes from.</p>

</div>

<div class="what-and-when-section">

<h2 class="wp-block-heading">What Does This AI Prompt Do and When to Use It?</h2>



<table class="solution-results-table three-column" role="presentation" aria-label="What this prompt does, when to use it, and what you get">
 <thead>
    <tr>
      <th scope="col">What This Prompt Does</th>
      <th scope="col">When to Use This Prompt</th>
      <th scope="col">What You&#8217;ll Get</th>
    </tr>
  </thead>
  <tbody>
    <tr>
      <td>
        <ul class="automation-list">
          <li>It summarizes the character’s role, setting constraints, themes, and relationship web in a short pre-analysis so you can spot misalignment early.</li>
          <li>It builds a “character engine” (core desire, core fear, primary strength, central weakness, plus a compelling contradiction) grounded in cause and effect.</li>
          <li>It converts formative experiences into actionable behaviors, showing how specific events shaped coping strategies and present-day choices.</li>
          <li>It generates usable, cinematic details while staying consistent with time period, location, tone, and thematic direction.</li>
          <li>It handles missing inputs by making minimal labeled assumptions or asking up to three clarifying questions when the gaps would change the backstory materially.</li>
       </ul>
      </td>
      <td>
        <ul class="results-list">
          <li>You have a character who “works” in concept, but every scene feels like they could be swapped with someone else.</li>
          <li>Your plot beats are solid, yet the emotional turns feel unearned because motivation is fuzzy or contradictory.</li>
          <li>You’re about to start Draft 2 or Draft 3 and you need sharper relationship dynamics, not more dialogue polish.</li>
          <li>A director, producer, or collaborator keeps asking, “Why would they do that?” and you can’t answer in one sentence.</li>
          <li>You’re scaling a story world (series, game, franchise) and need continuity-safe backstory that won’t break later episodes or missions.</li>
        </ul>
      </td>
       <td>
         <ul class="deliverables-list">
           <li>A 3–6 bullet pre-analysis that captures role, themes, constraints, and uncertainty flags.</li>
           <li>A complete character engine with five defined parts and a contradiction you can dramatize.</li>
           <li>Foundational-years history written in vivid, specific prose with clear cause → effect links.</li>
           <li>A set of concrete arc hooks (conflict triggers, pressure points, relational friction) you can translate into scenes.</li>
           <li>A short list of labeled Assumptions or up to 3 clarifying questions when details are missing.</li>
         </ul>
       </td>
    </tr>
  </tbody>
</table>

</div>

<div class="prompt-display-section">

<h2 class="wp-block-heading">The Full AI Prompt: Cinematic Character Backstory Builder</h2>



<div class="prompt-viewer-wrapper" id="prompt-section">
    <div class="prompt-comparison-row prompt-premium">
        <!-- Header with buttons -->
        <div class="prompt-row-header">
            <!-- <span class="prompt-row-icon">✨</span> -->
            <span class="prompt-row-title">
                                    Step 1: Customize the prompt with your input
                            </span>
            <div class="prompt-header-buttons">
                                    <button class="prompt-header-btn prompt-header-reset" onclick="resetPrompt()">
                        <svg xmlns="http://www.w3.org/2000/svg" width="16" height="16" fill="currentColor" viewBox="0 0 16 16">
                            <path fill-rule="evenodd" d="M8 3a5 5 0 1 0 4.546 2.914.5.5 0 0 1 .908-.417A6 6 0 1 1 8 2v1z" />
                            <path d="M8 4.466V.534a.25.25 0 0 1 .41-.192l2.36 1.966c.12.1.12.284 0 .384L8.41 4.658A.25.25 0 0 1 8 4.466z" />
                        </svg>
                        <span>Reset</span>
                    </button>
                                <button class="prompt-header-btn prompt-header-copy-green flowpast-copy-prompt-btn" onclick="handlePromptCopy()">
                    <svg xmlns="http://www.w3.org/2000/svg" width="16" height="16" fill="currentColor" viewBox="0 0 16 16">
                        <path d="M4 1.5H3a2 2 0 0 0-2 2V14a2 2 0 0 0 2 2h10a2 2 0 0 0 2-2V3.5a2 2 0 0 0-2-2h-1v1h1a1 1 0 0 1 1 1V14a1 1 0 0 1-1 1H3a1 1 0 0 1-1-1V3.5a1 1 0 0 1 1-1h1v-1z" />
                        <path d="M9.5 1a.5.5 0 0 1 .5.5v1a.5.5 0 0 1-.5.5h-3a.5.5 0 0 1-.5-.5v-1a.5.5 0 0 1 .5-.5h3zm-3-1A1.5 1.5 0 0 0 5 1.5v1A1.5 1.5 0 0 0 6.5 4h3A1.5 1.5 0 0 0 11 2.5v-1A1.5 1.5 0 0 0 9.5 0h-3z" />
                    </svg>
                    <span>Customize and Copy Full Prompt</span>
                </button>
            </div>
        </div>

        <!-- Customize the Prompt Section -->
                    <div class="prompt-customize-section">
                <span class="customize-title">Customize the Prompt</span>
                <p class="customize-subtitle">Fill in the fields below to personalize this prompt for your needs.</p>
                <table class="customize-table">
                    <thead>
                        <tr>
                            <th>Variable</th>
                            <th>What to Enter</th>
                            <th>Customise the prompt</th>
                        </tr>
                    </thead>
                    <tbody>
                                                    <tr>
                                <td class="var-name"><code>[CHARACTER_NAME]</code></td>
                                <td class="var-desc">
                                    Provide the full name of the character, including any nicknames or titles if relevant.                                    <div class="var-example">For example: "Eleanor &#039;Ellie&#039; Carter"</div>
                                </td>
                                <td class="var-input">
                                                                            <input
                                            type="text"
                                            class="customize-input"
                                            data-placeholder="[CHARACTER_NAME]"
                                            placeholder="Enter your value here..." />
                                                                    </td>
                            </tr>
                                                    <tr>
                                <td class="var-name"><code>[CHARACTER_ROLE]</code></td>
                                <td class="var-desc">
                                    Specify the character&#039;s function in the narrative, such as their profession, archetype, or narrative significance.                                    <div class="var-example">For example: "Reluctant hero who must overcome self-doubt to lead a rebellion against an oppressive regime."</div>
                                </td>
                                <td class="var-input">
                                                                            <textarea
                                            class="customize-input"
                                            data-placeholder="[CHARACTER_ROLE]"
                                            placeholder="Enter your value here..."
                                            rows="3"></textarea>
                                                                    </td>
                            </tr>
                                                    <tr>
                                <td class="var-name"><code>[SCRIPT_SETTING]</code></td>
                                <td class="var-desc">
                                    Describe the time period, location, and cultural context where the story takes place.                                    <div class="var-example">For example: "A dystopian metropolis in the year 2147, where corporate overlords control all aspects of daily life."</div>
                                </td>
                                <td class="var-input">
                                                                            <textarea
                                            class="customize-input"
                                            data-placeholder="[SCRIPT_SETTING]"
                                            placeholder="Enter your value here..."
                                            rows="3"></textarea>
                                                                    </td>
                            </tr>
                                                    <tr>
                                <td class="var-name"><code>[KEY_THEMES]</code></td>
                                <td class="var-desc">
                                    List the central ideas or motifs explored in the script, such as justice, betrayal, or redemption.                                    <div class="var-example">For example: "Themes of loyalty, sacrifice, and the moral cost of revenge."</div>
                                </td>
                                <td class="var-input">
                                                                            <textarea
                                            class="customize-input"
                                            data-placeholder="[KEY_THEMES]"
                                            placeholder="Enter your value here..."
                                            rows="3"></textarea>
                                                                    </td>
                            </tr>
                                                    <tr>
                                <td class="var-name"><code>[RELATIONSHIPS_WITH_OTHER_CHARACTERS]</code></td>
                                <td class="var-desc">
                                    Explain the character&#039;s connections to other key figures in the story, including allies, enemies, and mentors.                                    <div class="var-example">For example: "Estranged sister who secretly works for the antagonist, a loyal best friend who doubts the character&#039;s leadership, and a former mentor turned rival."</div>
                                </td>
                                <td class="var-input">
                                                                            <textarea
                                            class="customize-input"
                                            data-placeholder="[RELATIONSHIPS_WITH_OTHER_CHARACTERS]"
                                            placeholder="Enter your value here..."
                                            rows="3"></textarea>
                                                                    </td>
                            </tr>
                                            </tbody>
                </table>

                <button class="copy-customized-btn flowpast-copy-prompt-btn" onclick="handlePromptCopy()">
                    <svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" fill="currentColor" viewBox="0 0 16 16">
                        <path d="M4 1.5H3a2 2 0 0 0-2 2V14a2 2 0 0 0 2 2h10a2 2 0 0 0 2-2V3.5a2 2 0 0 0-2-2h-1v1h1a1 1 0 0 1 1 1V14a1 1 0 0 1-1 1H3a1 1 0 0 1-1-1V3.5a1 1 0 0 1 1-1h1v-1z" />
                        <path d="M9.5 1a.5.5 0 0 1 .5.5v1a.5.5 0 0 1-.5.5h-3a.5.5 0 0 1-.5-.5v-1a.5.5 0 0 1 .5-.5h3zm-3-1A1.5 1.5 0 0 0 5 1.5v1A1.5 1.5 0 0 0 6.5 4h3A1.5 1.5 0 0 0 11 2.5v-1A1.5 1.5 0 0 0 9.5 0h-3z" />
                    </svg>
                    <span class="copy-customized-text">Customise the prompt now</span>
                </button>
            </div>
        
        <!-- Full Prompt Code Header -->
                    <div class="prompt-code-header">
                <span class="prompt-code-title">
                    Step 2: Copy the Prompt
                </span>
                <div class="prompt-code-buttons">
                    <!-- Reset: Only visible when unlocked -->
                    <button class="prompt-header-btn prompt-header-reset btn-when-unlocked" onclick="resetPrompt()" style="display: none;">
                        <svg xmlns="http://www.w3.org/2000/svg" width="16" height="16" fill="currentColor" viewBox="0 0 16 16">
                            <path fill-rule="evenodd" d="M8 3a5 5 0 1 0 4.546 2.914.5.5 0 0 1 .908-.417A6 6 0 1 1 8 2v1z" />
                            <path d="M8 4.466V.534a.25.25 0 0 1 .41-.192l2.36 1.966c.12.1.12.284 0 .384L8.41 4.658A.25.25 0 0 1 8 4.466z" />
                        </svg>
                        <span>Reset</span>
                    </button>
                    <!-- Copy Full Prompt -->
                    <button class="prompt-header-btn prompt-header-copy flowpast-copy-prompt-btn" onclick="handlePromptCopy()">
                        <svg xmlns="http://www.w3.org/2000/svg" width="16" height="16" fill="currentColor" viewBox="0 0 16 16">
                            <path d="M4 1.5H3a2 2 0 0 0-2 2V14a2 2 0 0 0 2 2h10a2 2 0 0 0 2-2V3.5a2 2 0 0 0-2-2h-1v1h1a1 1 0 0 1 1 1V14a1 1 0 0 1-1 1H3a1 1 0 0 1-1-1V3.5a1 1 0 0 1 1-1h1v-1z" />
                            <path d="M9.5 1a.5.5 0 0 1 .5.5v1a.5.5 0 0 1-.5.5h-3a.5.5 0 0 1-.5-.5v-1a.5.5 0 0 1 .5-.5h3zm-3-1A1.5 1.5 0 0 0 5 1.5v1A1.5 1.5 0 0 0 6.5 4h3A1.5 1.5 0 0 0 11 2.5v-1A1.5 1.5 0 0 0 9.5 0h-3z" />
                        </svg>
                        <span>Copy Full Prompt</span>
                    </button>
                </div>
            </div>
        

        <!-- Prompt Content -->
        <div class="prompt-box prompt-gated-wrapper">
            <!-- Gated: Blurred content -->
            <div class="prompt-gated-content">
                <div class="prompt-header-visible">OBJECTIVE</div><div class="locked-section"><div class="locked-section-bg"><div class="locked-section-lines"><div class="locked-line" style="width: 85%;"></div><div class="locked-line" style="width: 78%;"></div></div></div><div class="locked-section-icon">🔒</div></div><div class="prompt-header-visible">PERSONA</div><div class="locked-section"><div class="locked-section-bg"><div class="locked-section-lines"><div class="locked-line" style="width: 85%;"></div><div class="locked-line" style="width: 78%;"></div></div></div><div class="locked-section-icon">🔒</div></div><div class="prompt-header-visible">CONSTRAINTS</div><div class="locked-section"><div class="locked-section-bg"><div class="locked-section-lines"><div class="locked-line" style="width: 85%;"></div><div class="locked-line" style="width: 78%;"></div><div class="locked-line" style="width: 92%;"></div><div class="locked-line" style="width: 75%;"></div><div class="locked-line" style="width: 88%;"></div><div class="locked-line" style="width: 72%;"></div><div class="locked-line" style="width: 80%;"></div><div class="locked-line" style="width: 95%;"></div><div class="locked-line" style="width: 70%;"></div><div class="locked-line" style="width: 83%;"></div></div></div><div class="locked-section-icon">🔒</div></div><div class="prompt-header-visible">PROCESS</div><div class="locked-section"><div class="locked-section-bg"><div class="locked-section-lines"><div class="locked-line" style="width: 85%;"></div><div class="locked-line" style="width: 78%;"></div><div class="locked-line" style="width: 92%;"></div><div class="locked-line" style="width: 75%;"></div><div class="locked-line" style="width: 88%;"></div><div class="locked-line" style="width: 72%;"></div><div class="locked-line" style="width: 80%;"></div><div class="locked-line" style="width: 95%;"></div></div></div><div class="locked-section-icon">🔒</div></div><div class="prompt-header-visible">INPUTS</div><div class="locked-section"><div class="locked-section-bg"><div class="locked-section-lines"><div class="locked-line" style="width: 85%;"></div><div class="locked-line" style="width: 78%;"></div><div class="locked-line" style="width: 92%;"></div><div class="locked-line" style="width: 75%;"></div><div class="locked-line" style="width: 88%;"></div></div></div><div class="locked-section-icon">🔒</div></div><div class="prompt-header-visible">OUTPUT SPECIFICATION</div><div class="locked-section"><div class="locked-section-bg"><div class="locked-section-lines"><div class="locked-line" style="width: 85%;"></div><div class="locked-line" style="width: 78%;"></div><div class="locked-line" style="width: 92%;"></div><div class="locked-line" style="width: 75%;"></div><div class="locked-line" style="width: 88%;"></div><div class="locked-line" style="width: 72%;"></div><div class="locked-line" style="width: 80%;"></div><div class="locked-line" style="width: 95%;"></div><div class="locked-line" style="width: 70%;"></div></div></div><div class="locked-section-icon">🔒</div></div><div class="prompt-header-visible">QUALITY CHECKS</div><div class="locked-section"><div class="locked-section-bg"><div class="locked-section-lines"><div class="locked-line" style="width: 85%;"></div><div class="locked-line" style="width: 78%;"></div><div class="locked-line" style="width: 92%;"></div><div class="locked-line" style="width: 75%;"></div><div class="locked-line" style="width: 88%;"></div><div class="locked-line" style="width: 72%;"></div></div></div><div class="locked-section-icon">🔒</div></div>            </div>
            <!-- Unlocked: Full content (hidden by default) -->
            <div class="prompt-content-full" id="premium-prompt-content" style="display: none;">
                ## OBJECTIVE
Create a rich, story-ready history for a single scripted character that explains what drives them, what they avoid, what they’re good at, and where they’re vulnerable—while fitting seamlessly into the world, tone, and themes of the larger script. The result should clearly support future plot choices and relationship dynamics.

## PERSONA
You are a senior screenwriting specialist focused on character psychology, narrative continuity, and dramatic cause-and-effect. You write in vivid, specific prose that feels cinematic, but you prioritize internal logic over melodrama.

## CONSTRAINTS
- Stay consistent with the given time period, location, and thematic direction.
- Build motivations and behaviors from lived experiences (cause → effect), not clichés.
- Make the character multidimensional: at least one admirable trait and one costly flaw that can create conflict.
- Keep details usable for a script (actionable history, not abstract personality descriptions).
- **Edge case handling:** If any input is missing or vague, make the smallest reasonable assumptions and label them as **Assumptions**, or ask up to 3 clarifying questions if the gaps would materially change the backstory.
- **Scope boundaries — What This Is NOT:**
  - Not a full plot outline for the entire script
  - Not scene-by-scene screenplay pages
  - Not a complete biography covering every year of the character’s life
  - Not a worldbuilding bible unrelated to the character

## PROCESS
1. **Pre-analysis (state your understanding first):** In 3–6 bullets, summarize how you interpret the character’s role, the setting constraints, the themes, and the relationship web. Note any uncertainties.
2. **Character engine:** Define the character’s internal “operating system” (core desire, core fear, primary strength, central weakness, and the contradiction that makes them interesting).
3. **Foundational years:** Describe early experiences that seeded their beliefs and coping strategies (family conditions, environment, a remembered incident that still shapes them).
4. **Shaping forces:** Identify major people and/or events that sculpted their worldview (a guide, a rival, an institution, a cultural pressure, a public incident, etc.).
5. **Pressure history:** Detail 2–4 significant hardships or tests that revealed both capability and fragility.
6. **Irreversible pivot:** Write the turning point that “locked in” their current approach to life (what happened, what they decided, what it cost them).
7. **Story opening position:** Explain where they are when the script begins—goals, resources, liabilities, relationships, and the immediate friction they can’t ignore.
8. **Arc forecast:** Briefly map how this past is likely to affect decisions and relationships going forward (what they’ll resist, what will trigger them, what growth is plausible, what could break them).

## INPUTS
- **Character name:** [CHARACTER_NAME]  
- **Character’s role in the story:** [CHARACTER_ROLE]  
- **Script setting (time period, location):** [SCRIPT_SETTING]  
- **Key themes:** [KEY_THEMES]  
- **Other major characters + relationship to this character:** [RELATIONSHIPS_WITH_OTHER_CHARACTERS]  

## OUTPUT SPECIFICATION
Deliver a cohesive backstory with clear headers, using the following sections:
- **{Core Profile}** (desire, fear, strength, weakness, contradiction)
- **{Early Imprints}** (formative environment + pivotal childhood/young-adult moment)
- **{Key Influences}** (people/events and what each taught or damaged)
- **{Trials}** (2–4 challenges; include consequences and scars)
- **{Defining Turn}** (turning point, choice, cost, belief formed)
- **{Start-of-Story Status Quo}** (current goals, relationships, tensions, secrets/needs)
- **{Arc Hooks}** (how the backstory is likely to drive future conflict and growth)
- **{Assumptions or Clarifying Questions}** (only if needed)

## QUALITY CHECKS
Before finalizing, verify:
- The backstory directly supports {Core Profile} and explains present-day behavior.
- Details align with [SCRIPT_SETTING] and reinforce [KEY_THEMES] rather than contradict them.
- At least one internal contradiction creates believable tension (not random quirks).
- Relationships in [RELATIONSHIPS_WITH_OTHER_CHARACTERS] have specific history and emotional texture.
- Nothing essential is left unexplained (or it’s explicitly marked as an assumption/mystery intended for the script).            </div>
        </div>


    </div>

    <!-- CTA Row - Full width buttons -->
    <div class="prompt-cta-row">
        <button class="prompt-cta-btn prompt-cta-copy flowpast-copy-prompt-btn" onclick="handlePromptCopy()">
            <svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" fill="currentColor" viewBox="0 0 16 16">
                <path d="M4 1.5H3a2 2 0 0 0-2 2V14a2 2 0 0 0 2 2h10a2 2 0 0 0 2-2V3.5a2 2 0 0 0-2-2h-1v1h1a1 1 0 0 1 1 1V14a1 1 0 0 1-1 1H3a1 1 0 0 1-1-1V3.5a1 1 0 0 1 1-1h1v-1z" />
                <path d="M9.5 1a.5.5 0 0 1 .5.5v1a.5.5 0 0 1-.5.5h-3a.5.5 0 0 1-.5-.5v-1a.5.5 0 0 1 .5-.5h3zm-3-1A1.5 1.5 0 0 0 5 1.5v1A1.5 1.5 0 0 0 6.5 4h3A1.5 1.5 0 0 0 11 2.5v-1A1.5 1.5 0 0 0 9.5 0h-3z" />
            </svg>
            <span class="cta-copy-text">Copy Full Prompt</span>
        </button>
    </div>
</div>

<style>
    /* Gated prompt states */
    .prompt-gated-wrapper {
        position: relative;
    }

    /* When unlocked - show full content, hide gated */
    body.flowpast-unlocked .prompt-gated-wrapper .prompt-gated-content {
        display: none;
    }

    body.flowpast-unlocked .prompt-gated-wrapper .prompt-content-full {
        display: block !important;
    }

    /* Show/hide elements based on unlock state */
    body.flowpast-unlocked .btn-when-unlocked {
        display: inline-flex !important;
    }

    .prompt-viewer-wrapper {
        scroll-margin-top: 250px;
    }

    /* ========================================
   PROMPT VIEWER - MAIN WRAPPER
   ======================================== */
    .prompt-viewer-wrapper {
        margin: 30px 0;
        display: flex;
        flex-direction: column;
        gap: 20px;
    }

    /* ========================================
   PROMPT BOX CONTAINER
   ======================================== */
    .prompt-comparison-row {
        border-radius: 12px;
        overflow: hidden;
        border: 1px solid #e0e0e0;
        background: #fff;
    }

    /* ========================================
   HEADER WITH BUTTONS
   ======================================== */
    .prompt-row-header {
        display: flex;
        align-items: center;
        gap: 10px;
        padding: 14px 20px;
        color: #fff !important;
        background: #141414;
        border-bottom: 1px solid #e0e0e0;
        flex-wrap: wrap;
    }

    .prompt-row-icon {
        font-size: 20px;
    }

    .prompt-row-title {
        font-weight: 600;
        font-size: 22px;
        color: #fff !important;
        text-decoration: underline
    }

    .prompt-header-buttons {
        margin-left: auto;
        display: flex;
        gap: 10px;
        flex-wrap: wrap;
    }

    /* Header buttons */
    .prompt-header-btn {
        display: inline-flex;
        align-items: center;
        gap: 8px;
        padding: 10px 20px;
        border-radius: 6px;
        font-size: 14px;
        font-weight: 600;
        cursor: pointer;
        transition: all 0.2s;
        text-decoration: none;
        border: none;
    }

    .prompt-header-copy {
        background: #3a3a3a;
        color: #fff;
    }

    .prompt-header-copy:hover {
        background: #2a2a2a;
    }

    .prompt-header-copy.copied {
        background: #2e7d32;
    }

    .prompt-header-copy-green {
        background: #04AA6D !important;
        color: #fff !important;
    }

    .prompt-header-copy-green:hover {
        background: #039860 !important;
    }

    .prompt-header-copy-green.copied {
        background: #2e7d32 !important;
    }

    .prompt-header-access {
        background: rgb(5, 152, 98);
        color: #fff !important;
    }

    .prompt-header-access:hover {
        background: rgb(4, 130, 83);
        transform: translateY(-1px);
    }

    /* ========================================
   PROMPT CONTENT - FULL (NO SCROLL)
   ======================================== */
    .prompt-box {
        background: #ffffff;
    }

    .prompt-content-full {
        padding: 24px;
        margin: 0;
        color: #202124;
        background: #ffffff;
        font-family: 'Fira Code', 'Monaco', 'Consolas', monospace;
        font-size: 13px;
        line-height: 1.7;
        white-space: pre-wrap;
        word-wrap: break-word;
        /* No scroll - show full content */
        max-height: none;
        overflow: visible;
    }

    /* Highlighted variable in prompt */
    .prompt-variable {
        background: #fff3cd;
        color: #1967d2;
        font-weight: 700;
        padding: 2px 4px;
        border-radius: 3px;
        border: 1px solid #ffc107;
    }

    .prompt-variable-filled {
        background: #d4edda;
        color: #155724;
        font-weight: 700;
        padding: 2px 4px;
        border-radius: 3px;
        border: 1px solid #28a745;
    }

    /* ========================================
   GATED CONTENT (NO ACCESS)
   ======================================== */
    .prompt-gated-content {
        padding: 24px;
        background: #ffffff;
        font-family: 'Fira Code', 'Monaco', 'Consolas', monospace;
        font-size: 13px;
        line-height: 1.8;
        max-height: none;
        overflow: visible;
        user-select: none;
        -webkit-user-select: none;
        -moz-user-select: none;
        -ms-user-select: none;
        cursor: default;
    }

    /* ## headers - larger, black */
    .prompt-header-visible {
        color: #202124;
        font-weight: 600;
        margin: 5px 0 0px 0;
        font-size: 20px;
        user-select: none;
        -webkit-user-select: none;
        -moz-user-select: none;
        -ms-user-select: none;
        text-decoration: underline;
        text-underline-offset: 4px;
    }

    /* ### headers - smaller, black */
    .prompt-header-visible.subheader {
        color: #202124;
        font-weight: 600;
        margin: 5px 0;
        font-size: 18px;
    }

    .prompt-header-visible:first-child {
        margin-top: 0;
    }

    /* ========================================
   LOCKED SECTION BLOCK
   ======================================== */
    .locked-section {
        position: relative;
        margin: 4px 0 8px 0;
        border-radius: 6px;
        overflow: hidden;
        background: linear-gradient(110deg, #e2e8f0 8%, #f1f5f9 18%, #e2e8f0 33%);
        user-select: none;
        -webkit-user-select: none;
        -moz-user-select: none;
        -ms-user-select: none;
    }

    .locked-section-bg {
        position: relative;
    }

    .locked-section-lines {
        padding: 8px 12px;
        position: relative;
    }

    .locked-line {
        height: 6px;
        background: rgba(255, 255, 255, 0.6);
        border-radius: 3px;
        margin-bottom: 4px;
        margin-left: 12px;
    }

    .locked-line:last-child {
        margin-bottom: 0;
    }

    .locked-section-icon {
        position: absolute;
        top: 50%;
        left: 50%;
        transform: translate(-50%, -50%);
        z-index: 10;
        font-size: 24px;
        filter: drop-shadow(0 1px 3px rgba(0, 0, 0, 0.1));
    }

    /* Subheader locked sections - slightly indented */
    /*  .prompt-header-visible.subheader+.locked-section {
        margin-left: 16px;
    } */

    /* ========================================
   COMPATIBILITY BADGES
   ======================================== */
    .prompt-compatibility {
        display: flex;
        flex-wrap: wrap;
        align-items: center;
        gap: 8px;
        padding: 12px 20px;
        background: #f8f9fa;
        border-top: 1px solid #e0e0e0;
    }

    .compat-label {
        font-size: 13px;
        color: #5f6368;
        font-weight: 500;
    }

    .compat-badge {
        padding: 4px 10px;
        background: #e8f0fe;
        color: #1967d2;
        border-radius: 4px;
        font-size: 12px;
        font-weight: 500;
    }

    /* ========================================
   CTA ROW - FULL WIDTH BUTTONS
   ======================================== */
    .prompt-cta-row {
        display: flex;
        gap: 16px;
        flex-wrap: wrap;
    }

    .prompt-cta-btn {
        flex: 1;
        min-width: 200px;
        display: inline-flex;
        align-items: center;
        justify-content: center;
        gap: 10px;
        padding: 16px 24px;
        border-radius: 8px;
        font-size: 16px;
        font-weight: 600;
        cursor: pointer;
        transition: all 0.2s;
        text-decoration: none;
        border: none;
    }

    .prompt-cta-copy {
        background: #3a3a3a;
        color: #fff;
    }

    .prompt-cta-copy:hover {
        background: #2a2a2a;
        transform: translateY(-2px);
        box-shadow: 0 4px 12px rgba(0, 0, 0, 0.15);
    }

    .prompt-cta-copy.copied {
        background: #2e7d32;
    }

    .prompt-cta-reset {
        background: #3a3a3a;
        color: #fff;
    }

    .prompt-cta-reset:hover {
        background: #2a2a2a;
        transform: translateY(-2px);
        box-shadow: 0 4px 12px rgba(0, 0, 0, 0.15);
    }

    .prompt-cta-access {
        background: rgb(5, 152, 98);
        color: #fff !important;
    }

    .prompt-cta-access:hover {
        background: rgb(4, 130, 83);
        transform: translateY(-2px);
        box-shadow: 0 4px 12px rgba(5, 152, 98, 0.3);
    }

    /* ========================================
    CUSTOMIZE YOUR PROMPT SECTION
    ======================================== */
    .prompt-customize-section {
        padding: 24px;
        border-bottom: 1px solid #e0e0e0;
        background: #fafbfc;
    }

    .customize-title {
        margin: 0 0 8px 0;
        font-size: 18px;
        font-weight: 700;
        color: #202124;
    }

    .customize-subtitle {
        margin: 0 0 20px 0;
        font-size: 14px;
        color: #5f6368;
    }

    .customize-table {
        width: 100%;
        border-collapse: collapse;
        margin-bottom: 20px;
    }

    .customize-table th {
        text-align: left;
        padding: 12px;
        background: #f1f3f4;
        border: 1px solid #e0e0e0;
        font-size: 13px;
        font-weight: 600;
        color: #202124;
    }

    .customize-table td {
        padding: 12px;
        border: 1px solid #e0e0e0;
        vertical-align: top;
    }

    .customize-table .var-name {
        width: 25%;
        background: #f8f9fa;
    }

    .customize-table .var-name code {
        background: #fff3cd;
        color: #1967d2;
        border: 1px solid #ffc107;
        padding: 4px 8px;
        border-radius: 4px;
        font-size: 12px;
        word-break: break-all;
        font-weight: 600;
    }

    .customize-table .var-desc {
        width: 35%;
        font-size: 13px;
        color: #5f6368;
        line-height: 1.5;
    }

    .customize-table .var-example {
        margin-top: 8px;
        padding: 8px 10px;
        background: #f8f9fa;
        border-left: 3px solid #dadce0;
        font-size: 12px;
        color: #5f6368;
        font-style: italic;
        border-radius: 0 4px 4px 0;
    }

    .customize-table .var-input {
        width: 40%;
    }

    .customize-input {
        width: 100%;
        padding: 10px 12px;
        border: 1px solid #dadce0;
        border-radius: 6px;
        font-size: 13px;
        font-family: inherit;
        resize: vertical;
        transition: border-color 0.2s, box-shadow 0.2s;
    }

    .customize-input:focus {
        outline: none;
        border-color: rgb(5, 152, 98);
        box-shadow: 0 0 0 3px rgba(5, 152, 98, 0.1);
    }

    .customize-input::placeholder {
        color: #9aa0a6;
        font-style: italic;
    }

    .copy-customized-btn {
        display: flex;
        align-items: center;
        justify-content: center;
        gap: 10px;
        width: 100%;
        padding: 16px 24px;
        background: rgb(5, 152, 98);
        color: #fff;
        border: none;
        border-radius: 8px;
        font-size: 16px;
        font-weight: 600;
        cursor: pointer;
        transition: all 0.2s;
    }

    .copy-customized-btn:hover {
        background: rgb(4, 130, 83);
        transform: translateY(-2px);
        box-shadow: 0 4px 12px rgba(5, 152, 98, 0.3);
    }

    .copy-customized-btn.copied {
        background: #2e7d32;
    }

    /* ========================================
    FULL PROMPT CODE HEADER
    ======================================== */
    .prompt-code-header {
        display: flex;
        align-items: center;
        justify-content: space-between;
        padding: 10px 20px;
        color: #fff !important;
        background: #141414;
        border-bottom: 1px solid #e0e0e0;
    }

    .prompt-code-title {
        font-size: 22px;
        font-weight: 600;
        text-decoration: underline;

    }

    .prompt-code-buttons {
        display: flex;
        gap: 8px;
    }

    .prompt-code-buttons .prompt-header-btn {
        padding: 8px 14px;
        font-size: 13px;
        background: #ffffff;
        color: #202124;
        border: 1px solid #dadce0;
    }

    .prompt-code-buttons .prompt-header-access {
        background: rgb(5, 152, 98);
        color: #fff !important;
        border-color: rgb(5, 152, 98);
    }

    .prompt-code-buttons .prompt-header-btn.prompt-header-access:hover {
        background: rgb(4, 130, 83) !important;
        border-color: rgb(4, 130, 83);
        color: #fff !important;
    }

    .prompt-code-buttons .prompt-header-btn:hover {
        background: #f1f3f4;
    }

    .prompt-code-buttons .prompt-header-copy.copied {
        background: #d4edda;
        color: #155724;
        border-color: #28a745;
    }

    .prompt-header-reset {
        background: #ffffff;
        color: #202124;
    }

    /* ========================================
   RESPONSIVE
   ======================================== */
    @media (max-width: 768px) {
        .prompt-row-header {
            flex-direction: column;
            align-items: flex-start;
            gap: 12px;
        }

        .prompt-header-buttons {
            margin-left: 0;
            width: 100%;
        }

        .prompt-header-btn {
            flex: 1;
            justify-content: center;
        }

        .prompt-cta-row {
            flex-direction: column;
        }

        .prompt-cta-btn {
            width: 100%;
        }

        /* Customize table responsive */
        .customize-table,
        .customize-table thead,
        .customize-table tbody,
        .customize-table tr,
        .customize-table th,
        .customize-table td {
            display: block;
        }

        .customize-table thead {
            display: none;
        }

        .customize-table tr {
            margin-bottom: 16px;
            border: 1px solid #e0e0e0;
            border-radius: 8px;
            overflow: hidden;
        }

        .customize-table td {
            width: 100% !important;
            border: none;
            border-bottom: 1px solid #e0e0e0;
        }

        .customize-table td:last-child {
            border-bottom: none;
        }

        .customize-table .var-name {
            background: #f1f3f4;
            font-weight: 600;
        }

        .prompt-code-header {
            flex-direction: column;
            gap: 12px;
            align-items: flex-start;
        }

        .prompt-code-buttons {
            width: 100%;
        }

        .prompt-code-buttons .prompt-header-btn {
            flex: 1;
            justify-content: center;
        }
    }
</style>

<script>
    function handlePromptCopy() {
        // Check if unlocked via cookie
        if (typeof window.flowpastIsUnlocked === 'function' && !window.flowpastIsUnlocked()) {
            // Show email popup
            if (typeof window.flowpastShowEmailPopup === 'function') {
                window.flowpastShowEmailPopup('prompt');
            }
            return;
        }

        // Copy the customized prompt (with filled variables)
        const customizedPrompt = getCustomizedPrompt();
        const copyButtons = document.querySelectorAll('.prompt-header-copy, .prompt-header-copy-green, .prompt-cta-copy, .copy-customized-btn');

        navigator.clipboard.writeText(customizedPrompt).then(() => {
            copyButtons.forEach(btn => {
                btn.classList.add('copied');
                const textSpan = btn.querySelector('span');
                if (textSpan) textSpan.textContent = 'Copied!';
            });

            setTimeout(() => {
                copyButtons.forEach(btn => {
                    btn.classList.remove('copied');
                    const textSpan = btn.querySelector('span');
                    if (textSpan) textSpan.textContent = 'Copy Full Prompt';
                });
            }, 2000);
        }).catch(err => {
            console.error('Failed to copy:', err);
        });
    }

    // Store original prompt for customization
    const originalPrompt = "## OBJECTIVE\r\nCreate a rich, story-ready history for a single scripted character that explains what drives them, what they avoid, what they\u2019re good at, and where they\u2019re vulnerable\u2014while fitting seamlessly into the world, tone, and themes of the larger script. The result should clearly support future plot choices and relationship dynamics.\r\n\r\n## PERSONA\r\nYou are a senior screenwriting specialist focused on character psychology, narrative continuity, and dramatic cause-and-effect. You write in vivid, specific prose that feels cinematic, but you prioritize internal logic over melodrama.\r\n\r\n## CONSTRAINTS\r\n- Stay consistent with the given time period, location, and thematic direction.\r\n- Build motivations and behaviors from lived experiences (cause \u2192 effect), not clich\u00e9s.\r\n- Make the character multidimensional: at least one admirable trait and one costly flaw that can create conflict.\r\n- Keep details usable for a script (actionable history, not abstract personality descriptions).\r\n- **Edge case handling:** If any input is missing or vague, make the smallest reasonable assumptions and label them as **Assumptions**, or ask up to 3 clarifying questions if the gaps would materially change the backstory.\r\n- **Scope boundaries \u2014 What This Is NOT:**\r\n  - Not a full plot outline for the entire script\r\n  - Not scene-by-scene screenplay pages\r\n  - Not a complete biography covering every year of the character\u2019s life\r\n  - Not a worldbuilding bible unrelated to the character\r\n\r\n## PROCESS\r\n1. **Pre-analysis (state your understanding first):** In 3\u20136 bullets, summarize how you interpret the character\u2019s role, the setting constraints, the themes, and the relationship web. Note any uncertainties.\r\n2. **Character engine:** Define the character\u2019s internal \u201coperating system\u201d (core desire, core fear, primary strength, central weakness, and the contradiction that makes them interesting).\r\n3. **Foundational years:** Describe early experiences that seeded their beliefs and coping strategies (family conditions, environment, a remembered incident that still shapes them).\r\n4. **Shaping forces:** Identify major people and\/or events that sculpted their worldview (a guide, a rival, an institution, a cultural pressure, a public incident, etc.).\r\n5. **Pressure history:** Detail 2\u20134 significant hardships or tests that revealed both capability and fragility.\r\n6. **Irreversible pivot:** Write the turning point that \u201clocked in\u201d their current approach to life (what happened, what they decided, what it cost them).\r\n7. **Story opening position:** Explain where they are when the script begins\u2014goals, resources, liabilities, relationships, and the immediate friction they can\u2019t ignore.\r\n8. **Arc forecast:** Briefly map how this past is likely to affect decisions and relationships going forward (what they\u2019ll resist, what will trigger them, what growth is plausible, what could break them).\r\n\r\n## INPUTS\r\n- **Character name:** [CHARACTER_NAME]  \r\n- **Character\u2019s role in the story:** [CHARACTER_ROLE]  \r\n- **Script setting (time period, location):** [SCRIPT_SETTING]  \r\n- **Key themes:** [KEY_THEMES]  \r\n- **Other major characters + relationship to this character:** [RELATIONSHIPS_WITH_OTHER_CHARACTERS]  \r\n\r\n## OUTPUT SPECIFICATION\r\nDeliver a cohesive backstory with clear headers, using the following sections:\r\n- **{Core Profile}** (desire, fear, strength, weakness, contradiction)\r\n- **{Early Imprints}** (formative environment + pivotal childhood\/young-adult moment)\r\n- **{Key Influences}** (people\/events and what each taught or damaged)\r\n- **{Trials}** (2\u20134 challenges; include consequences and scars)\r\n- **{Defining Turn}** (turning point, choice, cost, belief formed)\r\n- **{Start-of-Story Status Quo}** (current goals, relationships, tensions, secrets\/needs)\r\n- **{Arc Hooks}** (how the backstory is likely to drive future conflict and growth)\r\n- **{Assumptions or Clarifying Questions}** (only if needed)\r\n\r\n## QUALITY CHECKS\r\nBefore finalizing, verify:\r\n- The backstory directly supports {Core Profile} and explains present-day behavior.\r\n- Details align with [SCRIPT_SETTING] and reinforce [KEY_THEMES] rather than contradict them.\r\n- At least one internal contradiction creates believable tension (not random quirks).\r\n- Relationships in [RELATIONSHIPS_WITH_OTHER_CHARACTERS] have specific history and emotional texture.\r\n- Nothing essential is left unexplained (or it\u2019s explicitly marked as an assumption\/mystery intended for the script).";
    const variables = ["[CHARACTER_NAME]","[CHARACTER_ROLE]","[SCRIPT_SETTING]","[KEY_THEMES]","[RELATIONSHIPS_WITH_OTHER_CHARACTERS]"];
    // Initial render with highlighted variables
    document.addEventListener('DOMContentLoaded', function() {
        renderPromptWithHighlights();
    });

    // Live update prompt as user types
    document.querySelectorAll('.customize-input').forEach(input => {
        input.addEventListener('input', renderPromptWithHighlights);
    });

    function renderPromptWithHighlights() {
        const promptContent = document.getElementById('premium-prompt-content');
        if (!promptContent) return;

        let updatedPrompt = originalPrompt;
        let filledVariables = {};

        // Collect filled values
        document.querySelectorAll('.customize-input').forEach(input => {
            const placeholder = input.dataset.placeholder;
            const value = input.value.trim();

            if (value) {
                filledVariables[placeholder] = value;
            }
        });

        // Replace filled variables and highlight remaining
        let htmlContent = escapeHtml(updatedPrompt);

        variables.forEach(placeholder => {
            const escapedPlaceholder = escapeHtml(placeholder);
            const regex = new RegExp(escapeRegex(escapedPlaceholder), 'g');

            if (filledVariables[placeholder]) {
                // Show filled value with green highlight
                htmlContent = htmlContent.replace(regex,
                    '<span class="prompt-variable-filled">' + escapeHtml(filledVariables[placeholder]) + '</span>'
                );
            } else {
                // Show original placeholder with yellow highlight
                htmlContent = htmlContent.replace(regex,
                    '<span class="prompt-variable">' + escapedPlaceholder + '</span>'
                );
            }
        });

        promptContent.innerHTML = htmlContent;
    }

    function escapeRegex(string) {
        return string.replace(/[.*+?^${}()|[\]\\]/g, '\\$&');
    }

    function escapeHtml(text) {
        const div = document.createElement('div');
        div.textContent = text;
        return div.innerHTML;
    }

    function resetPrompt() {
        // Clear all input fields
        document.querySelectorAll('.customize-input').forEach(input => {
            input.value = '';
        });

        // Re-render with original placeholders highlighted
        renderPromptWithHighlights();

        // Visual feedback
        const resetBtns = document.querySelectorAll('.prompt-header-reset, .prompt-cta-reset');
        resetBtns.forEach(btn => {
            const originalText = btn.querySelector('span').textContent;
            btn.querySelector('span').textContent = 'Reset!';
            setTimeout(() => {
                btn.querySelector('span').textContent = originalText;
            }, 1000);
        });
    }


    function getCustomizedPrompt() {
        let updatedPrompt = originalPrompt;

        document.querySelectorAll('.customize-input').forEach(input => {
            const placeholder = input.dataset.placeholder;
            const value = input.value.trim();

            if (value) {
                const regex = new RegExp(escapeRegex(placeholder), 'g');
                updatedPrompt = updatedPrompt.replace(regex, value);
            }
        });

        return updatedPrompt;
    }
</script>

</div>

<div class="pro-tips-section">

<h2 class="wp-block-heading">Pro Tips for Better AI Prompt Results</h2>



<ul class="wp-block-list">

<li><strong>Lock the “world rules” first.</strong> Give the time period, location, and tone in one clean line before anything else (for example: “1997, coastal Maine, grounded thriller with dry humor”). If you skip this, the prompt will do its best, but you’ll spend time shaving off anachronisms and tonal mismatches.</li>


<li><strong>Define the role in story function, not job title.</strong> “Detective” is a job; “the ally who becomes a liability at the worst time” is a function. If you’re unsure, ask a follow-up like: “Based on the backstory you wrote, list 3 possible story functions for this character and how each would change their fear and flaw.”</li>


<li><strong>Feed it one relationship that actually matters.</strong> Pick one person the character can’t be normal around (mentor, ex, sibling, rival). Then add a constraint such as: “They share a secret neither can admit out loud.” You’ll get cleaner behavior and more playable tension.</li>


<li><strong>Iterate by turning one dial at a time.</strong> After the first output, try asking: “Keep everything else the same, but make their core fear more socially rooted (shame, rejection, exposure) rather than physical danger.” Small shifts produce big scene changes without breaking continuity.</li>


<li><strong>Force specificity with a ‘three concrete moments’ request.</strong> If the backstory feels too general, add: “Rewrite the foundational years as three specific moments with sensory detail, each ending in a belief the character adopts.” Honestly, this is the fastest way to get cinematic texture without melodrama.</li>

</ul>

</div>

<div class="related-prompts-section">

<h2 class="wp-block-heading">Related Prompts</h2>



<p>If you’re building story assets systematically, these prompts help you research the real-world context your characters move through.</p>



<p>If you also need your script’s setting to feel current and defensible, <a href="https://flowpast.com/prompts/create-a-cited-market-trend-report-with-this-ai-prompt/">Create a Cited Market Trend Report with this AI Prompt</a> is useful for grounding industries, technologies, and social shifts in sources (handy for near-future or “ripped from the headlines” stories). It’s a smart pairing when your character’s choices hinge on layoffs, regulation, consumer behavior, or public sentiment.</p>



<p>For teams doing broader research before you lock a premise, <a href="https://flowpast.com/prompts/create-a-market-trend-intelligence-report-ai-prompt/">Create a Market Trend Intelligence Report AI Prompt</a> helps you map what’s changing, why it matters, and where tension points might emerge. That can directly feed character pressure: what they’re competing for, what’s vanishing, and what new moral compromises appear.</p>



<p>When you’re turning research into readable narrative context, <a href="https://flowpast.com/prompts/write-a-market-trends-article-with-this-ai-prompt/">Write a Market Trends Article with this AI Prompt</a> can produce a clean “backgrounder” you can hand to collaborators. It’s especially helpful if your cinematic backstory involves a niche world (biotech, freight logistics, fintech) and you want everyone speaking the same language.</p>


<br>


<p>Quick reference:</p>



<ul class="wp-block-list">

<li><a href="https://flowpast.com/prompts/create-a-cited-market-trend-report-with-this-ai-prompt/">Create a Cited Market Trend Report with this AI Prompt</a>: Source-backed context for believable modern stakes</li>


<li><a href="https://flowpast.com/prompts/create-a-market-trend-intelligence-report-ai-prompt/">Create a Market Trend Intelligence Report AI Prompt</a>: Trends, drivers, risks, and opportunity pressure</li>


<li><a href="https://flowpast.com/prompts/write-a-market-trends-article-with-this-ai-prompt/">Write a Market Trends Article with this AI Prompt</a>: Turn research into a readable brief</li>

<li><a href="https://flowpast.com/prompts/create-market-trend-intelligence-report-ai-prompt/">Create Market Trend Intelligence Report AI Prompt</a>: Alternative format for trend intelligence output</li>

<li><a href="https://flowpast.com/prompts/create-a-tech-market-research-brief-with-this-ai-prompt/">Create a Tech Market Research Brief with this AI Prompt</a>: Fast briefing on tech context and implications</li>
<!-- /wp:post-content -->
</ul>
<!-- /wp:list -->
</div>

<div class="faq-section">
<!-- wp:heading {"level":2} -->
<h2 class="wp-block-heading">Common Questions</h2>
<!-- /wp:heading -->

<div class="faq-item">
<span class="question">Which roles benefit most from this cinematic character backstory AI prompt?</span>
<!-- wp:paragraph -->
<p class="answer"><strong>Screenwriters</strong> use this to turn “cool character ideas” into cause-and-effect motivation that holds up across a full draft. <strong>Script editors</strong> rely on it to diagnose why a character turn feels unearned, then rebuild the internal logic without rewriting the whole plot. <strong>Producers and development execs</strong> use the pre-analysis and scope boundaries to keep backstory aligned with tone, theme, and continuity. <strong>Game narrative designers</strong> benefit because the output focuses on playable strengths, costly flaws, and triggers that can drive choice-based conflict.</p>
<!-- /wp:paragraph -->
</div>

<div class="faq-item">
<span class="question">Which industries get the most value from this cinematic character backstory AI prompt?</span>
<!-- wp:paragraph -->
<p class="answer"><strong>Film and TV production</strong> teams use it to keep character history consistent across rewrites, especially when multiple writers touch the same cast. <strong>Game studios</strong> apply it to create characters whose behavior systems translate into quests, dialogue trees, and failure states (not just lore). <strong>Advertising and brand studios</strong> use it for cinematic campaign characters when they need a believable motive and a clear vulnerability that can carry a series of spots. <strong>Publishing and audio drama creators</strong> find it valuable for building relationship dynamics and arc hooks that survive long-form storytelling.</p>
<!-- /wp:paragraph -->
</div>

<div class="faq-item">
<span class="question">Why do basic AI prompts for writing a character backstory produce weak results?</span>
<!-- wp:paragraph -->
<p class="answer">A typical prompt like “Write me a backstory for my character” fails because it: lacks setting constraints (so you get anachronisms and tone drift), provides no cause → effect framework (so wounds don’t explain behaviors), ignores story function and relationship dynamics (so nothing connects to scenes), produces generic traits instead of actionable history you can dramatize, and misses edge-case handling when inputs are vague (so you get confident nonsense instead of labeled assumptions or clarifying questions).</p>
<!-- /wp:paragraph -->
</div>

<div class="faq-item">
<span class="question">Can I customize this cinematic character backstory prompt for my specific situation?</span>
<!-- wp:paragraph -->
<p class="answer">Yes, and you should. The most important “variables” to adjust are your time period, location, tone, themes, the character’s story function, and one or two key relationships that shape their choices under pressure. If the first output feels too soft, follow up with: “Rewrite the character engine so the core desire is concrete and externally measurable, and add one belief they’d defend in dialogue.” You can also ask the prompt to reduce scope: “Keep only the foundational years that directly explain their central weakness.”</p>
<!-- /wp:paragraph -->
</div>

<div class="faq-item">
<span class="question">What are the most common mistakes when using this cinematic character backstory prompt?</span>
<!-- wp:paragraph -->
<p class="answer">The biggest mistake is leaving the setting too vague—“modern day city” will drift, while “2012, Albuquerque, post-recession realism” gives the backstory real friction. Another common error is using abstract themes like “love” instead of playable themes like “loyalty versus self-preservation under surveillance,” which sharpens choices. People also describe the role as “main character” rather than a function such as “the idealist who keeps rationalizing compromises,” and the output becomes mushy. Finally, skipping relationship specifics hurts; “has a complicated family” is weak, but “estranged father who only calls when he needs money” creates immediate scene fuel.</p>
<!-- /wp:paragraph -->
</div>

<div class="faq-item">
<span class="question">Who should NOT use this cinematic character backstory prompt?</span>
<!-- wp:paragraph -->
<p class="answer">This prompt isn’t ideal for projects where you only need a quick archetype sketch and won’t iterate, because it’s designed to produce internally consistent logic you’ll refine. It’s also not the best fit if you’re still unsure about the script’s time period, tone, or themes and you don’t want to make assumptions yet. If you mainly want scene pages or a full plot outline, use a screenplay-structuring workflow first, then come back to this once the character’s story function is clearer.</p>
<!-- /wp:paragraph -->
</div>

<script type="application/ld+json">
{
  "@context": "https://schema.org",
  "@type": "FAQPage",
  "mainEntity": [
    {
      "@type": "Question",
      "name": "Which roles benefit most from this cinematic character backstory AI prompt?",
      "acceptedAnswer": {
        "@type": "Answer",
        "text": "Screenwriters use this to turn “cool character ideas” into cause-and-effect motivation that holds up across a full draft. Script editors rely on it to diagnose why a character turn feels unearned, then rebuild the internal logic without rewriting the whole plot. Producers and development execs use the pre-analysis and scope boundaries to keep backstory aligned with tone, theme, and continuity. Game narrative designers benefit because the output focuses on playable strengths, costly flaws, and triggers that can drive choice-based conflict."
      }
    },
    {
      "@type": "Question",
      "name": "Which industries get the most value from this cinematic character backstory AI prompt?",
      "acceptedAnswer": {
        "@type": "Answer",
        "text": "Film and TV production teams use it to keep character history consistent across rewrites, especially when multiple writers touch the same cast. Game studios apply it to create characters whose behavior systems translate into quests, dialogue trees, and failure states (not just lore). Advertising and brand studios use it for cinematic campaign characters when they need a believable motive and a clear vulnerability that can carry a series of spots. Publishing and audio drama creators find it valuable for building relationship dynamics and arc hooks that survive long-form storytelling."
      }
    },
    {
      "@type": "Question",
      "name": "Why do basic AI prompts for writing a character backstory produce weak results?",
      "acceptedAnswer": {
        "@type": "Answer",
        "text": "A typical prompt like “Write me a backstory for my character” fails because it: lacks setting constraints (so you get anachronisms and tone drift), provides no cause → effect framework (so wounds don’t explain behaviors), ignores story function and relationship dynamics (so nothing connects to scenes), produces generic traits instead of actionable history you can dramatize, and misses edge-case handling when inputs are vague (so you get confident nonsense instead of labeled assumptions or clarifying questions)."
      }
    },
    {
      "@type": "Question",
      "name": "Can I customize this cinematic character backstory prompt for my specific situation?",
      "acceptedAnswer": {
        "@type": "Answer",
        "text": "Yes, and you should. The most important “variables” to adjust are your time period, location, tone, themes, the character’s story function, and one or two key relationships that shape their choices under pressure. If the first output feels too soft, follow up with: “Rewrite the character engine so the core desire is concrete and externally measurable, and add one belief they’d defend in dialogue.” You can also ask the prompt to reduce scope: “Keep only the foundational years that directly explain their central weakness.”"
      }
    },
    {
      "@type": "Question",
      "name": "What are the most common mistakes when using this cinematic character backstory prompt?",
      "acceptedAnswer": {
        "@type": "Answer",
        "text": "The biggest mistake is leaving the setting too vague—“modern day city” will drift, while “2012, Albuquerque, post-recession realism” gives the backstory real friction. Another common error is using abstract themes like “love” instead of playable themes like “loyalty versus self-preservation under surveillance,” which sharpens choices. People also describe the role as “main character” rather than a function such as “the idealist who keeps rationalizing compromises,” and the output becomes mushy. Finally, skipping relationship specifics hurts; “has a complicated family” is weak, but “estranged father who only calls when he needs money” creates immediate scene fuel."
      }
    },
    {
      "@type": "Question",
      "name": "Who should NOT use this cinematic character backstory prompt?",
      "acceptedAnswer": {
        "@type": "Answer",
        "text": "This prompt isn’t ideal for projects where you only need a quick archetype sketch and won’t iterate, because it’s designed to produce internally consistent logic you’ll refine. It’s also not the best fit if you’re still unsure about the script’s time period, tone, or themes and you don’t want to make assumptions yet. If you mainly want scene pages or a full plot outline, use a screenplay-structuring workflow first, then come back to this once the character’s story function is clearer."
      }
    }
  ]
}
</script>
</div>

<div class="closing-section">
<!-- wp:paragraph -->
<p>A believable character is a chain of causes, not a list of traits. Paste the prompt into your AI tool, answer the clarifying questions if they appear, and use the backstory hooks to write scenes that finally feel inevitable.</p>
<!-- /wp:paragraph -->
</div>]]></content:encoded>
					
		
		
		<media:content url="https://flowpast.s3.eu-north-1.amazonaws.com/featured_blog_images/5000616.webp" medium="image"></media:content>
            	</item>
		<item>
		<title>Write Character Dialogue Scenes with this AI Prompt</title>
		<link>https://flowpast.com/prompts/write-character-dialogue-scenes-with-this-ai-prompt/</link>
		
		<dc:creator><![CDATA[Lisa Granqvist]]></dc:creator>
		<pubDate>Fri, 23 Jan 2026 02:20:25 +0000</pubDate>
				<category><![CDATA[Prompts]]></category>
		<guid isPermaLink="false">https://flowpast.com/?p=5000615</guid>

					<description><![CDATA[Flat scenes kill retention - this AI Prompt writes a character-led dialogue with subtext, tension, and a turning point. Explore thousands of AI prompts by function and industry.]]></description>
										<content:encoded><![CDATA[<!-- FOCUS_KEYWORD: character dialogue prompt -->

<div class="hook-introduction">

<p>Flat dialogue is usually the culprit. Characters explain things they would never say out loud, the scene goes nowhere, and the “conflict” feels like polite disagreement. Then viewers click away because nothing changes.</p>



<p>This <strong>character dialogue prompt</strong> is built for <strong>screenwriters</strong> rewriting a dead scene the night before a table read, <strong>YouTube creators</strong> who need a performable two-person conversation that carries a point without sounding scripted, and <strong>brand strategists</strong> producing narrative ads where tension and subtext do the selling. The output is a dialogue-led scene with distinct voices, light nonverbal beats, a clear escalation, and a turning point that shifts stakes and relationships.</p>

</div>

<div class="what-and-when-section">

<h2 class="wp-block-heading">What Does This AI Prompt Do and When to Use It?</h2>



<table class="solution-results-table three-column" role="presentation" aria-label="What this prompt does, when to use it, and what you get">
 <thead>
    <tr>
      <th scope="col">What This Prompt Does</th>
      <th scope="col">When to Use This Prompt</th>
      <th scope="col">What You&#8217;ll Get</th>
    </tr>
  </thead>
  <tbody>
    <tr>
      <td>
        <ul class="automation-list">
          <li>It starts with a 3–5 bullet pre-analysis to confirm the setting, what each character wants, and the friction point driving the scene.</li>
          <li>It frames the moment with a concise setup that pins location, time, and the immediate pressure that forces the conversation now.</li>
          <li>It generates “character quick cards” that specify emotional state, hidden fear, and a conversational tactic for each person.</li>
          <li>It maps intent at two levels, separating the public scene objective from each character’s private objective (often the real fuel).</li>
          <li>It writes performable dialogue with subtext, distinct voices, and minimal stage direction that sharpens meaning rather than narrating it.</li>
       </ul>
      </td>
      <td>
        <ul class="results-list">
          <li>A scene reads fine on paper but feels slow in rehearsal because nobody is pursuing anything.</li>
          <li>You have a topic (jealousy, loyalty, money, power, trust) and you need characters to argue it without turning into a TED Talk.</li>
          <li>The episode or script needs a pivot in relationship dynamics, but you can’t find a believable turning point.</li>
          <li>You’re competing with faster, sharper content and your dialogue must earn attention in the first line.</li>
          <li>You are scaling a series or campaign and need repeatable scene structure that still sounds human.</li>
        </ul>
      </td>
       <td>
         <ul class="deliverables-list">
           <li>A 3–5 bullet “readback” of stakes, wants, and the key friction point.</li>
           <li>A short scene setup (location, time, immediate pressure) in 2–4 sentences.</li>
           <li>Character quick cards for each speaker, including hidden fear and conversational tactic.</li>
           <li>A dialogue scene with light nonverbal beats (pauses, distance, gestures) placed only where they change the read.</li>
           <li>A clear turning point that changes stakes and how the characters relate by the final lines.</li>
         </ul>
       </td>
    </tr>
  </tbody>
</table>

</div>

<div class="prompt-display-section">

<h2 class="wp-block-heading">The Full AI Prompt: Character-Led Dialogue Scene Builder</h2>



<div class="prompt-viewer-wrapper" id="prompt-section">
    <div class="prompt-comparison-row prompt-premium">
        <!-- Header with buttons -->
        <div class="prompt-row-header">
            <!-- <span class="prompt-row-icon">✨</span> -->
            <span class="prompt-row-title">
                                    Step 1: Customize the prompt with your input
                            </span>
            <div class="prompt-header-buttons">
                                    <button class="prompt-header-btn prompt-header-reset" onclick="resetPrompt()">
                        <svg xmlns="http://www.w3.org/2000/svg" width="16" height="16" fill="currentColor" viewBox="0 0 16 16">
                            <path fill-rule="evenodd" d="M8 3a5 5 0 1 0 4.546 2.914.5.5 0 0 1 .908-.417A6 6 0 1 1 8 2v1z" />
                            <path d="M8 4.466V.534a.25.25 0 0 1 .41-.192l2.36 1.966c.12.1.12.284 0 .384L8.41 4.658A.25.25 0 0 1 8 4.466z" />
                        </svg>
                        <span>Reset</span>
                    </button>
                                <button class="prompt-header-btn prompt-header-copy-green flowpast-copy-prompt-btn" onclick="handlePromptCopy()">
                    <svg xmlns="http://www.w3.org/2000/svg" width="16" height="16" fill="currentColor" viewBox="0 0 16 16">
                        <path d="M4 1.5H3a2 2 0 0 0-2 2V14a2 2 0 0 0 2 2h10a2 2 0 0 0 2-2V3.5a2 2 0 0 0-2-2h-1v1h1a1 1 0 0 1 1 1V14a1 1 0 0 1-1 1H3a1 1 0 0 1-1-1V3.5a1 1 0 0 1 1-1h1v-1z" />
                        <path d="M9.5 1a.5.5 0 0 1 .5.5v1a.5.5 0 0 1-.5.5h-3a.5.5 0 0 1-.5-.5v-1a.5.5 0 0 1 .5-.5h3zm-3-1A1.5 1.5 0 0 0 5 1.5v1A1.5 1.5 0 0 0 6.5 4h3A1.5 1.5 0 0 0 11 2.5v-1A1.5 1.5 0 0 0 9.5 0h-3z" />
                    </svg>
                    <span>Customize and Copy Full Prompt</span>
                </button>
            </div>
        </div>

        <!-- Customize the Prompt Section -->
                    <div class="prompt-customize-section">
                <span class="customize-title">Customize the Prompt</span>
                <p class="customize-subtitle">Fill in the fields below to personalize this prompt for your needs.</p>
                <table class="customize-table">
                    <thead>
                        <tr>
                            <th>Variable</th>
                            <th>What to Enter</th>
                            <th>Customise the prompt</th>
                        </tr>
                    </thead>
                    <tbody>
                                                    <tr>
                                <td class="var-name"><code>[TOPIC]</code></td>
                                <td class="var-desc">
                                    Specify the theme, subject, or issue the dialogue should explore. This could be an abstract idea or a specific situation relevant to the characters.                                    <div class="var-example">For example: "The ethics of using AI in creative industries."</div>
                                </td>
                                <td class="var-input">
                                                                            <input
                                            type="text"
                                            class="customize-input"
                                            data-placeholder="[TOPIC]"
                                            placeholder="Enter your value here..." />
                                                                    </td>
                            </tr>
                                                    <tr>
                                <td class="var-name"><code>[CHARACTERS]</code></td>
                                <td class="var-desc">
                                    List the characters involved in the dialogue, including their names and roles in the scene. You can include brief notes on their relationship or dynamic.                                    <div class="var-example">For example: "Emma (a cynical journalist) and David (an idealistic AI researcher)."</div>
                                </td>
                                <td class="var-input">
                                                                            <textarea
                                            class="customize-input"
                                            data-placeholder="[CHARACTERS]"
                                            placeholder="Enter your value here..."
                                            rows="3"></textarea>
                                                                    </td>
                            </tr>
                                                    <tr>
                                <td class="var-name"><code>[DIALOGUE_OBJECTIVE]</code></td>
                                <td class="var-desc">
                                    Describe the purpose of the dialogue, such as what it should reveal, escalate, or change in the story or between the characters.                                    <div class="var-example">For example: "To reveal Emma&#039;s distrust of AI while David tries to convince her of its potential to solve societal issues."</div>
                                </td>
                                <td class="var-input">
                                                                            <textarea
                                            class="customize-input"
                                            data-placeholder="[DIALOGUE_OBJECTIVE]"
                                            placeholder="Enter your value here..."
                                            rows="3"></textarea>
                                                                    </td>
                            </tr>
                                                    <tr>
                                <td class="var-name"><code>[SETTING_AND_SITUATION]</code></td>
                                <td class="var-desc">
                                    Provide details about where and when the scene takes place, along with the immediate reason for the conversation happening now.                                    <div class="var-example">For example: "A late-night coffee shop during a storm, where Emma and David are stuck after a tech conference panel debate."</div>
                                </td>
                                <td class="var-input">
                                                                            <textarea
                                            class="customize-input"
                                            data-placeholder="[SETTING_AND_SITUATION]"
                                            placeholder="Enter your value here..."
                                            rows="3"></textarea>
                                                                    </td>
                            </tr>
                                                    <tr>
                                <td class="var-name"><code>[CHARACTER_1_TRAITS_AND_BACKGROUND]</code></td>
                                <td class="var-desc">
                                    Describe the first character&#039;s personality, emotional state, and relevant backstory that influences their behavior in the scene.                                    <div class="var-example">For example: "Emma: Sharp-tongued, skeptical, and guarded. Grew up in a family that distrusted technology after a major corporate scandal."</div>
                                </td>
                                <td class="var-input">
                                                                            <textarea
                                            class="customize-input"
                                            data-placeholder="[CHARACTER_1_TRAITS_AND_BACKGROUND]"
                                            placeholder="Enter your value here..."
                                            rows="3"></textarea>
                                                                    </td>
                            </tr>
                                                    <tr>
                                <td class="var-name"><code>[CHARACTER_2_TRAITS_AND_BACKGROUND]</code></td>
                                <td class="var-desc">
                                    Describe the second character&#039;s personality, emotional state, and relevant backstory that influences their behavior in the scene.                                    <div class="var-example">For example: "David: Optimistic, passionate, and slightly naive. Believes in AI&#039;s potential after witnessing its impact on healthcare in his community."</div>
                                </td>
                                <td class="var-input">
                                                                            <textarea
                                            class="customize-input"
                                            data-placeholder="[CHARACTER_2_TRAITS_AND_BACKGROUND]"
                                            placeholder="Enter your value here..."
                                            rows="3"></textarea>
                                                                    </td>
                            </tr>
                                                    <tr>
                                <td class="var-name"><code>[BRAND_VOICE]</code></td>
                                <td class="var-desc">
                                    Define the tone and style of the dialogue, including whether it should be formal, casual, humorous, or emotionally intense.                                    <div class="var-example">For example: "Grounded and conversational, with subtle humor and emotionally resonant moments."</div>
                                </td>
                                <td class="var-input">
                                                                            <textarea
                                            class="customize-input"
                                            data-placeholder="[BRAND_VOICE]"
                                            placeholder="Enter your value here..."
                                            rows="3"></textarea>
                                                                    </td>
                            </tr>
                                                    <tr>
                                <td class="var-name"><code>[FORMAT]</code></td>
                                <td class="var-desc">
                                    Specify the structure or presentation style for the dialogue, such as screenplay format, prose, or a hybrid style.                                    <div class="var-example">For example: "Screenplay format with clear character labels and light stage directions."</div>
                                </td>
                                <td class="var-input">
                                                                            <input
                                            type="text"
                                            class="customize-input"
                                            data-placeholder="[FORMAT]"
                                            placeholder="Enter your value here..." />
                                                                    </td>
                            </tr>
                                            </tbody>
                </table>

                <button class="copy-customized-btn flowpast-copy-prompt-btn" onclick="handlePromptCopy()">
                    <svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" fill="currentColor" viewBox="0 0 16 16">
                        <path d="M4 1.5H3a2 2 0 0 0-2 2V14a2 2 0 0 0 2 2h10a2 2 0 0 0 2-2V3.5a2 2 0 0 0-2-2h-1v1h1a1 1 0 0 1 1 1V14a1 1 0 0 1-1 1H3a1 1 0 0 1-1-1V3.5a1 1 0 0 1 1-1h1v-1z" />
                        <path d="M9.5 1a.5.5 0 0 1 .5.5v1a.5.5 0 0 1-.5.5h-3a.5.5 0 0 1-.5-.5v-1a.5.5 0 0 1 .5-.5h3zm-3-1A1.5 1.5 0 0 0 5 1.5v1A1.5 1.5 0 0 0 6.5 4h3A1.5 1.5 0 0 0 11 2.5v-1A1.5 1.5 0 0 0 9.5 0h-3z" />
                    </svg>
                    <span class="copy-customized-text">Customise the prompt now</span>
                </button>
            </div>
        
        <!-- Full Prompt Code Header -->
                    <div class="prompt-code-header">
                <span class="prompt-code-title">
                    Step 2: Copy the Prompt
                </span>
                <div class="prompt-code-buttons">
                    <!-- Reset: Only visible when unlocked -->
                    <button class="prompt-header-btn prompt-header-reset btn-when-unlocked" onclick="resetPrompt()" style="display: none;">
                        <svg xmlns="http://www.w3.org/2000/svg" width="16" height="16" fill="currentColor" viewBox="0 0 16 16">
                            <path fill-rule="evenodd" d="M8 3a5 5 0 1 0 4.546 2.914.5.5 0 0 1 .908-.417A6 6 0 1 1 8 2v1z" />
                            <path d="M8 4.466V.534a.25.25 0 0 1 .41-.192l2.36 1.966c.12.1.12.284 0 .384L8.41 4.658A.25.25 0 0 1 8 4.466z" />
                        </svg>
                        <span>Reset</span>
                    </button>
                    <!-- Copy Full Prompt -->
                    <button class="prompt-header-btn prompt-header-copy flowpast-copy-prompt-btn" onclick="handlePromptCopy()">
                        <svg xmlns="http://www.w3.org/2000/svg" width="16" height="16" fill="currentColor" viewBox="0 0 16 16">
                            <path d="M4 1.5H3a2 2 0 0 0-2 2V14a2 2 0 0 0 2 2h10a2 2 0 0 0 2-2V3.5a2 2 0 0 0-2-2h-1v1h1a1 1 0 0 1 1 1V14a1 1 0 0 1-1 1H3a1 1 0 0 1-1-1V3.5a1 1 0 0 1 1-1h1v-1z" />
                            <path d="M9.5 1a.5.5 0 0 1 .5.5v1a.5.5 0 0 1-.5.5h-3a.5.5 0 0 1-.5-.5v-1a.5.5 0 0 1 .5-.5h3zm-3-1A1.5 1.5 0 0 0 5 1.5v1A1.5 1.5 0 0 0 6.5 4h3A1.5 1.5 0 0 0 11 2.5v-1A1.5 1.5 0 0 0 9.5 0h-3z" />
                        </svg>
                        <span>Copy Full Prompt</span>
                    </button>
                </div>
            </div>
        

        <!-- Prompt Content -->
        <div class="prompt-box prompt-gated-wrapper">
            <!-- Gated: Blurred content -->
            <div class="prompt-gated-content">
                <div class="prompt-header-visible">OBJECTIVE</div><div class="locked-section"><div class="locked-section-bg"><div class="locked-section-lines"><div class="locked-line" style="width: 85%;"></div><div class="locked-line" style="width: 78%;"></div></div></div><div class="locked-section-icon">🔒</div></div><div class="prompt-header-visible">PERSONA</div><div class="locked-section"><div class="locked-section-bg"><div class="locked-section-lines"><div class="locked-line" style="width: 85%;"></div><div class="locked-line" style="width: 78%;"></div></div></div><div class="locked-section-icon">🔒</div></div><div class="prompt-header-visible">CONSTRAINTS</div><div class="locked-section"><div class="locked-section-bg"><div class="locked-section-lines"><div class="locked-line" style="width: 85%;"></div><div class="locked-line" style="width: 78%;"></div><div class="locked-line" style="width: 92%;"></div><div class="locked-line" style="width: 75%;"></div><div class="locked-line" style="width: 88%;"></div></div></div><div class="locked-section-icon">🔒</div></div><div class="prompt-header-visible subheader">What This Is NOT</div><div class="locked-section"><div class="locked-section-bg"><div class="locked-section-lines"><div class="locked-line" style="width: 85%;"></div><div class="locked-line" style="width: 78%;"></div><div class="locked-line" style="width: 92%;"></div><div class="locked-line" style="width: 75%;"></div></div></div><div class="locked-section-icon">🔒</div></div><div class="prompt-header-visible">PROCESS</div><div class="locked-section"><div class="locked-section-bg"><div class="locked-section-lines"><div class="locked-line" style="width: 85%;"></div><div class="locked-line" style="width: 78%;"></div><div class="locked-line" style="width: 92%;"></div><div class="locked-line" style="width: 75%;"></div><div class="locked-line" style="width: 88%;"></div><div class="locked-line" style="width: 72%;"></div><div class="locked-line" style="width: 80%;"></div><div class="locked-line" style="width: 95%;"></div><div class="locked-line" style="width: 70%;"></div><div class="locked-line" style="width: 83%;"></div><div class="locked-line" style="width: 85%;"></div><div class="locked-line" style="width: 78%;"></div></div></div><div class="locked-section-icon">🔒</div></div><div class="prompt-header-visible subheader">Edge Case Handling</div><div class="locked-section"><div class="locked-section-bg"><div class="locked-section-lines"><div class="locked-line" style="width: 85%;"></div><div class="locked-line" style="width: 78%;"></div><div class="locked-line" style="width: 92%;"></div></div></div><div class="locked-section-icon">🔒</div></div><div class="prompt-header-visible">INPUTS</div><div class="locked-section"><div class="locked-section-bg"><div class="locked-section-lines"><div class="locked-line" style="width: 85%;"></div><div class="locked-line" style="width: 78%;"></div><div class="locked-line" style="width: 92%;"></div><div class="locked-line" style="width: 75%;"></div><div class="locked-line" style="width: 88%;"></div><div class="locked-line" style="width: 72%;"></div><div class="locked-line" style="width: 80%;"></div><div class="locked-line" style="width: 95%;"></div></div></div><div class="locked-section-icon">🔒</div></div><div class="prompt-header-visible">OUTPUT SPECIFICATION</div><div class="locked-section"><div class="locked-section-bg"><div class="locked-section-lines"><div class="locked-line" style="width: 85%;"></div><div class="locked-line" style="width: 78%;"></div><div class="locked-line" style="width: 92%;"></div><div class="locked-line" style="width: 75%;"></div><div class="locked-line" style="width: 88%;"></div><div class="locked-line" style="width: 72%;"></div><div class="locked-line" style="width: 80%;"></div><div class="locked-line" style="width: 95%;"></div><div class="locked-line" style="width: 70%;"></div><div class="locked-line" style="width: 83%;"></div><div class="locked-line" style="width: 85%;"></div><div class="locked-line" style="width: 78%;"></div><div class="locked-line" style="width: 92%;"></div><div class="locked-line" style="width: 75%;"></div><div class="locked-line" style="width: 88%;"></div><div class="locked-line" style="width: 72%;"></div><div class="locked-line" style="width: 80%;"></div><div class="locked-line" style="width: 95%;"></div><div class="locked-line" style="width: 70%;"></div><div class="locked-line" style="width: 83%;"></div><div class="locked-line" style="width: 85%;"></div><div class="locked-line" style="width: 78%;"></div></div></div><div class="locked-section-icon">🔒</div></div><div class="prompt-header-visible">QUALITY CHECKS</div><div class="locked-section"><div class="locked-section-bg"><div class="locked-section-lines"><div class="locked-line" style="width: 85%;"></div><div class="locked-line" style="width: 78%;"></div><div class="locked-line" style="width: 92%;"></div><div class="locked-line" style="width: 75%;"></div><div class="locked-line" style="width: 88%;"></div><div class="locked-line" style="width: 72%;"></div></div></div><div class="locked-section-icon">🔒</div></div>            </div>
            <!-- Unlocked: Full content (hidden by default) -->
            <div class="prompt-content-full" id="premium-prompt-content" style="display: none;">
                ## OBJECTIVE
Create a character-led scene written as dialogue that feels true-to-life, explores [TOPIC] from multiple angles, and moves the story forward by shifting stakes, revealing motivation, and changing how the characters relate to each other.

## PERSONA
You are a seasoned screen/video dialogue writer with a strong feel for subtext, pacing, and character voice. You write performable lines that actors can inhabit, with economical stage direction and emotionally credible turns.

## CONSTRAINTS
- Keep the conversation grounded: no exposition dumps, no “as you know” speeches, and no unnatural explaining-for-the-audience.
- Every line must do at least one job: reveal character, escalate tension, clarify desire, or alter the scene’s direction.
- Include light nonverbal beats (gesture, pauses, eye contact, physical distance) only where they sharpen meaning.
- Ensure each character sounds distinct in word choice, rhythm, and attitude.
- Avoid melodrama unless it’s supported by the provided character backgrounds and situation.

### What This Is NOT
- Not a full outline of the entire story or episode.
- Not a monologue-heavy essay about [TOPIC].
- Not generic banter disconnected from the plot objective.
- Not therapy-speak unless it authentically fits the character(s).

## PROCESS
1. **Pre-analysis (state your understanding first):** In 3–5 bullet points, confirm your read on the setting, what each character wants, the friction point, and what must change by the end of the scene.
2. **Scene framing:** Write a concise setup that anchors location, time, and the immediate pressure causing the conversation now.
3. **Character quick cards:** Summarize each character’s current emotional state, hidden fear, and conversational tactic (e.g., deflecting, probing, performing, pleading).
4. **Intent mapping:** Clarify the scene-level objective and the private objective for each character (they can differ).
5. **Write the dialogue:**  
   - Start with an attention anchor line that drops us into motion or tension.  
   - Alternate voices clearly.  
   - Work in subtext: let characters imply, dodge, or test rather than always stating.  
   - Add a hook mechanism: a reveal, accusation, misinterpretation, or new information that forces the scene to pivot.  
   - Include a disagreement that meaningfully intensifies (not a petty spat).  
   - End on a turning point: a decision, a vow, a rupture, a compromise, or a new question that sets up the next beat.
6. **Reflection:** After the scene, briefly explain how the exchange shifted power, trust, or intimacy—and what it foreshadows.

### Edge Case Handling
- If any input is missing or vague, make the smallest reasonable assumption and label it as **Assumption** before writing.
- If more than two characters are listed in [CHARACTERS] but only two profiles are provided, prioritize the two with profiles and assign others minimal “supporting presence” lines unless instructed otherwise.
- If [DIALOGUE_OBJECTIVE] conflicts with [SETTING_AND_SITUATION], ask up to 3 clarifying questions; if answers aren’t available, default to the objective and adapt the setting.

## INPUTS
- **Characters involved:** [CHARACTERS]  
- **Topic to be explored:** [TOPIC]  
- **Character 1 traits/background:** [CHARACTER_1_TRAITS_AND_BACKGROUND]  
- **Character 2 traits/background:** [CHARACTER_2_TRAITS_AND_BACKGROUND]  
- **Scene setting &amp; lead-in circumstances:** [SETTING_AND_SITUATION]  
- **What the scene must accomplish:** [DIALOGUE_OBJECTIVE]  
- **Brand voice / style reference (optional):** [BRAND_VOICE]  
- **Preferred format/length constraints (optional):** [FORMAT]  

## OUTPUT SPECIFICATION
Provide the deliverable in this order:

1. **Pre-Analysis Summary**
   - {Understanding Bullets}

2. **Scene Setup**
   - {Location}
   - {Time/Atmosphere}
   - {Immediate Situation}

3. **Character Quick Cards**
   - {Character Name}: {Surface Mood}, {Hidden Fear}, {Tactic}, {Power Position}
   - (Repeat for each primary character)

4. **Intent Mapping**
   - {Scene Objective}
   - {Character A Private Objective}
   - {Character B Private Objective}

5. **Dialogue Script**
   - Use this format consistently:  
     - **{Character Name}:** {Spoken Line}  
       *({Action/Nonverbal Cue — brief})*  
   - Include: {Attention Anchor Line}, {Conflict Beat}, {Pivot Moment}, {Closing Turning Point}

6. **Reflection**
   - {Relationship Shift}
   - {What It Signals Next}

## QUALITY CHECKS
Before finalizing, verify:
- The topic [TOPIC] is addressed through opposing or contrasting viewpoints, not a one-sided speech.
- Each character has a distinct voice and consistent behavior aligned to their profile.
- The scene contains a clear escalation and a noticeable turn by the ending beat.
- Nonverbal cues enhance subtext without cluttering the page.
- The reflection accurately describes how the scene changes future interactions (not just what was said).            </div>
        </div>


    </div>

    <!-- CTA Row - Full width buttons -->
    <div class="prompt-cta-row">
        <button class="prompt-cta-btn prompt-cta-copy flowpast-copy-prompt-btn" onclick="handlePromptCopy()">
            <svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" fill="currentColor" viewBox="0 0 16 16">
                <path d="M4 1.5H3a2 2 0 0 0-2 2V14a2 2 0 0 0 2 2h10a2 2 0 0 0 2-2V3.5a2 2 0 0 0-2-2h-1v1h1a1 1 0 0 1 1 1V14a1 1 0 0 1-1 1H3a1 1 0 0 1-1-1V3.5a1 1 0 0 1 1-1h1v-1z" />
                <path d="M9.5 1a.5.5 0 0 1 .5.5v1a.5.5 0 0 1-.5.5h-3a.5.5 0 0 1-.5-.5v-1a.5.5 0 0 1 .5-.5h3zm-3-1A1.5 1.5 0 0 0 5 1.5v1A1.5 1.5 0 0 0 6.5 4h3A1.5 1.5 0 0 0 11 2.5v-1A1.5 1.5 0 0 0 9.5 0h-3z" />
            </svg>
            <span class="cta-copy-text">Copy Full Prompt</span>
        </button>
    </div>
</div>

<style>
    /* Gated prompt states */
    .prompt-gated-wrapper {
        position: relative;
    }

    /* When unlocked - show full content, hide gated */
    body.flowpast-unlocked .prompt-gated-wrapper .prompt-gated-content {
        display: none;
    }

    body.flowpast-unlocked .prompt-gated-wrapper .prompt-content-full {
        display: block !important;
    }

    /* Show/hide elements based on unlock state */
    body.flowpast-unlocked .btn-when-unlocked {
        display: inline-flex !important;
    }

    .prompt-viewer-wrapper {
        scroll-margin-top: 250px;
    }

    /* ========================================
   PROMPT VIEWER - MAIN WRAPPER
   ======================================== */
    .prompt-viewer-wrapper {
        margin: 30px 0;
        display: flex;
        flex-direction: column;
        gap: 20px;
    }

    /* ========================================
   PROMPT BOX CONTAINER
   ======================================== */
    .prompt-comparison-row {
        border-radius: 12px;
        overflow: hidden;
        border: 1px solid #e0e0e0;
        background: #fff;
    }

    /* ========================================
   HEADER WITH BUTTONS
   ======================================== */
    .prompt-row-header {
        display: flex;
        align-items: center;
        gap: 10px;
        padding: 14px 20px;
        color: #fff !important;
        background: #141414;
        border-bottom: 1px solid #e0e0e0;
        flex-wrap: wrap;
    }

    .prompt-row-icon {
        font-size: 20px;
    }

    .prompt-row-title {
        font-weight: 600;
        font-size: 22px;
        color: #fff !important;
        text-decoration: underline
    }

    .prompt-header-buttons {
        margin-left: auto;
        display: flex;
        gap: 10px;
        flex-wrap: wrap;
    }

    /* Header buttons */
    .prompt-header-btn {
        display: inline-flex;
        align-items: center;
        gap: 8px;
        padding: 10px 20px;
        border-radius: 6px;
        font-size: 14px;
        font-weight: 600;
        cursor: pointer;
        transition: all 0.2s;
        text-decoration: none;
        border: none;
    }

    .prompt-header-copy {
        background: #3a3a3a;
        color: #fff;
    }

    .prompt-header-copy:hover {
        background: #2a2a2a;
    }

    .prompt-header-copy.copied {
        background: #2e7d32;
    }

    .prompt-header-copy-green {
        background: #04AA6D !important;
        color: #fff !important;
    }

    .prompt-header-copy-green:hover {
        background: #039860 !important;
    }

    .prompt-header-copy-green.copied {
        background: #2e7d32 !important;
    }

    .prompt-header-access {
        background: rgb(5, 152, 98);
        color: #fff !important;
    }

    .prompt-header-access:hover {
        background: rgb(4, 130, 83);
        transform: translateY(-1px);
    }

    /* ========================================
   PROMPT CONTENT - FULL (NO SCROLL)
   ======================================== */
    .prompt-box {
        background: #ffffff;
    }

    .prompt-content-full {
        padding: 24px;
        margin: 0;
        color: #202124;
        background: #ffffff;
        font-family: 'Fira Code', 'Monaco', 'Consolas', monospace;
        font-size: 13px;
        line-height: 1.7;
        white-space: pre-wrap;
        word-wrap: break-word;
        /* No scroll - show full content */
        max-height: none;
        overflow: visible;
    }

    /* Highlighted variable in prompt */
    .prompt-variable {
        background: #fff3cd;
        color: #1967d2;
        font-weight: 700;
        padding: 2px 4px;
        border-radius: 3px;
        border: 1px solid #ffc107;
    }

    .prompt-variable-filled {
        background: #d4edda;
        color: #155724;
        font-weight: 700;
        padding: 2px 4px;
        border-radius: 3px;
        border: 1px solid #28a745;
    }

    /* ========================================
   GATED CONTENT (NO ACCESS)
   ======================================== */
    .prompt-gated-content {
        padding: 24px;
        background: #ffffff;
        font-family: 'Fira Code', 'Monaco', 'Consolas', monospace;
        font-size: 13px;
        line-height: 1.8;
        max-height: none;
        overflow: visible;
        user-select: none;
        -webkit-user-select: none;
        -moz-user-select: none;
        -ms-user-select: none;
        cursor: default;
    }

    /* ## headers - larger, black */
    .prompt-header-visible {
        color: #202124;
        font-weight: 600;
        margin: 5px 0 0px 0;
        font-size: 20px;
        user-select: none;
        -webkit-user-select: none;
        -moz-user-select: none;
        -ms-user-select: none;
        text-decoration: underline;
        text-underline-offset: 4px;
    }

    /* ### headers - smaller, black */
    .prompt-header-visible.subheader {
        color: #202124;
        font-weight: 600;
        margin: 5px 0;
        font-size: 18px;
    }

    .prompt-header-visible:first-child {
        margin-top: 0;
    }

    /* ========================================
   LOCKED SECTION BLOCK
   ======================================== */
    .locked-section {
        position: relative;
        margin: 4px 0 8px 0;
        border-radius: 6px;
        overflow: hidden;
        background: linear-gradient(110deg, #e2e8f0 8%, #f1f5f9 18%, #e2e8f0 33%);
        user-select: none;
        -webkit-user-select: none;
        -moz-user-select: none;
        -ms-user-select: none;
    }

    .locked-section-bg {
        position: relative;
    }

    .locked-section-lines {
        padding: 8px 12px;
        position: relative;
    }

    .locked-line {
        height: 6px;
        background: rgba(255, 255, 255, 0.6);
        border-radius: 3px;
        margin-bottom: 4px;
        margin-left: 12px;
    }

    .locked-line:last-child {
        margin-bottom: 0;
    }

    .locked-section-icon {
        position: absolute;
        top: 50%;
        left: 50%;
        transform: translate(-50%, -50%);
        z-index: 10;
        font-size: 24px;
        filter: drop-shadow(0 1px 3px rgba(0, 0, 0, 0.1));
    }

    /* Subheader locked sections - slightly indented */
    /*  .prompt-header-visible.subheader+.locked-section {
        margin-left: 16px;
    } */

    /* ========================================
   COMPATIBILITY BADGES
   ======================================== */
    .prompt-compatibility {
        display: flex;
        flex-wrap: wrap;
        align-items: center;
        gap: 8px;
        padding: 12px 20px;
        background: #f8f9fa;
        border-top: 1px solid #e0e0e0;
    }

    .compat-label {
        font-size: 13px;
        color: #5f6368;
        font-weight: 500;
    }

    .compat-badge {
        padding: 4px 10px;
        background: #e8f0fe;
        color: #1967d2;
        border-radius: 4px;
        font-size: 12px;
        font-weight: 500;
    }

    /* ========================================
   CTA ROW - FULL WIDTH BUTTONS
   ======================================== */
    .prompt-cta-row {
        display: flex;
        gap: 16px;
        flex-wrap: wrap;
    }

    .prompt-cta-btn {
        flex: 1;
        min-width: 200px;
        display: inline-flex;
        align-items: center;
        justify-content: center;
        gap: 10px;
        padding: 16px 24px;
        border-radius: 8px;
        font-size: 16px;
        font-weight: 600;
        cursor: pointer;
        transition: all 0.2s;
        text-decoration: none;
        border: none;
    }

    .prompt-cta-copy {
        background: #3a3a3a;
        color: #fff;
    }

    .prompt-cta-copy:hover {
        background: #2a2a2a;
        transform: translateY(-2px);
        box-shadow: 0 4px 12px rgba(0, 0, 0, 0.15);
    }

    .prompt-cta-copy.copied {
        background: #2e7d32;
    }

    .prompt-cta-reset {
        background: #3a3a3a;
        color: #fff;
    }

    .prompt-cta-reset:hover {
        background: #2a2a2a;
        transform: translateY(-2px);
        box-shadow: 0 4px 12px rgba(0, 0, 0, 0.15);
    }

    .prompt-cta-access {
        background: rgb(5, 152, 98);
        color: #fff !important;
    }

    .prompt-cta-access:hover {
        background: rgb(4, 130, 83);
        transform: translateY(-2px);
        box-shadow: 0 4px 12px rgba(5, 152, 98, 0.3);
    }

    /* ========================================
    CUSTOMIZE YOUR PROMPT SECTION
    ======================================== */
    .prompt-customize-section {
        padding: 24px;
        border-bottom: 1px solid #e0e0e0;
        background: #fafbfc;
    }

    .customize-title {
        margin: 0 0 8px 0;
        font-size: 18px;
        font-weight: 700;
        color: #202124;
    }

    .customize-subtitle {
        margin: 0 0 20px 0;
        font-size: 14px;
        color: #5f6368;
    }

    .customize-table {
        width: 100%;
        border-collapse: collapse;
        margin-bottom: 20px;
    }

    .customize-table th {
        text-align: left;
        padding: 12px;
        background: #f1f3f4;
        border: 1px solid #e0e0e0;
        font-size: 13px;
        font-weight: 600;
        color: #202124;
    }

    .customize-table td {
        padding: 12px;
        border: 1px solid #e0e0e0;
        vertical-align: top;
    }

    .customize-table .var-name {
        width: 25%;
        background: #f8f9fa;
    }

    .customize-table .var-name code {
        background: #fff3cd;
        color: #1967d2;
        border: 1px solid #ffc107;
        padding: 4px 8px;
        border-radius: 4px;
        font-size: 12px;
        word-break: break-all;
        font-weight: 600;
    }

    .customize-table .var-desc {
        width: 35%;
        font-size: 13px;
        color: #5f6368;
        line-height: 1.5;
    }

    .customize-table .var-example {
        margin-top: 8px;
        padding: 8px 10px;
        background: #f8f9fa;
        border-left: 3px solid #dadce0;
        font-size: 12px;
        color: #5f6368;
        font-style: italic;
        border-radius: 0 4px 4px 0;
    }

    .customize-table .var-input {
        width: 40%;
    }

    .customize-input {
        width: 100%;
        padding: 10px 12px;
        border: 1px solid #dadce0;
        border-radius: 6px;
        font-size: 13px;
        font-family: inherit;
        resize: vertical;
        transition: border-color 0.2s, box-shadow 0.2s;
    }

    .customize-input:focus {
        outline: none;
        border-color: rgb(5, 152, 98);
        box-shadow: 0 0 0 3px rgba(5, 152, 98, 0.1);
    }

    .customize-input::placeholder {
        color: #9aa0a6;
        font-style: italic;
    }

    .copy-customized-btn {
        display: flex;
        align-items: center;
        justify-content: center;
        gap: 10px;
        width: 100%;
        padding: 16px 24px;
        background: rgb(5, 152, 98);
        color: #fff;
        border: none;
        border-radius: 8px;
        font-size: 16px;
        font-weight: 600;
        cursor: pointer;
        transition: all 0.2s;
    }

    .copy-customized-btn:hover {
        background: rgb(4, 130, 83);
        transform: translateY(-2px);
        box-shadow: 0 4px 12px rgba(5, 152, 98, 0.3);
    }

    .copy-customized-btn.copied {
        background: #2e7d32;
    }

    /* ========================================
    FULL PROMPT CODE HEADER
    ======================================== */
    .prompt-code-header {
        display: flex;
        align-items: center;
        justify-content: space-between;
        padding: 10px 20px;
        color: #fff !important;
        background: #141414;
        border-bottom: 1px solid #e0e0e0;
    }

    .prompt-code-title {
        font-size: 22px;
        font-weight: 600;
        text-decoration: underline;

    }

    .prompt-code-buttons {
        display: flex;
        gap: 8px;
    }

    .prompt-code-buttons .prompt-header-btn {
        padding: 8px 14px;
        font-size: 13px;
        background: #ffffff;
        color: #202124;
        border: 1px solid #dadce0;
    }

    .prompt-code-buttons .prompt-header-access {
        background: rgb(5, 152, 98);
        color: #fff !important;
        border-color: rgb(5, 152, 98);
    }

    .prompt-code-buttons .prompt-header-btn.prompt-header-access:hover {
        background: rgb(4, 130, 83) !important;
        border-color: rgb(4, 130, 83);
        color: #fff !important;
    }

    .prompt-code-buttons .prompt-header-btn:hover {
        background: #f1f3f4;
    }

    .prompt-code-buttons .prompt-header-copy.copied {
        background: #d4edda;
        color: #155724;
        border-color: #28a745;
    }

    .prompt-header-reset {
        background: #ffffff;
        color: #202124;
    }

    /* ========================================
   RESPONSIVE
   ======================================== */
    @media (max-width: 768px) {
        .prompt-row-header {
            flex-direction: column;
            align-items: flex-start;
            gap: 12px;
        }

        .prompt-header-buttons {
            margin-left: 0;
            width: 100%;
        }

        .prompt-header-btn {
            flex: 1;
            justify-content: center;
        }

        .prompt-cta-row {
            flex-direction: column;
        }

        .prompt-cta-btn {
            width: 100%;
        }

        /* Customize table responsive */
        .customize-table,
        .customize-table thead,
        .customize-table tbody,
        .customize-table tr,
        .customize-table th,
        .customize-table td {
            display: block;
        }

        .customize-table thead {
            display: none;
        }

        .customize-table tr {
            margin-bottom: 16px;
            border: 1px solid #e0e0e0;
            border-radius: 8px;
            overflow: hidden;
        }

        .customize-table td {
            width: 100% !important;
            border: none;
            border-bottom: 1px solid #e0e0e0;
        }

        .customize-table td:last-child {
            border-bottom: none;
        }

        .customize-table .var-name {
            background: #f1f3f4;
            font-weight: 600;
        }

        .prompt-code-header {
            flex-direction: column;
            gap: 12px;
            align-items: flex-start;
        }

        .prompt-code-buttons {
            width: 100%;
        }

        .prompt-code-buttons .prompt-header-btn {
            flex: 1;
            justify-content: center;
        }
    }
</style>

<script>
    function handlePromptCopy() {
        // Check if unlocked via cookie
        if (typeof window.flowpastIsUnlocked === 'function' && !window.flowpastIsUnlocked()) {
            // Show email popup
            if (typeof window.flowpastShowEmailPopup === 'function') {
                window.flowpastShowEmailPopup('prompt');
            }
            return;
        }

        // Copy the customized prompt (with filled variables)
        const customizedPrompt = getCustomizedPrompt();
        const copyButtons = document.querySelectorAll('.prompt-header-copy, .prompt-header-copy-green, .prompt-cta-copy, .copy-customized-btn');

        navigator.clipboard.writeText(customizedPrompt).then(() => {
            copyButtons.forEach(btn => {
                btn.classList.add('copied');
                const textSpan = btn.querySelector('span');
                if (textSpan) textSpan.textContent = 'Copied!';
            });

            setTimeout(() => {
                copyButtons.forEach(btn => {
                    btn.classList.remove('copied');
                    const textSpan = btn.querySelector('span');
                    if (textSpan) textSpan.textContent = 'Copy Full Prompt';
                });
            }, 2000);
        }).catch(err => {
            console.error('Failed to copy:', err);
        });
    }

    // Store original prompt for customization
    const originalPrompt = "## OBJECTIVE\r\nCreate a character-led scene written as dialogue that feels true-to-life, explores [TOPIC] from multiple angles, and moves the story forward by shifting stakes, revealing motivation, and changing how the characters relate to each other.\r\n\r\n## PERSONA\r\nYou are a seasoned screen\/video dialogue writer with a strong feel for subtext, pacing, and character voice. You write performable lines that actors can inhabit, with economical stage direction and emotionally credible turns.\r\n\r\n## CONSTRAINTS\r\n- Keep the conversation grounded: no exposition dumps, no \u201cas you know\u201d speeches, and no unnatural explaining-for-the-audience.\r\n- Every line must do at least one job: reveal character, escalate tension, clarify desire, or alter the scene\u2019s direction.\r\n- Include light nonverbal beats (gesture, pauses, eye contact, physical distance) only where they sharpen meaning.\r\n- Ensure each character sounds distinct in word choice, rhythm, and attitude.\r\n- Avoid melodrama unless it\u2019s supported by the provided character backgrounds and situation.\r\n\r\n### What This Is NOT\r\n- Not a full outline of the entire story or episode.\r\n- Not a monologue-heavy essay about [TOPIC].\r\n- Not generic banter disconnected from the plot objective.\r\n- Not therapy-speak unless it authentically fits the character(s).\r\n\r\n## PROCESS\r\n1. **Pre-analysis (state your understanding first):** In 3\u20135 bullet points, confirm your read on the setting, what each character wants, the friction point, and what must change by the end of the scene.\r\n2. **Scene framing:** Write a concise setup that anchors location, time, and the immediate pressure causing the conversation now.\r\n3. **Character quick cards:** Summarize each character\u2019s current emotional state, hidden fear, and conversational tactic (e.g., deflecting, probing, performing, pleading).\r\n4. **Intent mapping:** Clarify the scene-level objective and the private objective for each character (they can differ).\r\n5. **Write the dialogue:**  \r\n   - Start with an attention anchor line that drops us into motion or tension.  \r\n   - Alternate voices clearly.  \r\n   - Work in subtext: let characters imply, dodge, or test rather than always stating.  \r\n   - Add a hook mechanism: a reveal, accusation, misinterpretation, or new information that forces the scene to pivot.  \r\n   - Include a disagreement that meaningfully intensifies (not a petty spat).  \r\n   - End on a turning point: a decision, a vow, a rupture, a compromise, or a new question that sets up the next beat.\r\n6. **Reflection:** After the scene, briefly explain how the exchange shifted power, trust, or intimacy\u2014and what it foreshadows.\r\n\r\n### Edge Case Handling\r\n- If any input is missing or vague, make the smallest reasonable assumption and label it as **Assumption** before writing.\r\n- If more than two characters are listed in [CHARACTERS] but only two profiles are provided, prioritize the two with profiles and assign others minimal \u201csupporting presence\u201d lines unless instructed otherwise.\r\n- If [DIALOGUE_OBJECTIVE] conflicts with [SETTING_AND_SITUATION], ask up to 3 clarifying questions; if answers aren\u2019t available, default to the objective and adapt the setting.\r\n\r\n## INPUTS\r\n- **Characters involved:** [CHARACTERS]  \r\n- **Topic to be explored:** [TOPIC]  \r\n- **Character 1 traits\/background:** [CHARACTER_1_TRAITS_AND_BACKGROUND]  \r\n- **Character 2 traits\/background:** [CHARACTER_2_TRAITS_AND_BACKGROUND]  \r\n- **Scene setting & lead-in circumstances:** [SETTING_AND_SITUATION]  \r\n- **What the scene must accomplish:** [DIALOGUE_OBJECTIVE]  \r\n- **Brand voice \/ style reference (optional):** [BRAND_VOICE]  \r\n- **Preferred format\/length constraints (optional):** [FORMAT]  \r\n\r\n## OUTPUT SPECIFICATION\r\nProvide the deliverable in this order:\r\n\r\n1. **Pre-Analysis Summary**\r\n   - {Understanding Bullets}\r\n\r\n2. **Scene Setup**\r\n   - {Location}\r\n   - {Time\/Atmosphere}\r\n   - {Immediate Situation}\r\n\r\n3. **Character Quick Cards**\r\n   - {Character Name}: {Surface Mood}, {Hidden Fear}, {Tactic}, {Power Position}\r\n   - (Repeat for each primary character)\r\n\r\n4. **Intent Mapping**\r\n   - {Scene Objective}\r\n   - {Character A Private Objective}\r\n   - {Character B Private Objective}\r\n\r\n5. **Dialogue Script**\r\n   - Use this format consistently:  \r\n     - **{Character Name}:** {Spoken Line}  \r\n       *({Action\/Nonverbal Cue \u2014 brief})*  \r\n   - Include: {Attention Anchor Line}, {Conflict Beat}, {Pivot Moment}, {Closing Turning Point}\r\n\r\n6. **Reflection**\r\n   - {Relationship Shift}\r\n   - {What It Signals Next}\r\n\r\n## QUALITY CHECKS\r\nBefore finalizing, verify:\r\n- The topic [TOPIC] is addressed through opposing or contrasting viewpoints, not a one-sided speech.\r\n- Each character has a distinct voice and consistent behavior aligned to their profile.\r\n- The scene contains a clear escalation and a noticeable turn by the ending beat.\r\n- Nonverbal cues enhance subtext without cluttering the page.\r\n- The reflection accurately describes how the scene changes future interactions (not just what was said).";
    const variables = ["[TOPIC]","[CHARACTERS]","[DIALOGUE_OBJECTIVE]","[SETTING_AND_SITUATION]","[CHARACTER_1_TRAITS_AND_BACKGROUND]","[CHARACTER_2_TRAITS_AND_BACKGROUND]","[BRAND_VOICE]","[FORMAT]"];
    // Initial render with highlighted variables
    document.addEventListener('DOMContentLoaded', function() {
        renderPromptWithHighlights();
    });

    // Live update prompt as user types
    document.querySelectorAll('.customize-input').forEach(input => {
        input.addEventListener('input', renderPromptWithHighlights);
    });

    function renderPromptWithHighlights() {
        const promptContent = document.getElementById('premium-prompt-content');
        if (!promptContent) return;

        let updatedPrompt = originalPrompt;
        let filledVariables = {};

        // Collect filled values
        document.querySelectorAll('.customize-input').forEach(input => {
            const placeholder = input.dataset.placeholder;
            const value = input.value.trim();

            if (value) {
                filledVariables[placeholder] = value;
            }
        });

        // Replace filled variables and highlight remaining
        let htmlContent = escapeHtml(updatedPrompt);

        variables.forEach(placeholder => {
            const escapedPlaceholder = escapeHtml(placeholder);
            const regex = new RegExp(escapeRegex(escapedPlaceholder), 'g');

            if (filledVariables[placeholder]) {
                // Show filled value with green highlight
                htmlContent = htmlContent.replace(regex,
                    '<span class="prompt-variable-filled">' + escapeHtml(filledVariables[placeholder]) + '</span>'
                );
            } else {
                // Show original placeholder with yellow highlight
                htmlContent = htmlContent.replace(regex,
                    '<span class="prompt-variable">' + escapedPlaceholder + '</span>'
                );
            }
        });

        promptContent.innerHTML = htmlContent;
    }

    function escapeRegex(string) {
        return string.replace(/[.*+?^${}()|[\]\\]/g, '\\$&');
    }

    function escapeHtml(text) {
        const div = document.createElement('div');
        div.textContent = text;
        return div.innerHTML;
    }

    function resetPrompt() {
        // Clear all input fields
        document.querySelectorAll('.customize-input').forEach(input => {
            input.value = '';
        });

        // Re-render with original placeholders highlighted
        renderPromptWithHighlights();

        // Visual feedback
        const resetBtns = document.querySelectorAll('.prompt-header-reset, .prompt-cta-reset');
        resetBtns.forEach(btn => {
            const originalText = btn.querySelector('span').textContent;
            btn.querySelector('span').textContent = 'Reset!';
            setTimeout(() => {
                btn.querySelector('span').textContent = originalText;
            }, 1000);
        });
    }


    function getCustomizedPrompt() {
        let updatedPrompt = originalPrompt;

        document.querySelectorAll('.customize-input').forEach(input => {
            const placeholder = input.dataset.placeholder;
            const value = input.value.trim();

            if (value) {
                const regex = new RegExp(escapeRegex(placeholder), 'g');
                updatedPrompt = updatedPrompt.replace(regex, value);
            }
        });

        return updatedPrompt;
    }
</script>

</div>

<div class="pro-tips-section">

<h2 class="wp-block-heading">Pro Tips for Better AI Prompt Results</h2>



<ul class="wp-block-list">

<li><strong>Give the topic teeth, not a theme.</strong> “Trust” is abstract; “he hid the overdraft notice again” creates playable conflict. If you’re using the [TOPIC] field, write it like a dilemma: “Should we tell her the deal is falling apart, or buy one more week?”</li>


<li><strong>Ask for a specific kind of turning point.</strong> After the first draft, follow up with: “Rewrite the final 10 lines so the turning point comes from a small admission, not a revelation.” Small turns feel real, honestly.</li>


<li><strong>Lock in distinct voices with a quick style note.</strong> Even though the prompt handles voice, you can push it further by adding a one-liner before you run it: “Character A speaks in short, blunt sentences; Character B circles the point with jokes.” Then rerun to compare cadence.</li>


<li><strong>Iterate by shifting objectives, not vocabulary.</strong> If the dialogue sounds witty but inert, change what each person wants. Try: “Now make Character A’s private objective ‘get him to confess’ and Character B’s private objective ‘end the conversation fast without lying.’”</li>


<li><strong>Use the pre-analysis as a QA checklist.</strong> If the model’s 3–5 bullets don’t mention friction, stakes, and what changes by the end, don’t accept the scene yet. Reply: “Your pre-analysis doesn’t specify what must change. Restate the wants and friction, then rewrite the scene with more escalation.”</li>

</ul>

</div>

<div class="related-prompts-section">

<h2 class="wp-block-heading">Related Prompts</h2>



<p>Once your scene has a clean turning point, these prompts help you plan the surrounding work and production cadence.</p>



<p>If you also need a simple way to plan releases around story beats, <a href="https://flowpast.com/prompts/build-a-yearlong-engagement-calendar-with-this-ai-prompt/">Build a Yearlong Engagement Calendar with this AI Prompt</a> is useful when you’re mapping episodes, drops, or campaign moments tied to specific scenes.</p>



<p>For teams doing retention-focused content (shorts, series, episodic newsletters), <a href="https://flowpast.com/prompts/create-aarrr-funnel-tactics-table-ai-prompt/">Create AARRR Funnel Tactics Table AI Prompt</a> pairs well because it helps you decide what each scene or clip should accomplish in the funnel beyond “be entertaining.”</p>



<p>When you’re coordinating collaborators and the dialogue scene is just one asset among many, <a href="https://flowpast.com/prompts/build-new-hire-task-platform-checklist-ai-prompt/">Build New Hire Task Platform Checklist AI Prompt</a> can help standardize handoffs (draft, review, record, edit) so the process doesn’t rely on memory.</p>


<br>


<p>Quick reference:</p>



<ul class="wp-block-list">

<li><a href="https://flowpast.com/prompts/build-a-yearlong-engagement-calendar-with-this-ai-prompt/">Build a Yearlong Engagement Calendar with this AI Prompt</a>: Plan releases around story beats.</li>


<li><a href="https://flowpast.com/prompts/create-aarrr-funnel-tactics-table-ai-prompt/">Create AARRR Funnel Tactics Table AI Prompt</a>: Tie scenes to funnel outcomes.</li>

<li><a href="https://flowpast.com/prompts/build-new-hire-task-platform-checklist-ai-prompt/">Build New Hire Task Platform Checklist AI Prompt</a>: Standardize team handoffs and tasks.</li>


<li><a href="https://flowpast.com/prompts/build-a-study-checklist-table-with-this-ai-prompt/">Build a Study Checklist Table with this AI Prompt</a>: Turn notes into an actionable checklist.</li>


<li><a href="https://flowpast.com/prompts/create-a-tax-deduction-checklist-ai-prompt/">Create a Tax Deduction Checklist AI Prompt</a>: Track deductions for creative businesses.</li>

</ul>
<!-- /wp:post-content -->
</div>

<div class="faq-section">
<!-- wp:heading {"level":2} -->
<h2 class="wp-block-heading">Common Questions</h2>
<!-- /wp:heading -->

<div class="faq-item">
<span class="question">Which roles benefit most from this character dialogue prompt AI prompt?</span>
<!-- wp:paragraph -->
<p class="answer"><strong>Screenwriters</strong> use this to turn “talky” scenes into conflict-driven exchanges where each line shifts leverage. <strong>Script editors</strong> lean on the pre-analysis and intent mapping to diagnose why a scene stalls (often unclear private objectives). <strong>Content leads for video teams</strong> apply it when they need performable dialogue that survives a read-through without sounding like copy. <strong>Brand storytellers</strong> use it to dramatize a product or belief without doing an explainer, keeping the persuasion inside subtext.</p>
<!-- /wp:paragraph -->
</div>

<div class="faq-item">
<span class="question">Which industries get the most value from this character dialogue prompt AI prompt?</span>
<!-- wp:paragraph -->
<p class="answer"><strong>Media and entertainment</strong> teams use it to draft scenes with credible escalation, then workshop from a stronger starting point. <strong>Creator-led businesses</strong> apply it to scripted YouTube, TikTok series, and podcast cold opens where dialogue must hook fast and still feel natural. <strong>Advertising and brand studios</strong> use it for narrative spots and UGC-style scripts, especially when they want tension and resolution without hard-selling. <strong>Corporate training and internal comms</strong> can use it to create realistic role-play conversations (manager feedback, stakeholder pushback) that avoid stiff “training video” speech.</p>
<!-- /wp:paragraph -->
</div>

<div class="faq-item">
<span class="question">Why do basic AI prompts for writing dialogue scenes produce weak results?</span>
<!-- wp:paragraph -->
<p class="answer">A typical prompt like “<em>Write me a dialogue scene about trust</em>” fails because it: lacks a forced-now situation that creates pressure, provides no structure for private objectives versus public intent, ignores voice differentiation (so everyone sounds like the same narrator), produces generic “explaining” instead of subtext-driven action, and misses a defined turning point that changes stakes by the end. This prompt fixes those gaps by making the model state its understanding first, map intent, then write lines where each beat has a job.</p>
<!-- /wp:paragraph -->
</div>

<div class="faq-item">
<span class="question">Can I customize this character dialogue prompt for my specific situation?</span>
<!-- wp:paragraph -->
<p class="answer">Yes. The main customization point is [TOPIC], and you’ll get better scenes when you phrase it as a concrete conflict rather than a theme. You can also steer outcomes by replying after draft one with constraints like “two characters, 35–45 lines,” “no jokes,” or “make the turning point happen because someone refuses to answer a direct question.” A good follow-up prompt is: “Keep the same setup, but change the private objective for each character and rewrite the scene with a different turning point.”</p>
<!-- /wp:paragraph -->
</div>

<div class="faq-item">
<span class="question">What are the most common mistakes when using this character dialogue prompt?</span>
<!-- wp:paragraph -->
<p class="answer">The biggest mistake is leaving [TOPIC] too vague — instead of “fear of change,” try “she’s considering quitting today, and he needs her to stay until the launch.” Another common error is choosing a topic with no immediate pressure; “They talk about their relationship” is weaker than “They have three minutes before the meeting and one of them is lying.” People also skip iteration: if the pre-analysis doesn’t mention what must change by the end, ask for it and rerun. Finally, many users accept generic voices; request a clear contrast in rhythm and attitude, then have the model revise the dialogue with that constraint.</p>
<!-- /wp:paragraph -->
</div>

<div class="faq-item">
<span class="question">Who should NOT use this character dialogue prompt?</span>
<!-- wp:paragraph -->
<p class="answer">This prompt isn’t ideal for one-line punchy banter generators, or for projects where you only need a quick template and won’t revise after the first pass. It’s also not a fit if you’re trying to outline an entire episode in one go, because it’s designed to produce a single scene with a specific change. If that’s you, start with a beat outline first, then come back to this prompt to write the pivotal scenes.</p>
<!-- /wp:paragraph -->
</div>

<script type="application/ld+json">
{
  "@context": "https://schema.org",
  "@type": "FAQPage",
  "mainEntity": [
    {
      "@type": "Question",
      "name": "Which roles benefit most from this character dialogue prompt AI prompt?",
      "acceptedAnswer": {
        "@type": "Answer",
        "text": "Screenwriters use this to turn “talky” scenes into conflict-driven exchanges where each line shifts leverage. Script editors lean on the pre-analysis and intent mapping to diagnose why a scene stalls (often unclear private objectives). Content leads for video teams apply it when they need performable dialogue that survives a read-through without sounding like copy. Brand storytellers use it to dramatize a product or belief without doing an explainer, keeping the persuasion inside subtext."
      }
    },
    {
      "@type": "Question",
      "name": "Which industries get the most value from this character dialogue prompt AI prompt?",
      "acceptedAnswer": {
        "@type": "Answer",
        "text": "Media and entertainment teams use it to draft scenes with credible escalation, then workshop from a stronger starting point. Creator-led businesses apply it to scripted YouTube, TikTok series, and podcast cold opens where dialogue must hook fast and still feel natural. Advertising and brand studios use it for narrative spots and UGC-style scripts, especially when they want tension and resolution without hard-selling. Corporate training and internal comms can use it to create realistic role-play conversations (manager feedback, stakeholder pushback) that avoid stiff “training video” speech."
      }
    },
    {
      "@type": "Question",
      "name": "Why do basic AI prompts for writing dialogue scenes produce weak results?",
      "acceptedAnswer": {
        "@type": "Answer",
        "text": "A typical prompt like “Write me a dialogue scene about trust” fails because it: lacks a forced-now situation that creates pressure, provides no structure for private objectives versus public intent, ignores voice differentiation (so everyone sounds like the same narrator), produces generic “explaining” instead of subtext-driven action, and misses a defined turning point that changes stakes by the end. This prompt fixes those gaps by making the model state its understanding first, map intent, then write lines where each beat has a job."
      }
    },
    {
      "@type": "Question",
      "name": "Can I customize this character dialogue prompt for my specific situation?",
      "acceptedAnswer": {
        "@type": "Answer",
        "text": "Yes. The main customization point is [TOPIC], and you’ll get better scenes when you phrase it as a concrete conflict rather than a theme. You can also steer outcomes by replying after draft one with constraints like “two characters, 35–45 lines,” “no jokes,” or “make the turning point happen because someone refuses to answer a direct question.” A good follow-up prompt is: “Keep the same setup, but change the private objective for each character and rewrite the scene with a different turning point.”"
      }
    },
    {
      "@type": "Question",
      "name": "What are the most common mistakes when using this character dialogue prompt?",
      "acceptedAnswer": {
        "@type": "Answer",
        "text": "The biggest mistake is leaving [TOPIC] too vague — instead of “fear of change,” try “she’s considering quitting today, and he needs her to stay until the launch.” Another common error is choosing a topic with no immediate pressure; “They talk about their relationship” is weaker than “They have three minutes before the meeting and one of them is lying.” People also skip iteration: if the pre-analysis doesn’t mention what must change by the end, ask for it and rerun. Finally, many users accept generic voices; request a clear contrast in rhythm and attitude, then have the model revise the dialogue with that constraint."
      }
    },
    {
      "@type": "Question",
      "name": "Who should NOT use this character dialogue prompt?",
      "acceptedAnswer": {
        "@type": "Answer",
        "text": "This prompt isn’t ideal for one-line punchy banter generators, or for projects where you only need a quick template and won’t revise after the first pass. It’s also not a fit if you’re trying to outline an entire episode in one go, because it’s designed to produce a single scene with a specific change. If that’s you, start with a beat outline first, then come back to this prompt to write the pivotal scenes."
      }
    }
  ]
}
</script>
</div>

<div class="closing-section">
<!-- wp:paragraph -->
<p>Good dialogue doesn’t “tell.” It pressures, dodges, reveals, and turns. Paste this prompt into your AI tool, set your [TOPIC], and get a scene you can actually rehearse.</p>
<!-- /wp:paragraph -->
</div>]]></content:encoded>
					
		
		
		<media:content url="https://flowpast.s3.eu-north-1.amazonaws.com/featured_blog_images/5000615.webp" medium="image"></media:content>
            	</item>
		<item>
		<title>Write a Film-Ready Script Scene with this AI Prompt</title>
		<link>https://flowpast.com/prompts/write-a-film-ready-script-scene-with-this-ai-prompt/</link>
		
		<dc:creator><![CDATA[Lisa Granqvist]]></dc:creator>
		<pubDate>Fri, 23 Jan 2026 02:19:36 +0000</pubDate>
				<category><![CDATA[Prompts]]></category>
		<guid isPermaLink="false">https://flowpast.com/?p=5000614</guid>

					<description><![CDATA[Scenes feel flat on the page - this AI Prompt builds a film-ready screenplay scene with mood, action, dialogue, and a cliff edge. Discover more AI prompts for marketing, sales, and ops.]]></description>
										<content:encoded><![CDATA[<!-- FOCUS_KEYWORD: film-ready script scene -->

<div class="hook-introduction">

<p>Most “AI-written scenes” read like summaries. The dialogue lands on-the-nose, the action feels unshootable, and nothing ends with a beat that makes you need the next scene. You’re left rewriting from scratch anyway.</p>



<p>This <strong>film-ready script scene</strong> is built for <strong>content creators</strong> turning an idea into a proof-of-concept scene, <strong>creative directors</strong> who need a filmable moment to pitch tone and character fast, and <strong>consultants</strong> shaping branded storytelling where subtext matters. The output is one complete screenplay scene (slugline, action, character cues, dialogue) with consistent mood and a strong reveal, turn, or cliff edge to propel the story forward.</p>

</div>

<div class="what-and-when-section">

<h2 class="wp-block-heading">What Does This AI Prompt Do and When to Use It?</h2>



<table class="solution-results-table three-column" role="presentation" aria-label="What this prompt does, when to use it, and what you get">
 <thead>
    <tr>
      <th scope="col">What This Prompt Does</th>
      <th scope="col">When to Use This Prompt</th>
      <th scope="col">What You&#8217;ll Get</th>
    </tr>
  </thead>
  <tbody>
    <tr>
      <td>
        <ul class="automation-list">
          <li>It writes one complete scene in screenplay format, including a scene heading, action lines, character cues, and dialogue.</li>
          <li>It forces “filmable” description by focusing on what can be seen and heard, not internal narration.</li>
          <li>It creates distinct character voices and bakes in subtext so the dialogue carries tension without overexplaining.</li>
          <li>It uses selective camera guidance only when clarity or emphasis truly benefits, rather than storyboarding every beat.</li>
          <li>It ends the scene on a strong beat (reveal, turn, or cliffhanger) to naturally set up the next scene.</li>
       </ul>
      </td>
      <td>
        <ul class="results-list">
          <li>You have a solid premise but can’t get a single scene to feel alive on the page.</li>
          <li>You’re preparing a pitch, teaser, or table read and need one “anchor scene” that sells tone quickly.</li>
          <li>You keep writing scenes that meander, then struggle to find a clean ending beat that creates momentum.</li>
          <li>You’re collaborating with others and need a shoot-ready version to align on blocking, mood, and character dynamics.</li>
          <li>You’re iterating fast and want multiple scene drafts without losing screenplay discipline.</li>
        </ul>
      </td>
       <td>
         <ul class="deliverables-list">
           <li>One finished screenplay scene (roughly 1–4 pages, depending on dialogue density) in standard readable formatting.</li>
           <li>A brief pre-analysis restatement that confirms the intended location, characters, tone, and the scene’s job.</li>
           <li>Distinct dialogue for each character, with subtext and conversational friction instead of exposition dumps.</li>
           <li>Visual action lines staged for performance (blocking-friendly beats you can actually film).</li>
           <li>A final button: a reveal, turn, or cliffhanger written as a clear “next-scene pull.”</li>
         </ul>
       </td>
    </tr>
  </tbody>
</table>

</div>

<div class="prompt-display-section">

<h2 class="wp-block-heading">The Full AI Prompt: Film-Ready Screenplay Scene Generator</h2>



<div class="prompt-viewer-wrapper" id="prompt-section">
    <div class="prompt-comparison-row prompt-premium">
        <!-- Header with buttons -->
        <div class="prompt-row-header">
            <!-- <span class="prompt-row-icon">✨</span> -->
            <span class="prompt-row-title">
                                    Step 1: Customize the prompt with your input
                            </span>
            <div class="prompt-header-buttons">
                                    <button class="prompt-header-btn prompt-header-reset" onclick="resetPrompt()">
                        <svg xmlns="http://www.w3.org/2000/svg" width="16" height="16" fill="currentColor" viewBox="0 0 16 16">
                            <path fill-rule="evenodd" d="M8 3a5 5 0 1 0 4.546 2.914.5.5 0 0 1 .908-.417A6 6 0 1 1 8 2v1z" />
                            <path d="M8 4.466V.534a.25.25 0 0 1 .41-.192l2.36 1.966c.12.1.12.284 0 .384L8.41 4.658A.25.25 0 0 1 8 4.466z" />
                        </svg>
                        <span>Reset</span>
                    </button>
                                <button class="prompt-header-btn prompt-header-copy-green flowpast-copy-prompt-btn" onclick="handlePromptCopy()">
                    <svg xmlns="http://www.w3.org/2000/svg" width="16" height="16" fill="currentColor" viewBox="0 0 16 16">
                        <path d="M4 1.5H3a2 2 0 0 0-2 2V14a2 2 0 0 0 2 2h10a2 2 0 0 0 2-2V3.5a2 2 0 0 0-2-2h-1v1h1a1 1 0 0 1 1 1V14a1 1 0 0 1-1 1H3a1 1 0 0 1-1-1V3.5a1 1 0 0 1 1-1h1v-1z" />
                        <path d="M9.5 1a.5.5 0 0 1 .5.5v1a.5.5 0 0 1-.5.5h-3a.5.5 0 0 1-.5-.5v-1a.5.5 0 0 1 .5-.5h3zm-3-1A1.5 1.5 0 0 0 5 1.5v1A1.5 1.5 0 0 0 6.5 4h3A1.5 1.5 0 0 0 11 2.5v-1A1.5 1.5 0 0 0 9.5 0h-3z" />
                    </svg>
                    <span>Customize and Copy Full Prompt</span>
                </button>
            </div>
        </div>

        <!-- Customize the Prompt Section -->
                    <div class="prompt-customize-section">
                <span class="customize-title">Customize the Prompt</span>
                <p class="customize-subtitle">Fill in the fields below to personalize this prompt for your needs.</p>
                <table class="customize-table">
                    <thead>
                        <tr>
                            <th>Variable</th>
                            <th>What to Enter</th>
                            <th>Customise the prompt</th>
                        </tr>
                    </thead>
                    <tbody>
                                                    <tr>
                                <td class="var-name"><code>[CHARACTERS]</code></td>
                                <td class="var-desc">
                                    List the key characters in the scene, including their names, brief physical descriptions, personality traits, and emotional state or motivation during the scene.                                    <div class="var-example">For example: "John, a grizzled detective in his 50s with a weary but sharp demeanor, hiding his guilt; Sarah, a young journalist with a fiery determination and a hint of vulnerability."</div>
                                </td>
                                <td class="var-input">
                                                                            <textarea
                                            class="customize-input"
                                            data-placeholder="[CHARACTERS]"
                                            placeholder="Enter your value here..."
                                            rows="3"></textarea>
                                                                    </td>
                            </tr>
                                                    <tr>
                                <td class="var-name"><code>[PLOT_POINTS]</code></td>
                                <td class="var-desc">
                                    Describe the main events or turning points that need to occur in the scene to advance the story. Be specific about stakes, conflicts, or revelations.                                    <div class="var-example">For example: "John confronts Sarah about a leaked case file, only to discover she has evidence that could implicate him in a cover-up."</div>
                                </td>
                                <td class="var-input">
                                                                            <textarea
                                            class="customize-input"
                                            data-placeholder="[PLOT_POINTS]"
                                            placeholder="Enter your value here..."
                                            rows="3"></textarea>
                                                                    </td>
                            </tr>
                                                    <tr>
                                <td class="var-name"><code>[TOPIC]</code></td>
                                <td class="var-desc">
                                    Explain the central theme or subject the scene should focus on, such as betrayal, redemption, or a moral dilemma.                                    <div class="var-example">For example: "The tension between loyalty and truth in a high-stakes murder investigation."</div>
                                </td>
                                <td class="var-input">
                                                                            <textarea
                                            class="customize-input"
                                            data-placeholder="[TOPIC]"
                                            placeholder="Enter your value here..."
                                            rows="3"></textarea>
                                                                    </td>
                            </tr>
                                                    <tr>
                                <td class="var-name"><code>[MOOD_AND_TONE]</code></td>
                                <td class="var-desc">
                                    Specify the emotional atmosphere and stylistic tone of the scene, such as suspenseful, melancholy, or darkly comedic.                                    <div class="var-example">For example: "Tense and foreboding, with a sense of quiet desperation underlying the dialogue."</div>
                                </td>
                                <td class="var-input">
                                                                            <textarea
                                            class="customize-input"
                                            data-placeholder="[MOOD_AND_TONE]"
                                            placeholder="Enter your value here..."
                                            rows="3"></textarea>
                                                                    </td>
                            </tr>
                                                    <tr>
                                <td class="var-name"><code>[SCENE_SETTING]</code></td>
                                <td class="var-desc">
                                    Describe the physical location, time of day, and sensory details that set the stage for the scene. Include elements that heighten the mood and conflict.                                    <div class="var-example">For example: "A dimly lit diner at midnight, rain streaking the windows, the hum of fluorescent lights adding to the oppressive atmosphere."</div>
                                </td>
                                <td class="var-input">
                                                                            <textarea
                                            class="customize-input"
                                            data-placeholder="[SCENE_SETTING]"
                                            placeholder="Enter your value here..."
                                            rows="3"></textarea>
                                                                    </td>
                            </tr>
                                                    <tr>
                                <td class="var-name"><code>[CAMERA_DIRECTIONS]</code></td>
                                <td class="var-desc">
                                    Provide any specific camera movements or angles that emphasize key moments, reactions, or shifts in the scene. Only include directions that enhance the storytelling.                                    <div class="var-example">For example: "Close-up on John’s trembling hand as he reaches for the case file; slow pan to Sarah’s determined expression as she reveals the evidence."</div>
                                </td>
                                <td class="var-input">
                                                                            <textarea
                                            class="customize-input"
                                            data-placeholder="[CAMERA_DIRECTIONS]"
                                            placeholder="Enter your value here..."
                                            rows="3"></textarea>
                                                                    </td>
                            </tr>
                                            </tbody>
                </table>

                <button class="copy-customized-btn flowpast-copy-prompt-btn" onclick="handlePromptCopy()">
                    <svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" fill="currentColor" viewBox="0 0 16 16">
                        <path d="M4 1.5H3a2 2 0 0 0-2 2V14a2 2 0 0 0 2 2h10a2 2 0 0 0 2-2V3.5a2 2 0 0 0-2-2h-1v1h1a1 1 0 0 1 1 1V14a1 1 0 0 1-1 1H3a1 1 0 0 1-1-1V3.5a1 1 0 0 1 1-1h1v-1z" />
                        <path d="M9.5 1a.5.5 0 0 1 .5.5v1a.5.5 0 0 1-.5.5h-3a.5.5 0 0 1-.5-.5v-1a.5.5 0 0 1 .5-.5h3zm-3-1A1.5 1.5 0 0 0 5 1.5v1A1.5 1.5 0 0 0 6.5 4h3A1.5 1.5 0 0 0 11 2.5v-1A1.5 1.5 0 0 0 9.5 0h-3z" />
                    </svg>
                    <span class="copy-customized-text">Customise the prompt now</span>
                </button>
            </div>
        
        <!-- Full Prompt Code Header -->
                    <div class="prompt-code-header">
                <span class="prompt-code-title">
                    Step 2: Copy the Prompt
                </span>
                <div class="prompt-code-buttons">
                    <!-- Reset: Only visible when unlocked -->
                    <button class="prompt-header-btn prompt-header-reset btn-when-unlocked" onclick="resetPrompt()" style="display: none;">
                        <svg xmlns="http://www.w3.org/2000/svg" width="16" height="16" fill="currentColor" viewBox="0 0 16 16">
                            <path fill-rule="evenodd" d="M8 3a5 5 0 1 0 4.546 2.914.5.5 0 0 1 .908-.417A6 6 0 1 1 8 2v1z" />
                            <path d="M8 4.466V.534a.25.25 0 0 1 .41-.192l2.36 1.966c.12.1.12.284 0 .384L8.41 4.658A.25.25 0 0 1 8 4.466z" />
                        </svg>
                        <span>Reset</span>
                    </button>
                    <!-- Copy Full Prompt -->
                    <button class="prompt-header-btn prompt-header-copy flowpast-copy-prompt-btn" onclick="handlePromptCopy()">
                        <svg xmlns="http://www.w3.org/2000/svg" width="16" height="16" fill="currentColor" viewBox="0 0 16 16">
                            <path d="M4 1.5H3a2 2 0 0 0-2 2V14a2 2 0 0 0 2 2h10a2 2 0 0 0 2-2V3.5a2 2 0 0 0-2-2h-1v1h1a1 1 0 0 1 1 1V14a1 1 0 0 1-1 1H3a1 1 0 0 1-1-1V3.5a1 1 0 0 1 1-1h1v-1z" />
                            <path d="M9.5 1a.5.5 0 0 1 .5.5v1a.5.5 0 0 1-.5.5h-3a.5.5 0 0 1-.5-.5v-1a.5.5 0 0 1 .5-.5h3zm-3-1A1.5 1.5 0 0 0 5 1.5v1A1.5 1.5 0 0 0 6.5 4h3A1.5 1.5 0 0 0 11 2.5v-1A1.5 1.5 0 0 0 9.5 0h-3z" />
                        </svg>
                        <span>Copy Full Prompt</span>
                    </button>
                </div>
            </div>
        

        <!-- Prompt Content -->
        <div class="prompt-box prompt-gated-wrapper">
            <!-- Gated: Blurred content -->
            <div class="prompt-gated-content">
                <div class="prompt-header-visible">OBJECTIVE</div><div class="locked-section"><div class="locked-section-bg"><div class="locked-section-lines"><div class="locked-line" style="width: 85%;"></div><div class="locked-line" style="width: 78%;"></div></div></div><div class="locked-section-icon">🔒</div></div><div class="prompt-header-visible">PERSONA</div><div class="locked-section"><div class="locked-section-bg"><div class="locked-section-lines"><div class="locked-line" style="width: 85%;"></div><div class="locked-line" style="width: 78%;"></div></div></div><div class="locked-section-icon">🔒</div></div><div class="prompt-header-visible">CONSTRAINTS</div><div class="locked-section"><div class="locked-section-bg"><div class="locked-section-lines"><div class="locked-line" style="width: 85%;"></div><div class="locked-line" style="width: 78%;"></div><div class="locked-line" style="width: 92%;"></div><div class="locked-line" style="width: 75%;"></div><div class="locked-line" style="width: 88%;"></div><div class="locked-line" style="width: 72%;"></div></div></div><div class="locked-section-icon">🔒</div></div><div class="prompt-header-visible subheader">What This Is NOT (Scope Boundaries)</div><div class="locked-section"><div class="locked-section-bg"><div class="locked-section-lines"><div class="locked-line" style="width: 85%;"></div><div class="locked-line" style="width: 78%;"></div><div class="locked-line" style="width: 92%;"></div><div class="locked-line" style="width: 75%;"></div></div></div><div class="locked-section-icon">🔒</div></div><div class="prompt-header-visible">PROCESS</div><div class="locked-section"><div class="locked-section-bg"><div class="locked-section-lines"><div class="locked-line" style="width: 85%;"></div><div class="locked-line" style="width: 78%;"></div><div class="locked-line" style="width: 92%;"></div><div class="locked-line" style="width: 75%;"></div><div class="locked-line" style="width: 88%;"></div><div class="locked-line" style="width: 72%;"></div><div class="locked-line" style="width: 80%;"></div></div></div><div class="locked-section-icon">🔒</div></div><div class="prompt-header-visible subheader">Edge Case Handling</div><div class="locked-section"><div class="locked-section-bg"><div class="locked-section-lines"><div class="locked-line" style="width: 85%;"></div><div class="locked-line" style="width: 78%;"></div><div class="locked-line" style="width: 92%;"></div><div class="locked-line" style="width: 75%;"></div></div></div><div class="locked-section-icon">🔒</div></div><div class="prompt-header-visible">INPUTS</div><div class="locked-section"><div class="locked-section-bg"><div class="locked-section-lines"><div class="locked-line" style="width: 85%;"></div><div class="locked-line" style="width: 78%;"></div><div class="locked-line" style="width: 92%;"></div><div class="locked-line" style="width: 75%;"></div><div class="locked-line" style="width: 88%;"></div><div class="locked-line" style="width: 72%;"></div></div></div><div class="locked-section-icon">🔒</div></div><div class="prompt-header-visible">OUTPUT SPECIFICATION</div><div class="locked-section"><div class="locked-section-bg"><div class="locked-section-lines"><div class="locked-line" style="width: 85%;"></div><div class="locked-line" style="width: 78%;"></div><div class="locked-line" style="width: 92%;"></div><div class="locked-line" style="width: 75%;"></div><div class="locked-line" style="width: 88%;"></div><div class="locked-line" style="width: 72%;"></div><div class="locked-line" style="width: 80%;"></div><div class="locked-line" style="width: 95%;"></div><div class="locked-line" style="width: 70%;"></div><div class="locked-line" style="width: 83%;"></div><div class="locked-line" style="width: 85%;"></div><div class="locked-line" style="width: 78%;"></div><div class="locked-line" style="width: 92%;"></div></div></div><div class="locked-section-icon">🔒</div></div><div class="prompt-header-visible">QUALITY CHECKS</div><div class="locked-section"><div class="locked-section-bg"><div class="locked-section-lines"><div class="locked-line" style="width: 85%;"></div><div class="locked-line" style="width: 78%;"></div><div class="locked-line" style="width: 92%;"></div><div class="locked-line" style="width: 75%;"></div><div class="locked-line" style="width: 88%;"></div><div class="locked-line" style="width: 72%;"></div></div></div><div class="locked-section-icon">🔒</div></div>            </div>
            <!-- Unlocked: Full content (hidden by default) -->
            <div class="prompt-content-full" id="premium-prompt-content" style="display: none;">
                ## OBJECTIVE  
Create a single, cinematic screenplay scene based on the provided inputs, designed to feel “filmable” and emotionally charged. The scene must help move the story forward and end on a strong beat (reveal, turn, or cliffhanger) that prompts the next scene.

## PERSONA  
You are a veteran film-and-TV screenwriter who specializes in visual storytelling, subtext-heavy dialogue, and on-the-page clarity. You write with crisp, shoot-ready descriptions (not prose), balancing atmosphere, character emotion, and momentum.

## CONSTRAINTS  
- Write **one complete scene** (not an outline), using **screenplay-style formatting** (scene heading, action lines, character cues, dialogue).  
- Keep description **visual and performable**: show what can be seen/heard; avoid internal monologues unless expressed through behavior or dialogue.  
- Dialogue must have **distinct voices** and include **subtext** (what’s meant vs. what’s said).  
- Include camera guidance **only when it meaningfully improves comprehension or emphasis**; do not storyboard every line.  
- Maintain the requested **mood and tone** consistently.  
- If any input is missing or unclear, follow the edge-case rules in the PROCESS section.

### What This Is NOT (Scope Boundaries)  
- Not a full screenplay, synopsis, treatment, or multi-scene sequence.  
- Not a generic writing prompt or writing advice.  
- Not a shot-by-shot breakdown unless explicitly requested via input.  
- Not a novel-style chapter with heavy internal narration.

## PROCESS  
1. **Pre-Analysis Step (required):** Briefly restate your understanding of the scene you’re about to write, referencing the provided inputs and what the scene must accomplish.  
2. Establish the **world of the moment**: location, time, sensory details, and atmosphere that reinforce the tone.  
3. Introduce each character as they appear on screen, with quick, filmable identifiers (look, energy, behavior) and the emotion they’re masking or displaying.  
4. Stage the blocking: clear physical actions, micro-reactions, use of space/props, and shifting power dynamics.  
5. Write dialogue that escalates or complicates the situation, embedding implication and tension without over-explaining.  
6. Add selective camera notes (if any), focusing on emphasis (e.g., revealing information, isolating a reaction, tracking a shift).  
7. End on a **decisive beat** that links to the larger plot: a discovery, interruption, confession, threat, or unexpected arrival.

### Edge Case Handling  
- If **[CHARACTERS]** is incomplete: create up to **2 additional supporting roles** that fit the tone and setting, and label them clearly.  
- If **[PLOT_POINTS]** are vague: infer the most plausible stakes from **[TOPIC]** and **[MOOD_AND_TONE]**, and keep the scene’s objective simple (one main turning point).  
- If **[SCENE_SETTING]** is missing: choose a setting that naturally heightens conflict for the topic and mood.  
- If **[CAMERA_DIRECTIONS]** are provided but conflict with clarity: prioritize clarity and keep the spirit of the request.

## INPUTS  
- **Topic of the scene:** [TOPIC]  
- **Characters involved:** [CHARACTERS]  
- **Scene setting (place/time/ambience):** [SCENE_SETTING]  
- **Key plot points to include:** [PLOT_POINTS]  
- **Mood and tone:** [MOOD_AND_TONE]  
- **Requested camera directions (optional):** [CAMERA_DIRECTIONS]  

## OUTPUT SPECIFICATION  
Return the scene in this structure:

1. **Pre-Analysis**  
   - {Understanding Summary} (2–4 lines)

2. **Screenplay Scene**  
   - **Scene Heading:** {Scene Heading} (e.g., INT./EXT., LOCATION, TIME)  
   - **Action/Description:** {Action Blocks}  
   - **Character Introductions (as they appear):** {Character Intro Lines}  
   - **Dialogue:** {Dialogue Blocks} (with character cues)  
   - **Selective Camera Notes (only if useful):** {Camera Notes}  
   - **End Beat / Cliffhanger:** {Final Beat}

Formatting requirements:  
- Use standard screenplay conventions for character names and dialogue.  
- Keep paragraphs short and readable on the page.

## QUALITY CHECKS  
Before finalizing, verify:  
- {Continuity Check}: Setting, character presence, and actions remain consistent.  
- {Cinematic Clarity}: Everything described can be filmed/seen/heard.  
- {Voice Differentiation}: Each character sounds distinct and motivated.  
- {Plot Advancement}: At least one plot point clearly progresses or complicates the story.  
- {Ending Impact}: The last moment creates a strong pull into what comes next.            </div>
        </div>


    </div>

    <!-- CTA Row - Full width buttons -->
    <div class="prompt-cta-row">
        <button class="prompt-cta-btn prompt-cta-copy flowpast-copy-prompt-btn" onclick="handlePromptCopy()">
            <svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" fill="currentColor" viewBox="0 0 16 16">
                <path d="M4 1.5H3a2 2 0 0 0-2 2V14a2 2 0 0 0 2 2h10a2 2 0 0 0 2-2V3.5a2 2 0 0 0-2-2h-1v1h1a1 1 0 0 1 1 1V14a1 1 0 0 1-1 1H3a1 1 0 0 1-1-1V3.5a1 1 0 0 1 1-1h1v-1z" />
                <path d="M9.5 1a.5.5 0 0 1 .5.5v1a.5.5 0 0 1-.5.5h-3a.5.5 0 0 1-.5-.5v-1a.5.5 0 0 1 .5-.5h3zm-3-1A1.5 1.5 0 0 0 5 1.5v1A1.5 1.5 0 0 0 6.5 4h3A1.5 1.5 0 0 0 11 2.5v-1A1.5 1.5 0 0 0 9.5 0h-3z" />
            </svg>
            <span class="cta-copy-text">Copy Full Prompt</span>
        </button>
    </div>
</div>

<style>
    /* Gated prompt states */
    .prompt-gated-wrapper {
        position: relative;
    }

    /* When unlocked - show full content, hide gated */
    body.flowpast-unlocked .prompt-gated-wrapper .prompt-gated-content {
        display: none;
    }

    body.flowpast-unlocked .prompt-gated-wrapper .prompt-content-full {
        display: block !important;
    }

    /* Show/hide elements based on unlock state */
    body.flowpast-unlocked .btn-when-unlocked {
        display: inline-flex !important;
    }

    .prompt-viewer-wrapper {
        scroll-margin-top: 250px;
    }

    /* ========================================
   PROMPT VIEWER - MAIN WRAPPER
   ======================================== */
    .prompt-viewer-wrapper {
        margin: 30px 0;
        display: flex;
        flex-direction: column;
        gap: 20px;
    }

    /* ========================================
   PROMPT BOX CONTAINER
   ======================================== */
    .prompt-comparison-row {
        border-radius: 12px;
        overflow: hidden;
        border: 1px solid #e0e0e0;
        background: #fff;
    }

    /* ========================================
   HEADER WITH BUTTONS
   ======================================== */
    .prompt-row-header {
        display: flex;
        align-items: center;
        gap: 10px;
        padding: 14px 20px;
        color: #fff !important;
        background: #141414;
        border-bottom: 1px solid #e0e0e0;
        flex-wrap: wrap;
    }

    .prompt-row-icon {
        font-size: 20px;
    }

    .prompt-row-title {
        font-weight: 600;
        font-size: 22px;
        color: #fff !important;
        text-decoration: underline
    }

    .prompt-header-buttons {
        margin-left: auto;
        display: flex;
        gap: 10px;
        flex-wrap: wrap;
    }

    /* Header buttons */
    .prompt-header-btn {
        display: inline-flex;
        align-items: center;
        gap: 8px;
        padding: 10px 20px;
        border-radius: 6px;
        font-size: 14px;
        font-weight: 600;
        cursor: pointer;
        transition: all 0.2s;
        text-decoration: none;
        border: none;
    }

    .prompt-header-copy {
        background: #3a3a3a;
        color: #fff;
    }

    .prompt-header-copy:hover {
        background: #2a2a2a;
    }

    .prompt-header-copy.copied {
        background: #2e7d32;
    }

    .prompt-header-copy-green {
        background: #04AA6D !important;
        color: #fff !important;
    }

    .prompt-header-copy-green:hover {
        background: #039860 !important;
    }

    .prompt-header-copy-green.copied {
        background: #2e7d32 !important;
    }

    .prompt-header-access {
        background: rgb(5, 152, 98);
        color: #fff !important;
    }

    .prompt-header-access:hover {
        background: rgb(4, 130, 83);
        transform: translateY(-1px);
    }

    /* ========================================
   PROMPT CONTENT - FULL (NO SCROLL)
   ======================================== */
    .prompt-box {
        background: #ffffff;
    }

    .prompt-content-full {
        padding: 24px;
        margin: 0;
        color: #202124;
        background: #ffffff;
        font-family: 'Fira Code', 'Monaco', 'Consolas', monospace;
        font-size: 13px;
        line-height: 1.7;
        white-space: pre-wrap;
        word-wrap: break-word;
        /* No scroll - show full content */
        max-height: none;
        overflow: visible;
    }

    /* Highlighted variable in prompt */
    .prompt-variable {
        background: #fff3cd;
        color: #1967d2;
        font-weight: 700;
        padding: 2px 4px;
        border-radius: 3px;
        border: 1px solid #ffc107;
    }

    .prompt-variable-filled {
        background: #d4edda;
        color: #155724;
        font-weight: 700;
        padding: 2px 4px;
        border-radius: 3px;
        border: 1px solid #28a745;
    }

    /* ========================================
   GATED CONTENT (NO ACCESS)
   ======================================== */
    .prompt-gated-content {
        padding: 24px;
        background: #ffffff;
        font-family: 'Fira Code', 'Monaco', 'Consolas', monospace;
        font-size: 13px;
        line-height: 1.8;
        max-height: none;
        overflow: visible;
        user-select: none;
        -webkit-user-select: none;
        -moz-user-select: none;
        -ms-user-select: none;
        cursor: default;
    }

    /* ## headers - larger, black */
    .prompt-header-visible {
        color: #202124;
        font-weight: 600;
        margin: 5px 0 0px 0;
        font-size: 20px;
        user-select: none;
        -webkit-user-select: none;
        -moz-user-select: none;
        -ms-user-select: none;
        text-decoration: underline;
        text-underline-offset: 4px;
    }

    /* ### headers - smaller, black */
    .prompt-header-visible.subheader {
        color: #202124;
        font-weight: 600;
        margin: 5px 0;
        font-size: 18px;
    }

    .prompt-header-visible:first-child {
        margin-top: 0;
    }

    /* ========================================
   LOCKED SECTION BLOCK
   ======================================== */
    .locked-section {
        position: relative;
        margin: 4px 0 8px 0;
        border-radius: 6px;
        overflow: hidden;
        background: linear-gradient(110deg, #e2e8f0 8%, #f1f5f9 18%, #e2e8f0 33%);
        user-select: none;
        -webkit-user-select: none;
        -moz-user-select: none;
        -ms-user-select: none;
    }

    .locked-section-bg {
        position: relative;
    }

    .locked-section-lines {
        padding: 8px 12px;
        position: relative;
    }

    .locked-line {
        height: 6px;
        background: rgba(255, 255, 255, 0.6);
        border-radius: 3px;
        margin-bottom: 4px;
        margin-left: 12px;
    }

    .locked-line:last-child {
        margin-bottom: 0;
    }

    .locked-section-icon {
        position: absolute;
        top: 50%;
        left: 50%;
        transform: translate(-50%, -50%);
        z-index: 10;
        font-size: 24px;
        filter: drop-shadow(0 1px 3px rgba(0, 0, 0, 0.1));
    }

    /* Subheader locked sections - slightly indented */
    /*  .prompt-header-visible.subheader+.locked-section {
        margin-left: 16px;
    } */

    /* ========================================
   COMPATIBILITY BADGES
   ======================================== */
    .prompt-compatibility {
        display: flex;
        flex-wrap: wrap;
        align-items: center;
        gap: 8px;
        padding: 12px 20px;
        background: #f8f9fa;
        border-top: 1px solid #e0e0e0;
    }

    .compat-label {
        font-size: 13px;
        color: #5f6368;
        font-weight: 500;
    }

    .compat-badge {
        padding: 4px 10px;
        background: #e8f0fe;
        color: #1967d2;
        border-radius: 4px;
        font-size: 12px;
        font-weight: 500;
    }

    /* ========================================
   CTA ROW - FULL WIDTH BUTTONS
   ======================================== */
    .prompt-cta-row {
        display: flex;
        gap: 16px;
        flex-wrap: wrap;
    }

    .prompt-cta-btn {
        flex: 1;
        min-width: 200px;
        display: inline-flex;
        align-items: center;
        justify-content: center;
        gap: 10px;
        padding: 16px 24px;
        border-radius: 8px;
        font-size: 16px;
        font-weight: 600;
        cursor: pointer;
        transition: all 0.2s;
        text-decoration: none;
        border: none;
    }

    .prompt-cta-copy {
        background: #3a3a3a;
        color: #fff;
    }

    .prompt-cta-copy:hover {
        background: #2a2a2a;
        transform: translateY(-2px);
        box-shadow: 0 4px 12px rgba(0, 0, 0, 0.15);
    }

    .prompt-cta-copy.copied {
        background: #2e7d32;
    }

    .prompt-cta-reset {
        background: #3a3a3a;
        color: #fff;
    }

    .prompt-cta-reset:hover {
        background: #2a2a2a;
        transform: translateY(-2px);
        box-shadow: 0 4px 12px rgba(0, 0, 0, 0.15);
    }

    .prompt-cta-access {
        background: rgb(5, 152, 98);
        color: #fff !important;
    }

    .prompt-cta-access:hover {
        background: rgb(4, 130, 83);
        transform: translateY(-2px);
        box-shadow: 0 4px 12px rgba(5, 152, 98, 0.3);
    }

    /* ========================================
    CUSTOMIZE YOUR PROMPT SECTION
    ======================================== */
    .prompt-customize-section {
        padding: 24px;
        border-bottom: 1px solid #e0e0e0;
        background: #fafbfc;
    }

    .customize-title {
        margin: 0 0 8px 0;
        font-size: 18px;
        font-weight: 700;
        color: #202124;
    }

    .customize-subtitle {
        margin: 0 0 20px 0;
        font-size: 14px;
        color: #5f6368;
    }

    .customize-table {
        width: 100%;
        border-collapse: collapse;
        margin-bottom: 20px;
    }

    .customize-table th {
        text-align: left;
        padding: 12px;
        background: #f1f3f4;
        border: 1px solid #e0e0e0;
        font-size: 13px;
        font-weight: 600;
        color: #202124;
    }

    .customize-table td {
        padding: 12px;
        border: 1px solid #e0e0e0;
        vertical-align: top;
    }

    .customize-table .var-name {
        width: 25%;
        background: #f8f9fa;
    }

    .customize-table .var-name code {
        background: #fff3cd;
        color: #1967d2;
        border: 1px solid #ffc107;
        padding: 4px 8px;
        border-radius: 4px;
        font-size: 12px;
        word-break: break-all;
        font-weight: 600;
    }

    .customize-table .var-desc {
        width: 35%;
        font-size: 13px;
        color: #5f6368;
        line-height: 1.5;
    }

    .customize-table .var-example {
        margin-top: 8px;
        padding: 8px 10px;
        background: #f8f9fa;
        border-left: 3px solid #dadce0;
        font-size: 12px;
        color: #5f6368;
        font-style: italic;
        border-radius: 0 4px 4px 0;
    }

    .customize-table .var-input {
        width: 40%;
    }

    .customize-input {
        width: 100%;
        padding: 10px 12px;
        border: 1px solid #dadce0;
        border-radius: 6px;
        font-size: 13px;
        font-family: inherit;
        resize: vertical;
        transition: border-color 0.2s, box-shadow 0.2s;
    }

    .customize-input:focus {
        outline: none;
        border-color: rgb(5, 152, 98);
        box-shadow: 0 0 0 3px rgba(5, 152, 98, 0.1);
    }

    .customize-input::placeholder {
        color: #9aa0a6;
        font-style: italic;
    }

    .copy-customized-btn {
        display: flex;
        align-items: center;
        justify-content: center;
        gap: 10px;
        width: 100%;
        padding: 16px 24px;
        background: rgb(5, 152, 98);
        color: #fff;
        border: none;
        border-radius: 8px;
        font-size: 16px;
        font-weight: 600;
        cursor: pointer;
        transition: all 0.2s;
    }

    .copy-customized-btn:hover {
        background: rgb(4, 130, 83);
        transform: translateY(-2px);
        box-shadow: 0 4px 12px rgba(5, 152, 98, 0.3);
    }

    .copy-customized-btn.copied {
        background: #2e7d32;
    }

    /* ========================================
    FULL PROMPT CODE HEADER
    ======================================== */
    .prompt-code-header {
        display: flex;
        align-items: center;
        justify-content: space-between;
        padding: 10px 20px;
        color: #fff !important;
        background: #141414;
        border-bottom: 1px solid #e0e0e0;
    }

    .prompt-code-title {
        font-size: 22px;
        font-weight: 600;
        text-decoration: underline;

    }

    .prompt-code-buttons {
        display: flex;
        gap: 8px;
    }

    .prompt-code-buttons .prompt-header-btn {
        padding: 8px 14px;
        font-size: 13px;
        background: #ffffff;
        color: #202124;
        border: 1px solid #dadce0;
    }

    .prompt-code-buttons .prompt-header-access {
        background: rgb(5, 152, 98);
        color: #fff !important;
        border-color: rgb(5, 152, 98);
    }

    .prompt-code-buttons .prompt-header-btn.prompt-header-access:hover {
        background: rgb(4, 130, 83) !important;
        border-color: rgb(4, 130, 83);
        color: #fff !important;
    }

    .prompt-code-buttons .prompt-header-btn:hover {
        background: #f1f3f4;
    }

    .prompt-code-buttons .prompt-header-copy.copied {
        background: #d4edda;
        color: #155724;
        border-color: #28a745;
    }

    .prompt-header-reset {
        background: #ffffff;
        color: #202124;
    }

    /* ========================================
   RESPONSIVE
   ======================================== */
    @media (max-width: 768px) {
        .prompt-row-header {
            flex-direction: column;
            align-items: flex-start;
            gap: 12px;
        }

        .prompt-header-buttons {
            margin-left: 0;
            width: 100%;
        }

        .prompt-header-btn {
            flex: 1;
            justify-content: center;
        }

        .prompt-cta-row {
            flex-direction: column;
        }

        .prompt-cta-btn {
            width: 100%;
        }

        /* Customize table responsive */
        .customize-table,
        .customize-table thead,
        .customize-table tbody,
        .customize-table tr,
        .customize-table th,
        .customize-table td {
            display: block;
        }

        .customize-table thead {
            display: none;
        }

        .customize-table tr {
            margin-bottom: 16px;
            border: 1px solid #e0e0e0;
            border-radius: 8px;
            overflow: hidden;
        }

        .customize-table td {
            width: 100% !important;
            border: none;
            border-bottom: 1px solid #e0e0e0;
        }

        .customize-table td:last-child {
            border-bottom: none;
        }

        .customize-table .var-name {
            background: #f1f3f4;
            font-weight: 600;
        }

        .prompt-code-header {
            flex-direction: column;
            gap: 12px;
            align-items: flex-start;
        }

        .prompt-code-buttons {
            width: 100%;
        }

        .prompt-code-buttons .prompt-header-btn {
            flex: 1;
            justify-content: center;
        }
    }
</style>

<script>
    function handlePromptCopy() {
        // Check if unlocked via cookie
        if (typeof window.flowpastIsUnlocked === 'function' && !window.flowpastIsUnlocked()) {
            // Show email popup
            if (typeof window.flowpastShowEmailPopup === 'function') {
                window.flowpastShowEmailPopup('prompt');
            }
            return;
        }

        // Copy the customized prompt (with filled variables)
        const customizedPrompt = getCustomizedPrompt();
        const copyButtons = document.querySelectorAll('.prompt-header-copy, .prompt-header-copy-green, .prompt-cta-copy, .copy-customized-btn');

        navigator.clipboard.writeText(customizedPrompt).then(() => {
            copyButtons.forEach(btn => {
                btn.classList.add('copied');
                const textSpan = btn.querySelector('span');
                if (textSpan) textSpan.textContent = 'Copied!';
            });

            setTimeout(() => {
                copyButtons.forEach(btn => {
                    btn.classList.remove('copied');
                    const textSpan = btn.querySelector('span');
                    if (textSpan) textSpan.textContent = 'Copy Full Prompt';
                });
            }, 2000);
        }).catch(err => {
            console.error('Failed to copy:', err);
        });
    }

    // Store original prompt for customization
    const originalPrompt = "## OBJECTIVE  \r\nCreate a single, cinematic screenplay scene based on the provided inputs, designed to feel \u201cfilmable\u201d and emotionally charged. The scene must help move the story forward and end on a strong beat (reveal, turn, or cliffhanger) that prompts the next scene.\r\n\r\n## PERSONA  \r\nYou are a veteran film-and-TV screenwriter who specializes in visual storytelling, subtext-heavy dialogue, and on-the-page clarity. You write with crisp, shoot-ready descriptions (not prose), balancing atmosphere, character emotion, and momentum.\r\n\r\n## CONSTRAINTS  \r\n- Write **one complete scene** (not an outline), using **screenplay-style formatting** (scene heading, action lines, character cues, dialogue).  \r\n- Keep description **visual and performable**: show what can be seen\/heard; avoid internal monologues unless expressed through behavior or dialogue.  \r\n- Dialogue must have **distinct voices** and include **subtext** (what\u2019s meant vs. what\u2019s said).  \r\n- Include camera guidance **only when it meaningfully improves comprehension or emphasis**; do not storyboard every line.  \r\n- Maintain the requested **mood and tone** consistently.  \r\n- If any input is missing or unclear, follow the edge-case rules in the PROCESS section.\r\n\r\n### What This Is NOT (Scope Boundaries)  \r\n- Not a full screenplay, synopsis, treatment, or multi-scene sequence.  \r\n- Not a generic writing prompt or writing advice.  \r\n- Not a shot-by-shot breakdown unless explicitly requested via input.  \r\n- Not a novel-style chapter with heavy internal narration.\r\n\r\n## PROCESS  \r\n1. **Pre-Analysis Step (required):** Briefly restate your understanding of the scene you\u2019re about to write, referencing the provided inputs and what the scene must accomplish.  \r\n2. Establish the **world of the moment**: location, time, sensory details, and atmosphere that reinforce the tone.  \r\n3. Introduce each character as they appear on screen, with quick, filmable identifiers (look, energy, behavior) and the emotion they\u2019re masking or displaying.  \r\n4. Stage the blocking: clear physical actions, micro-reactions, use of space\/props, and shifting power dynamics.  \r\n5. Write dialogue that escalates or complicates the situation, embedding implication and tension without over-explaining.  \r\n6. Add selective camera notes (if any), focusing on emphasis (e.g., revealing information, isolating a reaction, tracking a shift).  \r\n7. End on a **decisive beat** that links to the larger plot: a discovery, interruption, confession, threat, or unexpected arrival.\r\n\r\n### Edge Case Handling  \r\n- If **[CHARACTERS]** is incomplete: create up to **2 additional supporting roles** that fit the tone and setting, and label them clearly.  \r\n- If **[PLOT_POINTS]** are vague: infer the most plausible stakes from **[TOPIC]** and **[MOOD_AND_TONE]**, and keep the scene\u2019s objective simple (one main turning point).  \r\n- If **[SCENE_SETTING]** is missing: choose a setting that naturally heightens conflict for the topic and mood.  \r\n- If **[CAMERA_DIRECTIONS]** are provided but conflict with clarity: prioritize clarity and keep the spirit of the request.\r\n\r\n## INPUTS  \r\n- **Topic of the scene:** [TOPIC]  \r\n- **Characters involved:** [CHARACTERS]  \r\n- **Scene setting (place\/time\/ambience):** [SCENE_SETTING]  \r\n- **Key plot points to include:** [PLOT_POINTS]  \r\n- **Mood and tone:** [MOOD_AND_TONE]  \r\n- **Requested camera directions (optional):** [CAMERA_DIRECTIONS]  \r\n\r\n## OUTPUT SPECIFICATION  \r\nReturn the scene in this structure:\r\n\r\n1. **Pre-Analysis**  \r\n   - {Understanding Summary} (2\u20134 lines)\r\n\r\n2. **Screenplay Scene**  \r\n   - **Scene Heading:** {Scene Heading} (e.g., INT.\/EXT., LOCATION, TIME)  \r\n   - **Action\/Description:** {Action Blocks}  \r\n   - **Character Introductions (as they appear):** {Character Intro Lines}  \r\n   - **Dialogue:** {Dialogue Blocks} (with character cues)  \r\n   - **Selective Camera Notes (only if useful):** {Camera Notes}  \r\n   - **End Beat \/ Cliffhanger:** {Final Beat}\r\n\r\nFormatting requirements:  \r\n- Use standard screenplay conventions for character names and dialogue.  \r\n- Keep paragraphs short and readable on the page.\r\n\r\n## QUALITY CHECKS  \r\nBefore finalizing, verify:  \r\n- {Continuity Check}: Setting, character presence, and actions remain consistent.  \r\n- {Cinematic Clarity}: Everything described can be filmed\/seen\/heard.  \r\n- {Voice Differentiation}: Each character sounds distinct and motivated.  \r\n- {Plot Advancement}: At least one plot point clearly progresses or complicates the story.  \r\n- {Ending Impact}: The last moment creates a strong pull into what comes next.";
    const variables = ["[CHARACTERS]","[PLOT_POINTS]","[TOPIC]","[MOOD_AND_TONE]","[SCENE_SETTING]","[CAMERA_DIRECTIONS]"];
    // Initial render with highlighted variables
    document.addEventListener('DOMContentLoaded', function() {
        renderPromptWithHighlights();
    });

    // Live update prompt as user types
    document.querySelectorAll('.customize-input').forEach(input => {
        input.addEventListener('input', renderPromptWithHighlights);
    });

    function renderPromptWithHighlights() {
        const promptContent = document.getElementById('premium-prompt-content');
        if (!promptContent) return;

        let updatedPrompt = originalPrompt;
        let filledVariables = {};

        // Collect filled values
        document.querySelectorAll('.customize-input').forEach(input => {
            const placeholder = input.dataset.placeholder;
            const value = input.value.trim();

            if (value) {
                filledVariables[placeholder] = value;
            }
        });

        // Replace filled variables and highlight remaining
        let htmlContent = escapeHtml(updatedPrompt);

        variables.forEach(placeholder => {
            const escapedPlaceholder = escapeHtml(placeholder);
            const regex = new RegExp(escapeRegex(escapedPlaceholder), 'g');

            if (filledVariables[placeholder]) {
                // Show filled value with green highlight
                htmlContent = htmlContent.replace(regex,
                    '<span class="prompt-variable-filled">' + escapeHtml(filledVariables[placeholder]) + '</span>'
                );
            } else {
                // Show original placeholder with yellow highlight
                htmlContent = htmlContent.replace(regex,
                    '<span class="prompt-variable">' + escapedPlaceholder + '</span>'
                );
            }
        });

        promptContent.innerHTML = htmlContent;
    }

    function escapeRegex(string) {
        return string.replace(/[.*+?^${}()|[\]\\]/g, '\\$&');
    }

    function escapeHtml(text) {
        const div = document.createElement('div');
        div.textContent = text;
        return div.innerHTML;
    }

    function resetPrompt() {
        // Clear all input fields
        document.querySelectorAll('.customize-input').forEach(input => {
            input.value = '';
        });

        // Re-render with original placeholders highlighted
        renderPromptWithHighlights();

        // Visual feedback
        const resetBtns = document.querySelectorAll('.prompt-header-reset, .prompt-cta-reset');
        resetBtns.forEach(btn => {
            const originalText = btn.querySelector('span').textContent;
            btn.querySelector('span').textContent = 'Reset!';
            setTimeout(() => {
                btn.querySelector('span').textContent = originalText;
            }, 1000);
        });
    }


    function getCustomizedPrompt() {
        let updatedPrompt = originalPrompt;

        document.querySelectorAll('.customize-input').forEach(input => {
            const placeholder = input.dataset.placeholder;
            const value = input.value.trim();

            if (value) {
                const regex = new RegExp(escapeRegex(placeholder), 'g');
                updatedPrompt = updatedPrompt.replace(regex, value);
            }
        });

        return updatedPrompt;
    }
</script>

</div>

<div class="pro-tips-section">

<h2 class="wp-block-heading">Pro Tips for Better AI Prompt Results</h2>



<ul class="wp-block-list">

<li><strong>Give the scene a job, not a vibe.</strong> “Tense” is useful, but “she must get the access code without admitting she’s been fired” is gold. After you paste the prompt, add one sentence like: “The scene must end with him realizing she lied.” That single constraint usually tightens every line.</li>


<li><strong>Anchor the location with shootable specifics.</strong> A “warehouse” is generic; “a fluorescent-lit self-storage hallway with doors labeled in fading marker” is playable. If the output feels floaty, follow up with: “Rewrite the action lines with 5 concrete props and 3 sound cues that reinforce the mood.”</li>


<li><strong>Force subtext by stating what each character won’t say.</strong> Before generating, note a hidden truth for each person (even one phrase). Then ask: “Make the dialogue polite on the surface, but let the subtext show through interruptions, deflections, and loaded word choices.” Honestly, this is the fastest way to avoid therapy-speak dialogue.</li>


<li><strong>Iterate the ending beat like it’s a trailer button.</strong> If the cliff edge is mild, don’t scrap the scene. Ask: “Keep the first 80% the same, but make the final beat a sharper turn that changes what the audience thinks they know.” Or: “Now make the ending beat more personal, not bigger.”</li>


<li><strong>Use ‘performance notes’ for a cleaner rewrite.</strong> After the first draft, pick one character and add a playable adjustment: “She smiles, but it’s a defense mechanism.” Then prompt: “Rewrite her dialogue with shorter sentences, more evasive answers, and one moment where she almost breaks.” You will get a more actable scene without adding extra exposition.</li>

</ul>

</div>

<div class="related-prompts-section">

<h2 class="wp-block-heading">Related Prompts</h2>



<p>If you’re producing scenes for real projects, the next step is often making the business side equally “shoot-ready.”</p>



<p>If you also need clean paperwork before anyone shares drafts, characters, or concepts, <a href="https://flowpast.com/prompts/draft-an-ip-assignment-agreement-with-this-ai-prompt/">Draft an IP Assignment Agreement with this AI Prompt</a> helps you document who owns what. It pairs well when a freelancer, agency, or collaborator is contributing story materials and you want clarity before feedback turns into production.</p>



<p>For teams doing client-facing story work (brand films, commercials, scripted podcasts), <a href="https://flowpast.com/prompts/draft-a-service-agreement-with-this-ai-prompt/">Draft a Service Agreement with this AI Prompt</a> is a practical complement. Use it when the creative work is approved in stages and you want clear scope, revisions, and delivery terms to avoid “one more pass” spirals.</p>



<p>When the collaboration is closer to a shared venture, not just hired help, <a href="https://flowpast.com/prompts/draft-a-joint-venture-agreement-with-this-ai-prompt/">Draft a Joint Venture Agreement with this AI Prompt</a> can fit better than a standard service doc. It’s helpful if you’re co-developing a project where marketing, distribution, or financing responsibilities are split and the scene you generate is part of a larger package.</p>


<br>


<p>Quick reference:</p>



<ul class="wp-block-list">

<li><a href="https://flowpast.com/prompts/draft-an-ip-assignment-agreement-with-this-ai-prompt/">Draft an IP Assignment Agreement with this AI Prompt</a>: Clarify ownership of creative work.</li>


<li><a href="https://flowpast.com/prompts/draft-a-service-agreement-with-this-ai-prompt/">Draft a Service Agreement with this AI Prompt</a>: Define scope, timeline, and revisions.</li>

<li><a href="https://flowpast.com/prompts/draft-a-joint-venture-agreement-with-this-ai-prompt/">Draft a Joint Venture Agreement with this AI Prompt</a>: Set terms for shared project development.</li>

<li><a href="https://flowpast.com/prompts/draft-a-partnership-agreement-with-this-ai-prompt/">Draft a Partnership Agreement with this AI Prompt</a>: Align roles, equity, and decision-making.</li>
<!-- /wp:post-content -->
<li><a href="https://flowpast.com/prompts/draft-a-dispute-resistant-agreement-with-this-ai-prompt/">Draft a Dispute-Resistant Agreement with this AI Prompt</a>: Reduce ambiguity that causes conflict.</li>
<!-- /wp:list-item -->
</ul>
<!-- /wp:list -->
</div>

<div class="faq-section">
<!-- wp:heading {"level":2} -->
<h2 class="wp-block-heading">Common Questions</h2>
<!-- /wp:heading -->

<div class="faq-item">
<span class="question">Which roles benefit most from this film-ready script scene AI prompt?</span>
<!-- wp:paragraph -->
<p class="answer"><strong>Creative Producers</strong> use this to generate a tight “sample scene” that communicates tone, pacing, and character dynamics to collaborators. <strong>Content Strategists</strong> benefit when they need narrative-led brand content that still reads like something you can shoot, not a blog paragraph. <strong>Copywriters working in video</strong> use it to upgrade dialogue and subtext, especially for ads or scripted series concepts. <strong>Agency Creative Directors</strong> lean on it when a concept needs one cinematic scene to sell the idea internally or to a client.</p>
<!-- /wp:paragraph -->
</div>

<div class="faq-item">
<span class="question">Which industries get the most value from this film-ready script scene AI prompt?</span>
<!-- wp:paragraph -->
<p class="answer"><strong>Media and entertainment teams</strong> use it to spin up audition sides, proof-of-concept scenes, or tonal references without writing a full script first. <strong>Advertising and brand studios</strong> apply it to scripted spots where the scene must be performable, visually clear, and end on a persuasive beat. <strong>SaaS and tech brands</strong> can use it for narrative product films (for example, a tense “before/after” scene that dramatizes a workflow problem). <strong>E-learning and training companies</strong> get value when they build scenario-based modules and need dialogue that feels real, not like corporate roleplay.</p>
<!-- /wp:paragraph -->
</div>

<div class="faq-item">
<span class="question">Why do basic AI prompts for writing a screenplay scene produce weak results?</span>
<!-- wp:paragraph -->
<p class="answer">A typical prompt like “Write me a screenplay scene about two people arguing” fails because it: lacks a defined scene objective and ending beat, so the moment wanders; provides no guardrails for screenplay formatting, so you get prose instead of shoot-ready lines; ignores subtext, resulting in characters saying exactly what they mean; produces generic dialogue voices that blur together; and misses the “filmable” constraint, which leads to unperformable inner thoughts instead of visible behavior and sound.</p>
<!-- /wp:paragraph -->
</div>

<div class="faq-item">
<span class="question">Can I customize this film-ready script scene prompt for my specific situation?</span>
<!-- wp:paragraph -->
<p class="answer">Yes. Even though the prompt has no fixed input fields, you customize it by adding a short “input block” before you run it: location/time, mood/tone, character list with what each person wants, and what the scene must accomplish. If you want stronger control, include constraints like “no more than 20 lines of dialogue” or “end on a reveal, not a cliffhanger.” A useful follow-up is: “Rewrite the same scene in a more restrained tone, keep the actions identical, and change only dialogue and pauses to increase subtext.”</p>
<!-- /wp:paragraph -->
</div>

<div class="faq-item">
<span class="question">What are the most common mistakes when using this film-ready script scene prompt?</span>
<!-- wp:paragraph -->
<p class="answer">The biggest mistake is leaving the scene objective vague—instead of “they talk about the breakup,” try “she needs his signature, he wants an apology, and neither will admit it.” Another common error is giving generic character descriptions; “a cop” is weaker than “a 42-year-old detective who’s overly calm because he’s hiding panic.” People also skip the ending beat, which yields a scene that fizzles; specify “end with a turn that changes the power dynamic.” Finally, writers often ask for heavy camera directions; it’s better to request “only essential camera guidance for clarity” so the page stays readable.</p>
<!-- /wp:paragraph -->
</div>

<div class="faq-item">
<span class="question">Who should NOT use this film-ready script scene prompt?</span>
<!-- wp:paragraph -->
<p class="answer">This prompt isn’t ideal for multi-scene outlining, full pilot drafts, or novel-style chapters where inner narration is the point. It also won’t be your best fit if you need a shot-by-shot storyboard for every beat, since it intentionally avoids that level of micromanaged direction unless you request it. If you’re still deciding what the story is about, start with a logline and beat sheet first, then come back when you can name the scene’s objective and the ending beat.</p>
<!-- /wp:paragraph -->
</div>

<script type="application/ld+json">
{
  "@context": "https://schema.org",
  "@type": "FAQPage",
  "mainEntity": [
    {
      "@type": "Question",
      "name": "Which roles benefit most from this film-ready script scene AI prompt?",
      "acceptedAnswer": {
        "@type": "Answer",
        "text": "Creative Producers use this to generate a tight “sample scene” that communicates tone, pacing, and character dynamics to collaborators. Content Strategists benefit when they need narrative-led brand content that still reads like something you can shoot, not a blog paragraph. Copywriters working in video use it to upgrade dialogue and subtext, especially for ads or scripted series concepts. Agency Creative Directors lean on it when a concept needs one cinematic scene to sell the idea internally or to a client."
      }
    },
    {
      "@type": "Question",
      "name": "Which industries get the most value from this film-ready script scene AI prompt?",
      "acceptedAnswer": {
        "@type": "Answer",
        "text": "Media and entertainment teams use it to spin up audition sides, proof-of-concept scenes, or tonal references without writing a full script first. Advertising and brand studios apply it to scripted spots where the scene must be performable, visually clear, and end on a persuasive beat. SaaS and tech brands can use it for narrative product films (for example, a tense “before/after” scene that dramatizes a workflow problem). E-learning and training companies get value when they build scenario-based modules and need dialogue that feels real, not like corporate roleplay."
      }
    },
    {
      "@type": "Question",
      "name": "Why do basic AI prompts for writing a screenplay scene produce weak results?",
      "acceptedAnswer": {
        "@type": "Answer",
        "text": "A typical prompt like “Write me a screenplay scene about two people arguing” fails because it: lacks a defined scene objective and ending beat, so the moment wanders; provides no guardrails for screenplay formatting, so you get prose instead of shoot-ready lines; ignores subtext, resulting in characters saying exactly what they mean; produces generic dialogue voices that blur together; and misses the “filmable” constraint, which leads to unperformable inner thoughts instead of visible behavior and sound."
      }
    },
    {
      "@type": "Question",
      "name": "Can I customize this film-ready script scene prompt for my specific situation?",
      "acceptedAnswer": {
        "@type": "Answer",
        "text": "Yes. Even though the prompt has no fixed input fields, you customize it by adding a short “input block” before you run it: location/time, mood/tone, character list with what each person wants, and what the scene must accomplish. If you want stronger control, include constraints like “no more than 20 lines of dialogue” or “end on a reveal, not a cliffhanger.” A useful follow-up is: “Rewrite the same scene in a more restrained tone, keep the actions identical, and change only dialogue and pauses to increase subtext.”"
      }
    },
    {
      "@type": "Question",
      "name": "What are the most common mistakes when using this film-ready script scene prompt?",
      "acceptedAnswer": {
        "@type": "Answer",
        "text": "The biggest mistake is leaving the scene objective vague—instead of “they talk about the breakup,” try “she needs his signature, he wants an apology, and neither will admit it.” Another common error is giving generic character descriptions; “a cop” is weaker than “a 42-year-old detective who’s overly calm because he’s hiding panic.” People also skip the ending beat, which yields a scene that fizzles; specify “end with a turn that changes the power dynamic.” Finally, writers often ask for heavy camera directions; it’s better to request “only essential camera guidance for clarity” so the page stays readable."
      }
    },
    {
      "@type": "Question",
      "name": "Who should NOT use this film-ready script scene prompt?",
      "acceptedAnswer": {
        "@type": "Answer",
        "text": "This prompt isn’t ideal for multi-scene outlining, full pilot drafts, or novel-style chapters where inner narration is the point. It also won’t be your best fit if you need a shot-by-shot storyboard for every beat, since it intentionally avoids that level of micromanaged direction unless you request it. If you’re still deciding what the story is about, start with a logline and beat sheet first, then come back when you can name the scene’s objective and the ending beat."
      }
    }
  ]
}
</script>
</div>

<div class="closing-section">
<!-- wp:paragraph -->
<p>A scene that feels shootable changes everything. Paste the prompt into your AI tool, add your scene inputs, and get a screenplay-formatted moment that actually builds momentum.</p>
<!-- /wp:paragraph -->
</div>]]></content:encoded>
					
		
		
		<media:content url="https://flowpast.s3.eu-north-1.amazonaws.com/featured_blog_images/5000614.webp" medium="image"></media:content>
            	</item>
		<item>
		<title>Generate Screenplay Premises AI Prompt</title>
		<link>https://flowpast.com/prompts/generate-screenplay-premises-ai-prompt/</link>
		
		<dc:creator><![CDATA[Lisa Granqvist]]></dc:creator>
		<pubDate>Fri, 23 Jan 2026 02:18:34 +0000</pubDate>
				<category><![CDATA[Prompts]]></category>
		<guid isPermaLink="false">https://flowpast.com/?p=5000613</guid>

					<description><![CDATA[Premises feel derivative - a proven AI Prompt that generates pitch-ready screenplay ideas with beats, arcs, themes, and audience impact. Discover more AI prompts for marketing, sales, and ops.]]></description>
										<content:encoded><![CDATA[<!-- FOCUS_KEYWORD: screenplay premises AI prompt -->

<div class="hook-introduction">

<p>Most screenplay ideas die in the first 30 seconds. Not because you can’t write, but because the premise sounds familiar, the hook is soft, or the character arc isn’t baked in from the start. You end up circling the same genre, the same setting, the same “what if” you’ve heard a hundred times.</p>



<p>This <strong>screenplay premises AI prompt</strong> is built for <strong>working screenwriters</strong> who need a handful of pitchable concepts fast (without resorting to clichés), <strong>development producers</strong> who want a clean way to compare multiple “greenlight-able” directions, and <strong>content creators building narrative series</strong> who need distinct story engines they can actually expand. The output is a set of compact, film/TV-ready concepts that include genre, setting, theme, core cast, a clear plot spine, character arcs, and intended viewer impact.</p>

</div>

<div class="what-and-when-section">

<h2 class="wp-block-heading">What Does This AI Prompt Do and When to Use It?</h2>



<table class="solution-results-table three-column" role="presentation" aria-label="What this prompt does, when to use it, and what you get">
 <thead>
    <tr>
      <th scope="col">What This Prompt Does</th>
      <th scope="col">When to Use This Prompt</th>
      <th scope="col">What You&#8217;ll Get</th>
    </tr>
  </thead>
  <tbody>
    <tr>
      <td>
        <ul class="automation-list">
          <li>Generates multiple original story concepts across different genre and setting combinations so your slate doesn’t feel repetitive.</li>
          <li>Builds each concept around a thematic throughline, not just a twist, so the idea has emotional intent and depth.</li>
          <li>Defines a protagonist with desire, flaw, and pressure, then sketches the growth path the story forces on them.</li>
          <li>Outputs pitch-friendly components (genre, setting, core cast, plot spine, arcs, viewer impact) in a consistent structure for easy comparison.</li>
          <li>Flags assumptions when inputs are missing or too broad, so you can see what it inferred before you develop further.</li>
       </ul>
      </td>
      <td>
        <ul class="results-list">
          <li>You’re prepping for a pitch and you need 5–10 strong “containers” to test with reps, producers, or your writing partner.</li>
          <li>You have a vibe, a theme, or a character type, but the logline keeps sliding into familiar territory.</li>
          <li>You’re building a list of spec directions and want at least four distinct story engines (mystery, rivalry, survival, heist, romance, etc.).</li>
          <li>A producer or client asked for “something like X,” and you need adjacent originality without writing a thinly veiled copy.</li>
          <li>You’re scaling output for a writers’ room, YouTube narrative channel, or indie slate and can’t afford weeks of ideation.</li>
        </ul>
      </td>
       <td>
         <ul class="deliverables-list">
           <li>A set of {Number Of Ideas} screenplay/TV premises with non-repeating genre-setting pairings.</li>
           <li>For each idea: a one-sentence theme statement plus a compact synopsis that avoids vague “then things happen” beats.</li>
           <li>A core cast definition that includes a protagonist and 2–4 key supporting roles with narrative purpose.</li>
           <li>Clear character arc notes (who changes, how, and what pressure forces it) you can carry into a beat sheet later.</li>
           <li>An “intended viewer impact” line per concept to guide tone, stakes, and the final emotional aftertaste.</li>
         </ul>
       </td>
    </tr>
  </tbody>
</table>

</div>

<div class="prompt-display-section">

<h2 class="wp-block-heading">The Full AI Prompt: Pitch-Ready Screenplay Premise Generator</h2>



<div class="prompt-viewer-wrapper" id="prompt-section">
    <div class="prompt-comparison-row prompt-premium">
        <!-- Header with buttons -->
        <div class="prompt-row-header">
            <!-- <span class="prompt-row-icon">✨</span> -->
            <span class="prompt-row-title">
                                    Step 1: Customize the prompt with your input
                            </span>
            <div class="prompt-header-buttons">
                                    <button class="prompt-header-btn prompt-header-reset" onclick="resetPrompt()">
                        <svg xmlns="http://www.w3.org/2000/svg" width="16" height="16" fill="currentColor" viewBox="0 0 16 16">
                            <path fill-rule="evenodd" d="M8 3a5 5 0 1 0 4.546 2.914.5.5 0 0 1 .908-.417A6 6 0 1 1 8 2v1z" />
                            <path d="M8 4.466V.534a.25.25 0 0 1 .41-.192l2.36 1.966c.12.1.12.284 0 .384L8.41 4.658A.25.25 0 0 1 8 4.466z" />
                        </svg>
                        <span>Reset</span>
                    </button>
                                <button class="prompt-header-btn prompt-header-copy-green flowpast-copy-prompt-btn" onclick="handlePromptCopy()">
                    <svg xmlns="http://www.w3.org/2000/svg" width="16" height="16" fill="currentColor" viewBox="0 0 16 16">
                        <path d="M4 1.5H3a2 2 0 0 0-2 2V14a2 2 0 0 0 2 2h10a2 2 0 0 0 2-2V3.5a2 2 0 0 0-2-2h-1v1h1a1 1 0 0 1 1 1V14a1 1 0 0 1-1 1H3a1 1 0 0 1-1-1V3.5a1 1 0 0 1 1-1h1v-1z" />
                        <path d="M9.5 1a.5.5 0 0 1 .5.5v1a.5.5 0 0 1-.5.5h-3a.5.5 0 0 1-.5-.5v-1a.5.5 0 0 1 .5-.5h3zm-3-1A1.5 1.5 0 0 0 5 1.5v1A1.5 1.5 0 0 0 6.5 4h3A1.5 1.5 0 0 0 11 2.5v-1A1.5 1.5 0 0 0 9.5 0h-3z" />
                    </svg>
                    <span>Customize and Copy Full Prompt</span>
                </button>
            </div>
        </div>

        <!-- Customize the Prompt Section -->
                    <div class="prompt-customize-section">
                <span class="customize-title">Customize the Prompt</span>
                <p class="customize-subtitle">Fill in the fields below to personalize this prompt for your needs.</p>
                <table class="customize-table">
                    <thead>
                        <tr>
                            <th>Variable</th>
                            <th>What to Enter</th>
                            <th>Customise the prompt</th>
                        </tr>
                    </thead>
                    <tbody>
                                                    <tr>
                                <td class="var-name"><code>[PREFERRED_GENRES]</code></td>
                                <td class="var-desc">
                                    List the genres you want the story concepts to fall under. Examples include drama, comedy, thriller, horror, or fantasy.                                    <div class="var-example">For example: "Thriller, Sci-fi, Dark Comedy, Historical Drama"</div>
                                </td>
                                <td class="var-input">
                                                                            <textarea
                                            class="customize-input"
                                            data-placeholder="[PREFERRED_GENRES]"
                                            placeholder="Enter your value here..."
                                            rows="3"></textarea>
                                                                    </td>
                            </tr>
                                                    <tr>
                                <td class="var-name"><code>[SETTINGS]</code></td>
                                <td class="var-desc">
                                    Specify the time periods, locations, or types of worlds where the stories should take place. Include details like historical eras, futuristic settings, or specific geographic locations.                                    <div class="var-example">For example: "1920s Chicago, near-future Mars colony, contemporary rural America"</div>
                                </td>
                                <td class="var-input">
                                                                            <textarea
                                            class="customize-input"
                                            data-placeholder="[SETTINGS]"
                                            placeholder="Enter your value here..."
                                            rows="3"></textarea>
                                                                    </td>
                            </tr>
                                                    <tr>
                                <td class="var-name"><code>[THEMES]</code></td>
                                <td class="var-desc">
                                    Describe the core ideas or messages you want the stories to explore, such as love, betrayal, redemption, or the clash between tradition and progress.                                    <div class="var-example">For example: "The cost of ambition, the fragility of human connection, the ethics of technology"</div>
                                </td>
                                <td class="var-input">
                                                                            <textarea
                                            class="customize-input"
                                            data-placeholder="[THEMES]"
                                            placeholder="Enter your value here..."
                                            rows="3"></textarea>
                                                                    </td>
                            </tr>
                                                    <tr>
                                <td class="var-name"><code>[CHARACTER_TYPES]</code></td>
                                <td class="var-desc">
                                    Provide details about the kinds of characters you want to see in the stories, including their roles, personalities, or archetypes.                                    <div class="var-example">For example: "Anti-heroes, idealistic underdogs, morally conflicted leaders, eccentric geniuses"</div>
                                </td>
                                <td class="var-input">
                                                                            <textarea
                                            class="customize-input"
                                            data-placeholder="[CHARACTER_TYPES]"
                                            placeholder="Enter your value here..."
                                            rows="3"></textarea>
                                                                    </td>
                            </tr>
                                                    <tr>
                                <td class="var-name"><code>[EMOTIONAL_IMPACT]</code></td>
                                <td class="var-desc">
                                    Specify the emotional experience you want the audience to have, such as suspense, catharsis, joy, or heartbreak.                                    <div class="var-example">For example: "A mix of tension and hopefulness, leaving the audience inspired and reflective"</div>
                                </td>
                                <td class="var-input">
                                                                            <textarea
                                            class="customize-input"
                                            data-placeholder="[EMOTIONAL_IMPACT]"
                                            placeholder="Enter your value here..."
                                            rows="3"></textarea>
                                                                    </td>
                            </tr>
                                                    <tr>
                                <td class="var-name"><code>[INTELLECTUAL_IMPACT]</code></td>
                                <td class="var-desc">
                                    Describe the kind of thought-provoking ideas or questions you want the stories to leave the audience with, such as ethical dilemmas or philosophical insights.                                    <div class="var-example">For example: "Encourage viewers to question societal norms and reflect on personal morality"</div>
                                </td>
                                <td class="var-input">
                                                                            <textarea
                                            class="customize-input"
                                            data-placeholder="[INTELLECTUAL_IMPACT]"
                                            placeholder="Enter your value here..."
                                            rows="3"></textarea>
                                                                    </td>
                            </tr>
                                                    <tr>
                                <td class="var-name"><code>[NUMBER_OF_IDEAS]</code></td>
                                <td class="var-desc">
                                    State the number of distinct story concepts you want generated. Provide a specific number to ensure clarity.                                    <div class="var-example">For example: "5"</div>
                                </td>
                                <td class="var-input">
                                                                            <input
                                            type="text"
                                            class="customize-input"
                                            data-placeholder="[NUMBER_OF_IDEAS]"
                                            placeholder="Enter your value here..." />
                                                                    </td>
                            </tr>
                                                    <tr>
                                <td class="var-name"><code>[CONTEXT]</code></td>
                                <td class="var-desc">
                                    Include any additional information or constraints that should shape the story concepts, such as audience demographics or specific creative challenges.                                    <div class="var-example">For example: "Targeting young adult viewers; avoid stories centered on war or political intrigue."</div>
                                </td>
                                <td class="var-input">
                                                                            <textarea
                                            class="customize-input"
                                            data-placeholder="[CONTEXT]"
                                            placeholder="Enter your value here..."
                                            rows="3"></textarea>
                                                                    </td>
                            </tr>
                                            </tbody>
                </table>

                <button class="copy-customized-btn flowpast-copy-prompt-btn" onclick="handlePromptCopy()">
                    <svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" fill="currentColor" viewBox="0 0 16 16">
                        <path d="M4 1.5H3a2 2 0 0 0-2 2V14a2 2 0 0 0 2 2h10a2 2 0 0 0 2-2V3.5a2 2 0 0 0-2-2h-1v1h1a1 1 0 0 1 1 1V14a1 1 0 0 1-1 1H3a1 1 0 0 1-1-1V3.5a1 1 0 0 1 1-1h1v-1z" />
                        <path d="M9.5 1a.5.5 0 0 1 .5.5v1a.5.5 0 0 1-.5.5h-3a.5.5 0 0 1-.5-.5v-1a.5.5 0 0 1 .5-.5h3zm-3-1A1.5 1.5 0 0 0 5 1.5v1A1.5 1.5 0 0 0 6.5 4h3A1.5 1.5 0 0 0 11 2.5v-1A1.5 1.5 0 0 0 9.5 0h-3z" />
                    </svg>
                    <span class="copy-customized-text">Customise the prompt now</span>
                </button>
            </div>
        
        <!-- Full Prompt Code Header -->
                    <div class="prompt-code-header">
                <span class="prompt-code-title">
                    Step 2: Copy the Prompt
                </span>
                <div class="prompt-code-buttons">
                    <!-- Reset: Only visible when unlocked -->
                    <button class="prompt-header-btn prompt-header-reset btn-when-unlocked" onclick="resetPrompt()" style="display: none;">
                        <svg xmlns="http://www.w3.org/2000/svg" width="16" height="16" fill="currentColor" viewBox="0 0 16 16">
                            <path fill-rule="evenodd" d="M8 3a5 5 0 1 0 4.546 2.914.5.5 0 0 1 .908-.417A6 6 0 1 1 8 2v1z" />
                            <path d="M8 4.466V.534a.25.25 0 0 1 .41-.192l2.36 1.966c.12.1.12.284 0 .384L8.41 4.658A.25.25 0 0 1 8 4.466z" />
                        </svg>
                        <span>Reset</span>
                    </button>
                    <!-- Copy Full Prompt -->
                    <button class="prompt-header-btn prompt-header-copy flowpast-copy-prompt-btn" onclick="handlePromptCopy()">
                        <svg xmlns="http://www.w3.org/2000/svg" width="16" height="16" fill="currentColor" viewBox="0 0 16 16">
                            <path d="M4 1.5H3a2 2 0 0 0-2 2V14a2 2 0 0 0 2 2h10a2 2 0 0 0 2-2V3.5a2 2 0 0 0-2-2h-1v1h1a1 1 0 0 1 1 1V14a1 1 0 0 1-1 1H3a1 1 0 0 1-1-1V3.5a1 1 0 0 1 1-1h1v-1z" />
                            <path d="M9.5 1a.5.5 0 0 1 .5.5v1a.5.5 0 0 1-.5.5h-3a.5.5 0 0 1-.5-.5v-1a.5.5 0 0 1 .5-.5h3zm-3-1A1.5 1.5 0 0 0 5 1.5v1A1.5 1.5 0 0 0 6.5 4h3A1.5 1.5 0 0 0 11 2.5v-1A1.5 1.5 0 0 0 9.5 0h-3z" />
                        </svg>
                        <span>Copy Full Prompt</span>
                    </button>
                </div>
            </div>
        

        <!-- Prompt Content -->
        <div class="prompt-box prompt-gated-wrapper">
            <!-- Gated: Blurred content -->
            <div class="prompt-gated-content">
                <div class="prompt-header-visible">OBJECTIVE</div><div class="locked-section"><div class="locked-section-bg"><div class="locked-section-lines"><div class="locked-line" style="width: 85%;"></div><div class="locked-line" style="width: 78%;"></div></div></div><div class="locked-section-icon">🔒</div></div><div class="prompt-header-visible">PERSONA</div><div class="locked-section"><div class="locked-section-bg"><div class="locked-section-lines"><div class="locked-line" style="width: 85%;"></div><div class="locked-line" style="width: 78%;"></div></div></div><div class="locked-section-icon">🔒</div></div><div class="prompt-header-visible">CONSTRAINTS</div><div class="locked-section"><div class="locked-section-bg"><div class="locked-section-lines"><div class="locked-line" style="width: 85%;"></div><div class="locked-line" style="width: 78%;"></div><div class="locked-line" style="width: 92%;"></div><div class="locked-line" style="width: 75%;"></div><div class="locked-line" style="width: 88%;"></div></div></div><div class="locked-section-icon">🔒</div></div><div class="prompt-header-visible subheader">What This Is NOT</div><div class="locked-section"><div class="locked-section-bg"><div class="locked-section-lines"><div class="locked-line" style="width: 85%;"></div><div class="locked-line" style="width: 78%;"></div><div class="locked-line" style="width: 92%;"></div><div class="locked-line" style="width: 75%;"></div></div></div><div class="locked-section-icon">🔒</div></div><div class="prompt-header-visible">PROCESS</div><div class="locked-section"><div class="locked-section-bg"><div class="locked-section-lines"><div class="locked-line" style="width: 85%;"></div><div class="locked-line" style="width: 78%;"></div><div class="locked-line" style="width: 92%;"></div><div class="locked-line" style="width: 75%;"></div><div class="locked-line" style="width: 88%;"></div><div class="locked-line" style="width: 72%;"></div><div class="locked-line" style="width: 80%;"></div><div class="locked-line" style="width: 95%;"></div><div class="locked-line" style="width: 70%;"></div><div class="locked-line" style="width: 83%;"></div><div class="locked-line" style="width: 85%;"></div><div class="locked-line" style="width: 78%;"></div><div class="locked-line" style="width: 92%;"></div></div></div><div class="locked-section-icon">🔒</div></div><div class="prompt-header-visible">INPUTS</div><div class="locked-section"><div class="locked-section-bg"><div class="locked-section-lines"><div class="locked-line" style="width: 85%;"></div><div class="locked-line" style="width: 78%;"></div><div class="locked-line" style="width: 92%;"></div><div class="locked-line" style="width: 75%;"></div><div class="locked-line" style="width: 88%;"></div><div class="locked-line" style="width: 72%;"></div><div class="locked-line" style="width: 80%;"></div><div class="locked-line" style="width: 95%;"></div></div></div><div class="locked-section-icon">🔒</div></div><div class="prompt-header-visible">OUTPUT SPECIFICATION</div><div class="locked-section"><div class="locked-section-bg"><div class="locked-section-lines"><div class="locked-line" style="width: 85%;"></div><div class="locked-line" style="width: 78%;"></div></div></div><div class="locked-section-icon">🔒</div></div><div class="prompt-header-visible subheader">{Idea Title}</div><div class="locked-section"><div class="locked-section-bg"><div class="locked-section-lines"><div class="locked-line" style="width: 85%;"></div><div class="locked-line" style="width: 78%;"></div><div class="locked-line" style="width: 92%;"></div><div class="locked-line" style="width: 75%;"></div><div class="locked-line" style="width: 88%;"></div><div class="locked-line" style="width: 72%;"></div><div class="locked-line" style="width: 80%;"></div><div class="locked-line" style="width: 95%;"></div><div class="locked-line" style="width: 70%;"></div><div class="locked-line" style="width: 83%;"></div><div class="locked-line" style="width: 85%;"></div><div class="locked-line" style="width: 78%;"></div><div class="locked-line" style="width: 92%;"></div><div class="locked-line" style="width: 75%;"></div><div class="locked-line" style="width: 88%;"></div></div></div><div class="locked-section-icon">🔒</div></div><div class="prompt-header-visible">QUALITY CHECKS</div><div class="locked-section"><div class="locked-section-bg"><div class="locked-section-lines"><div class="locked-line" style="width: 85%;"></div><div class="locked-line" style="width: 78%;"></div><div class="locked-line" style="width: 92%;"></div><div class="locked-line" style="width: 75%;"></div><div class="locked-line" style="width: 88%;"></div><div class="locked-line" style="width: 72%;"></div></div></div><div class="locked-section-icon">🔒</div></div>            </div>
            <!-- Unlocked: Full content (hidden by default) -->
            <div class="prompt-content-full" id="premium-prompt-content" style="display: none;">
                ## OBJECTIVE
Create a set of fresh, film/TV-ready story concepts that can be developed into full scripts. Each concept must feel distinct, be broadly appealing, and include clear thematic intent, character growth potential, and at least one standout hook (twist, dilemma, or unusual premise).

## PERSONA
You are a veteran screenwriter and development-minded story producer. You communicate with crisp, pitch-friendly language, emphasizing cinematic premise, character motivation, and emotionally resonant turning points.

## CONSTRAINTS
- Generate **{Number Of Ideas}** concepts spanning **multiple genres and time/place backdrops** (avoid repeating the same combination).
- Every idea must include: genre, setting, theme, core cast, plot spine, character arcs, and intended viewer impact.
- Keep synopses **compact but specific** (no vague “then things happen” summaries).
- Ensure originality: no direct borrowing from famous franchises; avoid common loglines unless you add a meaningful new angle.
- **Edge cases:** If any inputs are missing or too broad, infer 1–2 reasonable options and clearly label them as assumptions before writing the ideas.

### What This Is NOT
- Not a full screenplay, beat sheet, or scene-by-scene outline.
- Not a world bible with exhaustive lore.
- Not a marketing plan, budget estimate, or casting list.
- Not a remake, parody, or thinly veiled copy of an existing IP.

## PROCESS
1. **Pre-Analysis (required):** Briefly restate what you will generate and call out any assumptions you’re making from the inputs.
2. Map variety across concepts by mixing:
   - genre (at least 4 distinct genres overall)
   - setting type (e.g., contemporary, historical, near-future, far-future, fantastical)
   - story engine (mystery, survival, rivalry, heist, romance, political intrigue, etc.)
3. For each concept:
   - define the thematic throughline in one sharp sentence
   - design a protagonist with a desire + flaw + pressure
   - build 2–4 key supporting roles that complicate the goal
   - outline the narrative using: inciting event → escalation → midpoint shift → climax → aftermath
   - state at least one meaningful twist OR a “reframe” reveal OR a moral tradeoff
   - specify character transformations and what triggers them
   - specify emotional takeaway + intellectual aftertaste

## INPUTS
- **Preferred genres:** [PREFERRED_GENRES]  
- **Settings to explore:** [SETTINGS]  
- **Themes you want:** [THEMES]  
- **Character types you like:** [CHARACTER_TYPES]  
- **Emotional effect you want:** [EMOTIONAL_IMPACT]  
- **Intellectual effect you want:** [INTELLECTUAL_IMPACT]  
- **How many ideas to generate:** [NUMBER_OF_IDEAS]  
- **Any extra background or boundaries (optional):** [CONTEXT]  

## OUTPUT SPECIFICATION
Return **{Number Of Ideas}** ideas. For each, use this structure:

### {Idea Title}
- **Genre:** {Genre}  
- **Setting:** {Setting}  
- **Core theme:** {Theme Statement}  
- **Hook mechanism:** {Hook Mechanism}  
- **Key characters:**  
  - {Character 1 Name} — {Role + defining trait + inner conflict}  
  - {Character 2 Name} — {Role + defining trait + inner conflict}  
  - {Character 3 Name} — {Role + defining trait + inner conflict}  
  - {Character 4 Name} — {Role + defining trait + inner conflict} *(optional)*  
- **Synopsis (tight plot spine):** {Inciting Incident → Escalation → Midpoint Shift → Climax → Resolution}  
- **Character arcs:** {Arc Notes (who changes, how, and why)}  
- **Intended audience impact:**  
  - **Emotional:** {Emotional Outcome}  
  - **Intellectual:** {Intellectual Outcome}  
- **Why it’s different:** {Originality Note}

## QUALITY CHECKS
At the end, include a short validation list confirming:
- {Checklist Item}: Genres/settings are meaningfully varied and not repetitive  
- {Checklist Item}: Each idea has a clear theme and a functional plot spine  
- {Checklist Item}: Protagonists have desire/flaw/pressure and non-trivial growth  
- {Checklist Item}: Each concept contains a distinct hook mechanism (twist/dilemma/reframe)  
- {Checklist Item}: Emotional + intellectual impacts align with the provided inputs            </div>
        </div>


    </div>

    <!-- CTA Row - Full width buttons -->
    <div class="prompt-cta-row">
        <button class="prompt-cta-btn prompt-cta-copy flowpast-copy-prompt-btn" onclick="handlePromptCopy()">
            <svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" fill="currentColor" viewBox="0 0 16 16">
                <path d="M4 1.5H3a2 2 0 0 0-2 2V14a2 2 0 0 0 2 2h10a2 2 0 0 0 2-2V3.5a2 2 0 0 0-2-2h-1v1h1a1 1 0 0 1 1 1V14a1 1 0 0 1-1 1H3a1 1 0 0 1-1-1V3.5a1 1 0 0 1 1-1h1v-1z" />
                <path d="M9.5 1a.5.5 0 0 1 .5.5v1a.5.5 0 0 1-.5.5h-3a.5.5 0 0 1-.5-.5v-1a.5.5 0 0 1 .5-.5h3zm-3-1A1.5 1.5 0 0 0 5 1.5v1A1.5 1.5 0 0 0 6.5 4h3A1.5 1.5 0 0 0 11 2.5v-1A1.5 1.5 0 0 0 9.5 0h-3z" />
            </svg>
            <span class="cta-copy-text">Copy Full Prompt</span>
        </button>
    </div>
</div>

<style>
    /* Gated prompt states */
    .prompt-gated-wrapper {
        position: relative;
    }

    /* When unlocked - show full content, hide gated */
    body.flowpast-unlocked .prompt-gated-wrapper .prompt-gated-content {
        display: none;
    }

    body.flowpast-unlocked .prompt-gated-wrapper .prompt-content-full {
        display: block !important;
    }

    /* Show/hide elements based on unlock state */
    body.flowpast-unlocked .btn-when-unlocked {
        display: inline-flex !important;
    }

    .prompt-viewer-wrapper {
        scroll-margin-top: 250px;
    }

    /* ========================================
   PROMPT VIEWER - MAIN WRAPPER
   ======================================== */
    .prompt-viewer-wrapper {
        margin: 30px 0;
        display: flex;
        flex-direction: column;
        gap: 20px;
    }

    /* ========================================
   PROMPT BOX CONTAINER
   ======================================== */
    .prompt-comparison-row {
        border-radius: 12px;
        overflow: hidden;
        border: 1px solid #e0e0e0;
        background: #fff;
    }

    /* ========================================
   HEADER WITH BUTTONS
   ======================================== */
    .prompt-row-header {
        display: flex;
        align-items: center;
        gap: 10px;
        padding: 14px 20px;
        color: #fff !important;
        background: #141414;
        border-bottom: 1px solid #e0e0e0;
        flex-wrap: wrap;
    }

    .prompt-row-icon {
        font-size: 20px;
    }

    .prompt-row-title {
        font-weight: 600;
        font-size: 22px;
        color: #fff !important;
        text-decoration: underline
    }

    .prompt-header-buttons {
        margin-left: auto;
        display: flex;
        gap: 10px;
        flex-wrap: wrap;
    }

    /* Header buttons */
    .prompt-header-btn {
        display: inline-flex;
        align-items: center;
        gap: 8px;
        padding: 10px 20px;
        border-radius: 6px;
        font-size: 14px;
        font-weight: 600;
        cursor: pointer;
        transition: all 0.2s;
        text-decoration: none;
        border: none;
    }

    .prompt-header-copy {
        background: #3a3a3a;
        color: #fff;
    }

    .prompt-header-copy:hover {
        background: #2a2a2a;
    }

    .prompt-header-copy.copied {
        background: #2e7d32;
    }

    .prompt-header-copy-green {
        background: #04AA6D !important;
        color: #fff !important;
    }

    .prompt-header-copy-green:hover {
        background: #039860 !important;
    }

    .prompt-header-copy-green.copied {
        background: #2e7d32 !important;
    }

    .prompt-header-access {
        background: rgb(5, 152, 98);
        color: #fff !important;
    }

    .prompt-header-access:hover {
        background: rgb(4, 130, 83);
        transform: translateY(-1px);
    }

    /* ========================================
   PROMPT CONTENT - FULL (NO SCROLL)
   ======================================== */
    .prompt-box {
        background: #ffffff;
    }

    .prompt-content-full {
        padding: 24px;
        margin: 0;
        color: #202124;
        background: #ffffff;
        font-family: 'Fira Code', 'Monaco', 'Consolas', monospace;
        font-size: 13px;
        line-height: 1.7;
        white-space: pre-wrap;
        word-wrap: break-word;
        /* No scroll - show full content */
        max-height: none;
        overflow: visible;
    }

    /* Highlighted variable in prompt */
    .prompt-variable {
        background: #fff3cd;
        color: #1967d2;
        font-weight: 700;
        padding: 2px 4px;
        border-radius: 3px;
        border: 1px solid #ffc107;
    }

    .prompt-variable-filled {
        background: #d4edda;
        color: #155724;
        font-weight: 700;
        padding: 2px 4px;
        border-radius: 3px;
        border: 1px solid #28a745;
    }

    /* ========================================
   GATED CONTENT (NO ACCESS)
   ======================================== */
    .prompt-gated-content {
        padding: 24px;
        background: #ffffff;
        font-family: 'Fira Code', 'Monaco', 'Consolas', monospace;
        font-size: 13px;
        line-height: 1.8;
        max-height: none;
        overflow: visible;
        user-select: none;
        -webkit-user-select: none;
        -moz-user-select: none;
        -ms-user-select: none;
        cursor: default;
    }

    /* ## headers - larger, black */
    .prompt-header-visible {
        color: #202124;
        font-weight: 600;
        margin: 5px 0 0px 0;
        font-size: 20px;
        user-select: none;
        -webkit-user-select: none;
        -moz-user-select: none;
        -ms-user-select: none;
        text-decoration: underline;
        text-underline-offset: 4px;
    }

    /* ### headers - smaller, black */
    .prompt-header-visible.subheader {
        color: #202124;
        font-weight: 600;
        margin: 5px 0;
        font-size: 18px;
    }

    .prompt-header-visible:first-child {
        margin-top: 0;
    }

    /* ========================================
   LOCKED SECTION BLOCK
   ======================================== */
    .locked-section {
        position: relative;
        margin: 4px 0 8px 0;
        border-radius: 6px;
        overflow: hidden;
        background: linear-gradient(110deg, #e2e8f0 8%, #f1f5f9 18%, #e2e8f0 33%);
        user-select: none;
        -webkit-user-select: none;
        -moz-user-select: none;
        -ms-user-select: none;
    }

    .locked-section-bg {
        position: relative;
    }

    .locked-section-lines {
        padding: 8px 12px;
        position: relative;
    }

    .locked-line {
        height: 6px;
        background: rgba(255, 255, 255, 0.6);
        border-radius: 3px;
        margin-bottom: 4px;
        margin-left: 12px;
    }

    .locked-line:last-child {
        margin-bottom: 0;
    }

    .locked-section-icon {
        position: absolute;
        top: 50%;
        left: 50%;
        transform: translate(-50%, -50%);
        z-index: 10;
        font-size: 24px;
        filter: drop-shadow(0 1px 3px rgba(0, 0, 0, 0.1));
    }

    /* Subheader locked sections - slightly indented */
    /*  .prompt-header-visible.subheader+.locked-section {
        margin-left: 16px;
    } */

    /* ========================================
   COMPATIBILITY BADGES
   ======================================== */
    .prompt-compatibility {
        display: flex;
        flex-wrap: wrap;
        align-items: center;
        gap: 8px;
        padding: 12px 20px;
        background: #f8f9fa;
        border-top: 1px solid #e0e0e0;
    }

    .compat-label {
        font-size: 13px;
        color: #5f6368;
        font-weight: 500;
    }

    .compat-badge {
        padding: 4px 10px;
        background: #e8f0fe;
        color: #1967d2;
        border-radius: 4px;
        font-size: 12px;
        font-weight: 500;
    }

    /* ========================================
   CTA ROW - FULL WIDTH BUTTONS
   ======================================== */
    .prompt-cta-row {
        display: flex;
        gap: 16px;
        flex-wrap: wrap;
    }

    .prompt-cta-btn {
        flex: 1;
        min-width: 200px;
        display: inline-flex;
        align-items: center;
        justify-content: center;
        gap: 10px;
        padding: 16px 24px;
        border-radius: 8px;
        font-size: 16px;
        font-weight: 600;
        cursor: pointer;
        transition: all 0.2s;
        text-decoration: none;
        border: none;
    }

    .prompt-cta-copy {
        background: #3a3a3a;
        color: #fff;
    }

    .prompt-cta-copy:hover {
        background: #2a2a2a;
        transform: translateY(-2px);
        box-shadow: 0 4px 12px rgba(0, 0, 0, 0.15);
    }

    .prompt-cta-copy.copied {
        background: #2e7d32;
    }

    .prompt-cta-reset {
        background: #3a3a3a;
        color: #fff;
    }

    .prompt-cta-reset:hover {
        background: #2a2a2a;
        transform: translateY(-2px);
        box-shadow: 0 4px 12px rgba(0, 0, 0, 0.15);
    }

    .prompt-cta-access {
        background: rgb(5, 152, 98);
        color: #fff !important;
    }

    .prompt-cta-access:hover {
        background: rgb(4, 130, 83);
        transform: translateY(-2px);
        box-shadow: 0 4px 12px rgba(5, 152, 98, 0.3);
    }

    /* ========================================
    CUSTOMIZE YOUR PROMPT SECTION
    ======================================== */
    .prompt-customize-section {
        padding: 24px;
        border-bottom: 1px solid #e0e0e0;
        background: #fafbfc;
    }

    .customize-title {
        margin: 0 0 8px 0;
        font-size: 18px;
        font-weight: 700;
        color: #202124;
    }

    .customize-subtitle {
        margin: 0 0 20px 0;
        font-size: 14px;
        color: #5f6368;
    }

    .customize-table {
        width: 100%;
        border-collapse: collapse;
        margin-bottom: 20px;
    }

    .customize-table th {
        text-align: left;
        padding: 12px;
        background: #f1f3f4;
        border: 1px solid #e0e0e0;
        font-size: 13px;
        font-weight: 600;
        color: #202124;
    }

    .customize-table td {
        padding: 12px;
        border: 1px solid #e0e0e0;
        vertical-align: top;
    }

    .customize-table .var-name {
        width: 25%;
        background: #f8f9fa;
    }

    .customize-table .var-name code {
        background: #fff3cd;
        color: #1967d2;
        border: 1px solid #ffc107;
        padding: 4px 8px;
        border-radius: 4px;
        font-size: 12px;
        word-break: break-all;
        font-weight: 600;
    }

    .customize-table .var-desc {
        width: 35%;
        font-size: 13px;
        color: #5f6368;
        line-height: 1.5;
    }

    .customize-table .var-example {
        margin-top: 8px;
        padding: 8px 10px;
        background: #f8f9fa;
        border-left: 3px solid #dadce0;
        font-size: 12px;
        color: #5f6368;
        font-style: italic;
        border-radius: 0 4px 4px 0;
    }

    .customize-table .var-input {
        width: 40%;
    }

    .customize-input {
        width: 100%;
        padding: 10px 12px;
        border: 1px solid #dadce0;
        border-radius: 6px;
        font-size: 13px;
        font-family: inherit;
        resize: vertical;
        transition: border-color 0.2s, box-shadow 0.2s;
    }

    .customize-input:focus {
        outline: none;
        border-color: rgb(5, 152, 98);
        box-shadow: 0 0 0 3px rgba(5, 152, 98, 0.1);
    }

    .customize-input::placeholder {
        color: #9aa0a6;
        font-style: italic;
    }

    .copy-customized-btn {
        display: flex;
        align-items: center;
        justify-content: center;
        gap: 10px;
        width: 100%;
        padding: 16px 24px;
        background: rgb(5, 152, 98);
        color: #fff;
        border: none;
        border-radius: 8px;
        font-size: 16px;
        font-weight: 600;
        cursor: pointer;
        transition: all 0.2s;
    }

    .copy-customized-btn:hover {
        background: rgb(4, 130, 83);
        transform: translateY(-2px);
        box-shadow: 0 4px 12px rgba(5, 152, 98, 0.3);
    }

    .copy-customized-btn.copied {
        background: #2e7d32;
    }

    /* ========================================
    FULL PROMPT CODE HEADER
    ======================================== */
    .prompt-code-header {
        display: flex;
        align-items: center;
        justify-content: space-between;
        padding: 10px 20px;
        color: #fff !important;
        background: #141414;
        border-bottom: 1px solid #e0e0e0;
    }

    .prompt-code-title {
        font-size: 22px;
        font-weight: 600;
        text-decoration: underline;

    }

    .prompt-code-buttons {
        display: flex;
        gap: 8px;
    }

    .prompt-code-buttons .prompt-header-btn {
        padding: 8px 14px;
        font-size: 13px;
        background: #ffffff;
        color: #202124;
        border: 1px solid #dadce0;
    }

    .prompt-code-buttons .prompt-header-access {
        background: rgb(5, 152, 98);
        color: #fff !important;
        border-color: rgb(5, 152, 98);
    }

    .prompt-code-buttons .prompt-header-btn.prompt-header-access:hover {
        background: rgb(4, 130, 83) !important;
        border-color: rgb(4, 130, 83);
        color: #fff !important;
    }

    .prompt-code-buttons .prompt-header-btn:hover {
        background: #f1f3f4;
    }

    .prompt-code-buttons .prompt-header-copy.copied {
        background: #d4edda;
        color: #155724;
        border-color: #28a745;
    }

    .prompt-header-reset {
        background: #ffffff;
        color: #202124;
    }

    /* ========================================
   RESPONSIVE
   ======================================== */
    @media (max-width: 768px) {
        .prompt-row-header {
            flex-direction: column;
            align-items: flex-start;
            gap: 12px;
        }

        .prompt-header-buttons {
            margin-left: 0;
            width: 100%;
        }

        .prompt-header-btn {
            flex: 1;
            justify-content: center;
        }

        .prompt-cta-row {
            flex-direction: column;
        }

        .prompt-cta-btn {
            width: 100%;
        }

        /* Customize table responsive */
        .customize-table,
        .customize-table thead,
        .customize-table tbody,
        .customize-table tr,
        .customize-table th,
        .customize-table td {
            display: block;
        }

        .customize-table thead {
            display: none;
        }

        .customize-table tr {
            margin-bottom: 16px;
            border: 1px solid #e0e0e0;
            border-radius: 8px;
            overflow: hidden;
        }

        .customize-table td {
            width: 100% !important;
            border: none;
            border-bottom: 1px solid #e0e0e0;
        }

        .customize-table td:last-child {
            border-bottom: none;
        }

        .customize-table .var-name {
            background: #f1f3f4;
            font-weight: 600;
        }

        .prompt-code-header {
            flex-direction: column;
            gap: 12px;
            align-items: flex-start;
        }

        .prompt-code-buttons {
            width: 100%;
        }

        .prompt-code-buttons .prompt-header-btn {
            flex: 1;
            justify-content: center;
        }
    }
</style>

<script>
    function handlePromptCopy() {
        // Check if unlocked via cookie
        if (typeof window.flowpastIsUnlocked === 'function' && !window.flowpastIsUnlocked()) {
            // Show email popup
            if (typeof window.flowpastShowEmailPopup === 'function') {
                window.flowpastShowEmailPopup('prompt');
            }
            return;
        }

        // Copy the customized prompt (with filled variables)
        const customizedPrompt = getCustomizedPrompt();
        const copyButtons = document.querySelectorAll('.prompt-header-copy, .prompt-header-copy-green, .prompt-cta-copy, .copy-customized-btn');

        navigator.clipboard.writeText(customizedPrompt).then(() => {
            copyButtons.forEach(btn => {
                btn.classList.add('copied');
                const textSpan = btn.querySelector('span');
                if (textSpan) textSpan.textContent = 'Copied!';
            });

            setTimeout(() => {
                copyButtons.forEach(btn => {
                    btn.classList.remove('copied');
                    const textSpan = btn.querySelector('span');
                    if (textSpan) textSpan.textContent = 'Copy Full Prompt';
                });
            }, 2000);
        }).catch(err => {
            console.error('Failed to copy:', err);
        });
    }

    // Store original prompt for customization
    const originalPrompt = "## OBJECTIVE\r\nCreate a set of fresh, film\/TV-ready story concepts that can be developed into full scripts. Each concept must feel distinct, be broadly appealing, and include clear thematic intent, character growth potential, and at least one standout hook (twist, dilemma, or unusual premise).\r\n\r\n## PERSONA\r\nYou are a veteran screenwriter and development-minded story producer. You communicate with crisp, pitch-friendly language, emphasizing cinematic premise, character motivation, and emotionally resonant turning points.\r\n\r\n## CONSTRAINTS\r\n- Generate **{Number Of Ideas}** concepts spanning **multiple genres and time\/place backdrops** (avoid repeating the same combination).\r\n- Every idea must include: genre, setting, theme, core cast, plot spine, character arcs, and intended viewer impact.\r\n- Keep synopses **compact but specific** (no vague \u201cthen things happen\u201d summaries).\r\n- Ensure originality: no direct borrowing from famous franchises; avoid common loglines unless you add a meaningful new angle.\r\n- **Edge cases:** If any inputs are missing or too broad, infer 1\u20132 reasonable options and clearly label them as assumptions before writing the ideas.\r\n\r\n### What This Is NOT\r\n- Not a full screenplay, beat sheet, or scene-by-scene outline.\r\n- Not a world bible with exhaustive lore.\r\n- Not a marketing plan, budget estimate, or casting list.\r\n- Not a remake, parody, or thinly veiled copy of an existing IP.\r\n\r\n## PROCESS\r\n1. **Pre-Analysis (required):** Briefly restate what you will generate and call out any assumptions you\u2019re making from the inputs.\r\n2. Map variety across concepts by mixing:\r\n   - genre (at least 4 distinct genres overall)\r\n   - setting type (e.g., contemporary, historical, near-future, far-future, fantastical)\r\n   - story engine (mystery, survival, rivalry, heist, romance, political intrigue, etc.)\r\n3. For each concept:\r\n   - define the thematic throughline in one sharp sentence\r\n   - design a protagonist with a desire + flaw + pressure\r\n   - build 2\u20134 key supporting roles that complicate the goal\r\n   - outline the narrative using: inciting event \u2192 escalation \u2192 midpoint shift \u2192 climax \u2192 aftermath\r\n   - state at least one meaningful twist OR a \u201creframe\u201d reveal OR a moral tradeoff\r\n   - specify character transformations and what triggers them\r\n   - specify emotional takeaway + intellectual aftertaste\r\n\r\n## INPUTS\r\n- **Preferred genres:** [PREFERRED_GENRES]  \r\n- **Settings to explore:** [SETTINGS]  \r\n- **Themes you want:** [THEMES]  \r\n- **Character types you like:** [CHARACTER_TYPES]  \r\n- **Emotional effect you want:** [EMOTIONAL_IMPACT]  \r\n- **Intellectual effect you want:** [INTELLECTUAL_IMPACT]  \r\n- **How many ideas to generate:** [NUMBER_OF_IDEAS]  \r\n- **Any extra background or boundaries (optional):** [CONTEXT]  \r\n\r\n## OUTPUT SPECIFICATION\r\nReturn **{Number Of Ideas}** ideas. For each, use this structure:\r\n\r\n### {Idea Title}\r\n- **Genre:** {Genre}  \r\n- **Setting:** {Setting}  \r\n- **Core theme:** {Theme Statement}  \r\n- **Hook mechanism:** {Hook Mechanism}  \r\n- **Key characters:**  \r\n  - {Character 1 Name} \u2014 {Role + defining trait + inner conflict}  \r\n  - {Character 2 Name} \u2014 {Role + defining trait + inner conflict}  \r\n  - {Character 3 Name} \u2014 {Role + defining trait + inner conflict}  \r\n  - {Character 4 Name} \u2014 {Role + defining trait + inner conflict} *(optional)*  \r\n- **Synopsis (tight plot spine):** {Inciting Incident \u2192 Escalation \u2192 Midpoint Shift \u2192 Climax \u2192 Resolution}  \r\n- **Character arcs:** {Arc Notes (who changes, how, and why)}  \r\n- **Intended audience impact:**  \r\n  - **Emotional:** {Emotional Outcome}  \r\n  - **Intellectual:** {Intellectual Outcome}  \r\n- **Why it\u2019s different:** {Originality Note}\r\n\r\n## QUALITY CHECKS\r\nAt the end, include a short validation list confirming:\r\n- {Checklist Item}: Genres\/settings are meaningfully varied and not repetitive  \r\n- {Checklist Item}: Each idea has a clear theme and a functional plot spine  \r\n- {Checklist Item}: Protagonists have desire\/flaw\/pressure and non-trivial growth  \r\n- {Checklist Item}: Each concept contains a distinct hook mechanism (twist\/dilemma\/reframe)  \r\n- {Checklist Item}: Emotional + intellectual impacts align with the provided inputs";
    const variables = ["[PREFERRED_GENRES]","[SETTINGS]","[THEMES]","[CHARACTER_TYPES]","[EMOTIONAL_IMPACT]","[INTELLECTUAL_IMPACT]","[NUMBER_OF_IDEAS]","[CONTEXT]"];
    // Initial render with highlighted variables
    document.addEventListener('DOMContentLoaded', function() {
        renderPromptWithHighlights();
    });

    // Live update prompt as user types
    document.querySelectorAll('.customize-input').forEach(input => {
        input.addEventListener('input', renderPromptWithHighlights);
    });

    function renderPromptWithHighlights() {
        const promptContent = document.getElementById('premium-prompt-content');
        if (!promptContent) return;

        let updatedPrompt = originalPrompt;
        let filledVariables = {};

        // Collect filled values
        document.querySelectorAll('.customize-input').forEach(input => {
            const placeholder = input.dataset.placeholder;
            const value = input.value.trim();

            if (value) {
                filledVariables[placeholder] = value;
            }
        });

        // Replace filled variables and highlight remaining
        let htmlContent = escapeHtml(updatedPrompt);

        variables.forEach(placeholder => {
            const escapedPlaceholder = escapeHtml(placeholder);
            const regex = new RegExp(escapeRegex(escapedPlaceholder), 'g');

            if (filledVariables[placeholder]) {
                // Show filled value with green highlight
                htmlContent = htmlContent.replace(regex,
                    '<span class="prompt-variable-filled">' + escapeHtml(filledVariables[placeholder]) + '</span>'
                );
            } else {
                // Show original placeholder with yellow highlight
                htmlContent = htmlContent.replace(regex,
                    '<span class="prompt-variable">' + escapedPlaceholder + '</span>'
                );
            }
        });

        promptContent.innerHTML = htmlContent;
    }

    function escapeRegex(string) {
        return string.replace(/[.*+?^${}()|[\]\\]/g, '\\$&');
    }

    function escapeHtml(text) {
        const div = document.createElement('div');
        div.textContent = text;
        return div.innerHTML;
    }

    function resetPrompt() {
        // Clear all input fields
        document.querySelectorAll('.customize-input').forEach(input => {
            input.value = '';
        });

        // Re-render with original placeholders highlighted
        renderPromptWithHighlights();

        // Visual feedback
        const resetBtns = document.querySelectorAll('.prompt-header-reset, .prompt-cta-reset');
        resetBtns.forEach(btn => {
            const originalText = btn.querySelector('span').textContent;
            btn.querySelector('span').textContent = 'Reset!';
            setTimeout(() => {
                btn.querySelector('span').textContent = originalText;
            }, 1000);
        });
    }


    function getCustomizedPrompt() {
        let updatedPrompt = originalPrompt;

        document.querySelectorAll('.customize-input').forEach(input => {
            const placeholder = input.dataset.placeholder;
            const value = input.value.trim();

            if (value) {
                const regex = new RegExp(escapeRegex(placeholder), 'g');
                updatedPrompt = updatedPrompt.replace(regex, value);
            }
        });

        return updatedPrompt;
    }
</script>

</div>

<div class="pro-tips-section">

<h2 class="wp-block-heading">Pro Tips for Better AI Prompt Results</h2>



<ul class="wp-block-list">

<li><strong>Ask for deliberate variety, not “whatever.”</strong> The prompt already aims for multiple genres and backdrops, but you’ll get better spread if you explicitly request the mix you want. Try: “Generate 8 ideas: 2 grounded thrillers, 2 elevated horror, 2 character dramas, 2 high-concept sci-fi; no repeated setting era.”</li>


<li><strong>Give one constraint that forces originality.</strong> Honestly, “make it original” is too soft. Add a rule like: “No law enforcement protagonists,” or “No end-of-the-world stakes,” or “Each idea must include an ethical dilemma with no clean answer.” Then follow up with: “Rewrite ideas 3 and 6 with a sharper moral trap and a more personal cost.”</li>


<li><strong>Steer theme first, then hook.</strong> When theme is clear, the hook stops feeling gimmicky. A useful follow-up is: “For each concept, propose two alternative hooks that still preserve the same theme, and explain which one is most cinematic.”</li>


<li><strong>Iterate like development, not like a fan.</strong> After the first output, pick two concepts and push them in opposite directions to find the best version. Use: “Now make option 2 more aggressive (bigger reversals, higher public consequences) and option 4 more intimate (smaller world, deeper relationship stakes). Keep the theme intact.”</li>


<li><strong>Lock a protagonist engine before you outline.</strong> If the premise is exciting but the protagonist feels generic, fix that immediately while it’s cheap. Ask: “For concept 5, give three protagonist alternatives with different flaws (control, avoidance, obsession) and show how each flaw changes the ending.”</li>

</ul>

</div>

<div class="related-prompts-section">

<h2 class="wp-block-heading">Related Prompts</h2>



<p>Once you’ve got a solid premise list, these prompts help you protect creative time and keep development moving on a real schedule:</p>



<p>If you also need a reliable writing routine (the unglamorous part that frankly makes the difference), use <a href="https://flowpast.com/prompts/create-a-daily-time-block-schedule-with-this-ai-prompt/">Create a Daily Time-Block Schedule with this AI Prompt</a> to carve out sessions for ideation, research, pages, and rewrite passes. It’s especially handy when you’re juggling client work or a day job and your script only gets the leftovers.</p>



<p>For teams doing multi-project development, <a href="https://flowpast.com/prompts/build-a-daily-time-blocked-schedule-with-this-ai-prompt/">Build a Daily Time-Blocked Schedule with this AI Prompt</a> helps you assign distinct blocks (premise expansion, character work, scene list) so your week doesn’t become one endless “thinking about the script” fog. Use it after you pick your top 1–2 concepts from the generator.</p>



<p>When your calendar is tight and you need a short sprint, <a href="https://flowpast.com/prompts/build-a-7-day-study-schedule-with-this-ai-prompt/">Build a 7-Day Study Schedule with this AI Prompt</a> pairs well with premise generation for targeted craft boosts. Plan a week around comparable films, pilot breakdowns, or genre conventions so your chosen idea gets smarter fast.</p>


<br>


<p>Quick reference:</p>



<ul class="wp-block-list">

<li><a href="https://flowpast.com/prompts/create-a-daily-time-block-schedule-with-this-ai-prompt/">Create a Daily Time-Block Schedule with this AI Prompt</a>: Protect writing time with realistic blocks.</li>


<li><a href="https://flowpast.com/prompts/build-a-daily-time-blocked-schedule-with-this-ai-prompt/">Build a Daily Time-Blocked Schedule with this AI Prompt</a>: Organize creative work across a day.</li>


<li><a href="https://flowpast.com/prompts/build-a-7-day-study-schedule-with-this-ai-prompt/">Build a 7-Day Study Schedule with this AI Prompt</a>: One-week craft plan for momentum.</li>

<li><a href="https://flowpast.com/prompts/build-a-7-day-meal-plan-calendar-with-this-ai-prompt/">Build a 7-Day Meal Plan Calendar with this AI Prompt</a>: Reduce friction during heavy writing weeks.</li>

<li><a href="https://flowpast.com/prompts/build-a-7-day-meal-plan-with-this-ai-prompt/">Build a 7-Day Meal Plan with this AI Prompt</a>: Keep energy stable while drafting.</li>
<!-- /wp:post-content -->
</ul>
<!-- /wp:list -->
</div>

<div class="faq-section">
<!-- wp:heading {"level":2} -->
<h2 class="wp-block-heading">Common Questions</h2>
<!-- /wp:heading -->

<div class="faq-item">
<span class="question">Which roles benefit most from this screenplay premises AI prompt?</span>
<!-- wp:paragraph -->
<p class="answer"><strong>Screenwriters</strong> use this to generate multiple pitch-ready directions quickly, with theme and character arcs baked in so the idea has legs. <strong>Development producers</strong> rely on it to compare concepts side by side in a consistent format (genre, setting, cast, plot spine, impact) before asking for pages. <strong>Story editors</strong> apply it when a concept is “almost there” but needs a clearer engine, sharper hook, or stronger protagonist pressure. <strong>Creative directors for narrative content</strong> find it useful for testing episodic-ready premises that can expand into a series or recurring format.</p>
<!-- /wp:paragraph -->
</div>

<div class="faq-item">
<span class="question">Which industries get the most value from this screenplay premises AI prompt?</span>
<!-- wp:paragraph -->
<p class="answer"><strong>Film and TV production</strong> teams use it to quickly generate slate options for development meetings, then shortlist the few with the clearest hook and emotional impact. <strong>Advertising and branded content</strong> groups can adapt the same structure to build narrative campaign concepts, especially when they need a theme-driven story rather than a one-off gag. <strong>Gaming and interactive media</strong> studios use it for early narrative prototypes, because the prompt forces protagonist desire, flaw, and pressure (useful for quest and progression design). <strong>Publishing and audio drama</strong> creators also get value when they want a concept that can carry long-form arcs without starting from a vague logline.</p>
<!-- /wp:paragraph -->
</div>

<div class="faq-item">
<span class="question">Why do basic AI prompts for generating screenplay premises produce weak results?</span>
<!-- wp:paragraph -->
<p class="answer">A typical prompt like “<em>Write me a unique movie idea</em>” fails because it: lacks a required structure (genre, setting, theme, cast, plot spine, arcs, viewer impact), provides no mechanism to enforce variety across multiple concepts, ignores protagonist design (desire + flaw + pressure) so the character feels interchangeable, produces generic synopses that don’t specify turning-point logic, and doesn’t warn you about assumptions when the request is too broad. This prompt is stronger because it’s development-minded: it forces pitch language, mandates specific components, and pushes for distinct genre/backdrop combinations.</p>
<!-- /wp:paragraph -->
</div>

<div class="faq-item">
<span class="question">Can I customize this screenplay premises AI prompt for my specific situation?</span>
<!-- wp:paragraph -->
<p class="answer">Yes. The main lever is {Number Of Ideas}, since generating 6–12 concepts makes it easier to spot patterns and pick a winner, while 3 concepts is better for quick decisions. You can also customize by adding your own constraints on genre, era, setting type, or story engine (for example: “1 heist, 1 survival, 1 romance; all set outside the U.S.”). If you’re aiming at a buyer, add a line like “Target: contained thriller (8–12 speaking roles), minimal VFX” so the concepts match production reality. A good follow-up prompt is: “Take the best two concepts and rewrite them as a one-sentence logline plus a 60-second verbal pitch.”</p>
<!-- /wp:paragraph -->
</div>

<div class="faq-item">
<span class="question">What are the most common mistakes when using this screenplay premises AI prompt?</span>
<!-- wp:paragraph -->
<p class="answer">The biggest mistake is leaving {Number Of Ideas} too low — instead of “3,” try “10” so the prompt can truly vary genre and backdrop and you have real options. Another common error is asking for “any genre” and then being disappointed by safe choices; write “at least 4 distinct genres, and no two ideas share the same era + location combo” to force separation. People also forget to specify format intent (feature vs limited series), so the plot spine comes out mismatched; add “Format: 6-episode limited series” if that’s what you need. Finally, many users don’t iterate after the first set; pick one concept and ask for “three alternate protagonist flaws” or “two stronger hook variants” to sharpen it before outlining.</p>
<!-- /wp:paragraph -->
</div>

<div class="faq-item">
<span class="question">Who should NOT use this screenplay premises AI prompt?</span>
<!-- wp:paragraph -->
<p class="answer">This prompt isn’t ideal if you need a full beat sheet, scene list, or polished pitch deck by tomorrow, because it intentionally stops at premise-level development. It’s also not the best fit for writers who haven’t chosen any creative boundaries yet and want the model to magically “find their voice” without guidance. And if your goal is to emulate a specific franchise beat-for-beat, you’ll fight the originality constraints. In those cases, start with a film breakdown template or a genre beat worksheet instead, then come back to this prompt for fresh alternatives.</p>
<!-- /wp:paragraph -->
</div>

<script type="application/ld+json">
{
  "@context": "https://schema.org",
  "@type": "FAQPage",
  "mainEntity": [
    {
      "@type": "Question",
      "name": "Which roles benefit most from this screenplay premises AI prompt?",
      "acceptedAnswer": {
        "@type": "Answer",
        "text": "Screenwriters use this to generate multiple pitch-ready directions quickly, with theme and character arcs baked in so the idea has legs. Development producers rely on it to compare concepts side by side in a consistent format (genre, setting, cast, plot spine, impact) before asking for pages. Story editors apply it when a concept is “almost there” but needs a clearer engine, sharper hook, or stronger protagonist pressure. Creative directors for narrative content find it useful for testing episodic-ready premises that can expand into a series or recurring format."
      }
    },
    {
      "@type": "Question",
      "name": "Which industries get the most value from this screenplay premises AI prompt?",
      "acceptedAnswer": {
        "@type": "Answer",
        "text": "Film and TV production teams use it to quickly generate slate options for development meetings, then shortlist the few with the clearest hook and emotional impact. Advertising and branded content groups can adapt the same structure to build narrative campaign concepts, especially when they need a theme-driven story rather than a one-off gag. Gaming and interactive media studios use it for early narrative prototypes, because the prompt forces protagonist desire, flaw, and pressure (useful for quest and progression design). Publishing and audio drama creators also get value when they want a concept that can carry long-form arcs without starting from a vague logline."
      }
    },
    {
      "@type": "Question",
      "name": "Why do basic AI prompts for generating screenplay premises produce weak results?",
      "acceptedAnswer": {
        "@type": "Answer",
        "text": "A typical prompt like “Write me a unique movie idea” fails because it: lacks a required structure (genre, setting, theme, cast, plot spine, arcs, viewer impact), provides no mechanism to enforce variety across multiple concepts, ignores protagonist design (desire + flaw + pressure) so the character feels interchangeable, produces generic synopses that don’t specify turning-point logic, and doesn’t warn you about assumptions when the request is too broad. This prompt is stronger because it’s development-minded: it forces pitch language, mandates specific components, and pushes for distinct genre/backdrop combinations."
      }
    },
    {
      "@type": "Question",
      "name": "Can I customize this screenplay premises AI prompt for my specific situation?",
      "acceptedAnswer": {
        "@type": "Answer",
        "text": "Yes. The main lever is {Number Of Ideas}, since generating 6–12 concepts makes it easier to spot patterns and pick a winner, while 3 concepts is better for quick decisions. You can also customize by adding your own constraints on genre, era, setting type, or story engine (for example: “1 heist, 1 survival, 1 romance; all set outside the U.S.”). If you’re aiming at a buyer, add a line like “Target: contained thriller (8–12 speaking roles), minimal VFX” so the concepts match production reality. A good follow-up prompt is: “Take the best two concepts and rewrite them as a one-sentence logline plus a 60-second verbal pitch.”"
      }
    },
    {
      "@type": "Question",
      "name": "What are the most common mistakes when using this screenplay premises AI prompt?",
      "acceptedAnswer": {
        "@type": "Answer",
        "text": "The biggest mistake is leaving {Number Of Ideas} too low — instead of “3,” try “10” so the prompt can truly vary genre and backdrop and you have real options. Another common error is asking for “any genre” and then being disappointed by safe choices; write “at least 4 distinct genres, and no two ideas share the same era + location combo” to force separation. People also forget to specify format intent (feature vs limited series), so the plot spine comes out mismatched; add “Format: 6-episode limited series” if that’s what you need. Finally, many users don’t iterate after the first set; pick one concept and ask for “three alternate protagonist flaws” or “two stronger hook variants” to sharpen it before outlining."
      }
    },
    {
      "@type": "Question",
      "name": "Who should NOT use this screenplay premises AI prompt?",
      "acceptedAnswer": {
        "@type": "Answer",
        "text": "This prompt isn’t ideal if you need a full beat sheet, scene list, or polished pitch deck by tomorrow, because it intentionally stops at premise-level development. It’s also not the best fit for writers who haven’t chosen any creative boundaries yet and want the model to magically “find their voice” without guidance. And if your goal is to emulate a specific franchise beat-for-beat, you’ll fight the originality constraints. In those cases, start with a film breakdown template or a genre beat worksheet instead, then come back to this prompt for fresh alternatives."
      }
    }
  ]
}
</script>
</div>

<div class="closing-section">
<!-- wp:paragraph -->
<p>A strong premise makes everything downstream easier: logline, outline, pages, and pitch. Paste this prompt into your AI tool, generate a real batch of options, and pick the one that won’t let you go.</p>
<!-- /wp:paragraph -->
</div>]]></content:encoded>
					
		
		
		<media:content url="https://flowpast.s3.eu-north-1.amazonaws.com/featured_blog_images/5000613.webp" medium="image"></media:content>
            	</item>
		<item>
		<title>Create Lecture Video Scripts with this AI Prompt</title>
		<link>https://flowpast.com/prompts/create-lecture-video-scripts-with-this-ai-prompt/</link>
		
		<dc:creator><![CDATA[Lisa Granqvist]]></dc:creator>
		<pubDate>Fri, 23 Jan 2026 02:15:03 +0000</pubDate>
				<category><![CDATA[Prompts]]></category>
		<guid isPermaLink="false">https://flowpast.com/?p=5002540</guid>

					<description><![CDATA[Lessons feel scattered - this AI Prompt turns any topic into a ready-to-record lecture script with chapters, examples, and a clear CTA. Discover more AI prompts for marketing, sales, and ops.]]></description>
										<content:encoded><![CDATA[<!-- FOCUS_KEYWORD: lecture video scripts -->

<div class="hook-introduction">

<p>Your lessons make sense in your head, but on camera they come out scattered. You drift, you over-explain, then you realize you forgot the one example that would’ve made it click.</p>



<p>This <strong>lecture video scripts</strong> AI prompt is built for <strong>course creators</strong> turning an outline into a ready-to-record talk, <strong>enablement leads</strong> who need consistent internal training videos fast, and <strong>consultants</strong> packaging their expertise into a clear “teach + next step” delivery. The output is a spoken-word script with a strong hook, chaptered sections, engagement questions, practical examples or mini case studies, and a light CTA that fits your audience.</p>

</div>

<div class="what-and-when-section">

<h2 class="wp-block-heading">What Does This AI Prompt Do and When to Use It?</h2>



<table class="solution-results-table three-column" role="presentation" aria-label="What this prompt does, when to use it, and what you get">
 <thead>
    <tr>
      <th scope="col">What This Prompt Does</th>
      <th scope="col">When to Use This Prompt</th>
      <th scope="col">What You&#8217;ll Get</th>
    </tr>
  </thead>
  <tbody>
    <tr>
      <td>
        <ul class="automation-list">
          <li>It writes a ready-to-read, spoken lecture script that opens with a hook and keeps momentum section by section.</li>
          <li>It adapts tone, vocabulary, and assumptions to your specified knowledge level so you don’t talk over beginners (or bore intermediates).</li>
          <li>It structures the lesson with clear headings and subheadings that translate cleanly into chapters for a video platform.</li>
          <li>It inserts engagement beats such as questions, quick reflection prompts, and “pause and try this” moments to reduce drop-off.</li>
          <li>It adds practical illustrations tied to each major concept, using mini case studies or real-world situations instead of abstract theory.</li>
       </ul>
      </td>
      <td>
        <ul class="results-list">
          <li>You have a topic and expertise, but the recording turns into rambling because you’re inventing structure as you speak.</li>
          <li>You need to teach a concept to a defined audience level, and you keep getting feedback like “too advanced” or “too basic.”</li>
          <li>You’re turning a workshop, webinar, or long blog post into a tighter on-camera lesson and you want chapters built in.</li>
          <li>Your team is releasing training regularly, and consistency matters more than “brilliant improvisation” from each presenter.</li>
          <li>You’re updating an older lecture because the market moved, and you want a clear script that still sounds like a human on camera.</li>
        </ul>
      </td>
       <td>
         <ul class="deliverables-list">
           <li>A complete lecture/video script with an opening hook, smooth transitions, and a closing wrap-up.</li>
           <li>A segmented outline inside the script (headings/subheadings) that you can use as 6–12 chapter markers.</li>
           <li>At least one example or mini case study per major concept, written to be read out loud.</li>
           <li>Multiple audience-engagement moments, including questions and short “try this now” prompts.</li>
           <li>A light, context-appropriate call-to-action that encourages learning or the next practical step.</li>
         </ul>
       </td>
    </tr>
  </tbody>
</table>

</div>

<div class="prompt-display-section">

<h2 class="wp-block-heading">The Full AI Prompt: Ready-to-Record Lecture Script Generator</h2>



<div class="prompt-viewer-wrapper" id="prompt-section">
    <div class="prompt-comparison-row prompt-premium">
        <!-- Header with buttons -->
        <div class="prompt-row-header">
            <!-- <span class="prompt-row-icon">✨</span> -->
            <span class="prompt-row-title">
                                    Step 1: Customize the prompt with your input
                            </span>
            <div class="prompt-header-buttons">
                                    <button class="prompt-header-btn prompt-header-reset" onclick="resetPrompt()">
                        <svg xmlns="http://www.w3.org/2000/svg" width="16" height="16" fill="currentColor" viewBox="0 0 16 16">
                            <path fill-rule="evenodd" d="M8 3a5 5 0 1 0 4.546 2.914.5.5 0 0 1 .908-.417A6 6 0 1 1 8 2v1z" />
                            <path d="M8 4.466V.534a.25.25 0 0 1 .41-.192l2.36 1.966c.12.1.12.284 0 .384L8.41 4.658A.25.25 0 0 1 8 4.466z" />
                        </svg>
                        <span>Reset</span>
                    </button>
                                <button class="prompt-header-btn prompt-header-copy-green flowpast-copy-prompt-btn" onclick="handlePromptCopy()">
                    <svg xmlns="http://www.w3.org/2000/svg" width="16" height="16" fill="currentColor" viewBox="0 0 16 16">
                        <path d="M4 1.5H3a2 2 0 0 0-2 2V14a2 2 0 0 0 2 2h10a2 2 0 0 0 2-2V3.5a2 2 0 0 0-2-2h-1v1h1a1 1 0 0 1 1 1V14a1 1 0 0 1-1 1H3a1 1 0 0 1-1-1V3.5a1 1 0 0 1 1-1h1v-1z" />
                        <path d="M9.5 1a.5.5 0 0 1 .5.5v1a.5.5 0 0 1-.5.5h-3a.5.5 0 0 1-.5-.5v-1a.5.5 0 0 1 .5-.5h3zm-3-1A1.5 1.5 0 0 0 5 1.5v1A1.5 1.5 0 0 0 6.5 4h3A1.5 1.5 0 0 0 11 2.5v-1A1.5 1.5 0 0 0 9.5 0h-3z" />
                    </svg>
                    <span>Customize and Copy Full Prompt</span>
                </button>
            </div>
        </div>

        <!-- Customize the Prompt Section -->
                    <div class="prompt-customize-section">
                <span class="customize-title">Customize the Prompt</span>
                <p class="customize-subtitle">Fill in the fields below to personalize this prompt for your needs.</p>
                <table class="customize-table">
                    <thead>
                        <tr>
                            <th>Variable</th>
                            <th>What to Enter</th>
                            <th>Customise the prompt</th>
                        </tr>
                    </thead>
                    <tbody>
                                                    <tr>
                                <td class="var-name"><code>[TOPIC]</code></td>
                                <td class="var-desc">
                                    Specify the subject or theme of the lecture or video. Be clear and specific to help guide the content creation process.                                    <div class="var-example">For example: "The Basics of Personal Finance: Budgeting, Saving, and Investing"</div>
                                </td>
                                <td class="var-input">
                                                                            <input
                                            type="text"
                                            class="customize-input"
                                            data-placeholder="[TOPIC]"
                                            placeholder="Enter your value here..." />
                                                                    </td>
                            </tr>
                                                    <tr>
                                <td class="var-name"><code>[KNOWLEDGE_LEVEL]</code></td>
                                <td class="var-desc">
                                    Indicate the expertise level of the target audience, such as beginner, intermediate, or advanced, to tailor the content appropriately.                                    <div class="var-example">For example: "Beginner: Someone with little to no prior knowledge of coding or programming concepts."</div>
                                </td>
                                <td class="var-input">
                                                                            <input
                                            type="text"
                                            class="customize-input"
                                            data-placeholder="[KNOWLEDGE_LEVEL]"
                                            placeholder="Enter your value here..." />
                                                                    </td>
                            </tr>
                                                    <tr>
                                <td class="var-name"><code>[SPECIAL_INSTRUCTIONS]</code></td>
                                <td class="var-desc">
                                    Provide any specific requirements or constraints for the script, such as tone, format, or additional details to include.                                    <div class="var-example">For example: "Use a friendly, conversational tone. Include a call-to-action at the end encouraging viewers to practice the concepts and share their progress."</div>
                                </td>
                                <td class="var-input">
                                                                            <textarea
                                            class="customize-input"
                                            data-placeholder="[SPECIAL_INSTRUCTIONS]"
                                            placeholder="Enter your value here..."
                                            rows="3"></textarea>
                                                                    </td>
                            </tr>
                                            </tbody>
                </table>

                <button class="copy-customized-btn flowpast-copy-prompt-btn" onclick="handlePromptCopy()">
                    <svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" fill="currentColor" viewBox="0 0 16 16">
                        <path d="M4 1.5H3a2 2 0 0 0-2 2V14a2 2 0 0 0 2 2h10a2 2 0 0 0 2-2V3.5a2 2 0 0 0-2-2h-1v1h1a1 1 0 0 1 1 1V14a1 1 0 0 1-1 1H3a1 1 0 0 1-1-1V3.5a1 1 0 0 1 1-1h1v-1z" />
                        <path d="M9.5 1a.5.5 0 0 1 .5.5v1a.5.5 0 0 1-.5.5h-3a.5.5 0 0 1-.5-.5v-1a.5.5 0 0 1 .5-.5h3zm-3-1A1.5 1.5 0 0 0 5 1.5v1A1.5 1.5 0 0 0 6.5 4h3A1.5 1.5 0 0 0 11 2.5v-1A1.5 1.5 0 0 0 9.5 0h-3z" />
                    </svg>
                    <span class="copy-customized-text">Customise the prompt now</span>
                </button>
            </div>
        
        <!-- Full Prompt Code Header -->
                    <div class="prompt-code-header">
                <span class="prompt-code-title">
                    Step 2: Copy the Prompt
                </span>
                <div class="prompt-code-buttons">
                    <!-- Reset: Only visible when unlocked -->
                    <button class="prompt-header-btn prompt-header-reset btn-when-unlocked" onclick="resetPrompt()" style="display: none;">
                        <svg xmlns="http://www.w3.org/2000/svg" width="16" height="16" fill="currentColor" viewBox="0 0 16 16">
                            <path fill-rule="evenodd" d="M8 3a5 5 0 1 0 4.546 2.914.5.5 0 0 1 .908-.417A6 6 0 1 1 8 2v1z" />
                            <path d="M8 4.466V.534a.25.25 0 0 1 .41-.192l2.36 1.966c.12.1.12.284 0 .384L8.41 4.658A.25.25 0 0 1 8 4.466z" />
                        </svg>
                        <span>Reset</span>
                    </button>
                    <!-- Copy Full Prompt -->
                    <button class="prompt-header-btn prompt-header-copy flowpast-copy-prompt-btn" onclick="handlePromptCopy()">
                        <svg xmlns="http://www.w3.org/2000/svg" width="16" height="16" fill="currentColor" viewBox="0 0 16 16">
                            <path d="M4 1.5H3a2 2 0 0 0-2 2V14a2 2 0 0 0 2 2h10a2 2 0 0 0 2-2V3.5a2 2 0 0 0-2-2h-1v1h1a1 1 0 0 1 1 1V14a1 1 0 0 1-1 1H3a1 1 0 0 1-1-1V3.5a1 1 0 0 1 1-1h1v-1z" />
                            <path d="M9.5 1a.5.5 0 0 1 .5.5v1a.5.5 0 0 1-.5.5h-3a.5.5 0 0 1-.5-.5v-1a.5.5 0 0 1 .5-.5h3zm-3-1A1.5 1.5 0 0 0 5 1.5v1A1.5 1.5 0 0 0 6.5 4h3A1.5 1.5 0 0 0 11 2.5v-1A1.5 1.5 0 0 0 9.5 0h-3z" />
                        </svg>
                        <span>Copy Full Prompt</span>
                    </button>
                </div>
            </div>
        

        <!-- Prompt Content -->
        <div class="prompt-box prompt-gated-wrapper">
            <!-- Gated: Blurred content -->
            <div class="prompt-gated-content">
                <div class="prompt-header-visible">OBJECTIVE</div><div class="locked-section"><div class="locked-section-bg"><div class="locked-section-lines"><div class="locked-line" style="width: 85%;"></div><div class="locked-line" style="width: 78%;"></div></div></div><div class="locked-section-icon">🔒</div></div><div class="prompt-header-visible">PERSONA</div><div class="locked-section"><div class="locked-section-bg"><div class="locked-section-lines"><div class="locked-line" style="width: 85%;"></div><div class="locked-line" style="width: 78%;"></div></div></div><div class="locked-section-icon">🔒</div></div><div class="prompt-header-visible">CONSTRAINTS</div><div class="locked-section"><div class="locked-section-bg"><div class="locked-section-lines"><div class="locked-line" style="width: 85%;"></div><div class="locked-line" style="width: 78%;"></div><div class="locked-line" style="width: 92%;"></div><div class="locked-line" style="width: 75%;"></div><div class="locked-line" style="width: 88%;"></div><div class="locked-line" style="width: 72%;"></div><div class="locked-line" style="width: 80%;"></div></div></div><div class="locked-section-icon">🔒</div></div><div class="prompt-header-visible subheader">What This Is NOT (Scope Boundaries)</div><div class="locked-section"><div class="locked-section-bg"><div class="locked-section-lines"><div class="locked-line" style="width: 85%;"></div><div class="locked-line" style="width: 78%;"></div><div class="locked-line" style="width: 92%;"></div><div class="locked-line" style="width: 75%;"></div></div></div><div class="locked-section-icon">🔒</div></div><div class="prompt-header-visible">PROCESS</div><div class="locked-section"><div class="locked-section-bg"><div class="locked-section-lines"><div class="locked-line" style="width: 85%;"></div><div class="locked-line" style="width: 78%;"></div><div class="locked-line" style="width: 92%;"></div><div class="locked-line" style="width: 75%;"></div><div class="locked-line" style="width: 88%;"></div><div class="locked-line" style="width: 72%;"></div><div class="locked-line" style="width: 80%;"></div><div class="locked-line" style="width: 95%;"></div><div class="locked-line" style="width: 70%;"></div><div class="locked-line" style="width: 83%;"></div><div class="locked-line" style="width: 85%;"></div><div class="locked-line" style="width: 78%;"></div><div class="locked-line" style="width: 92%;"></div><div class="locked-line" style="width: 75%;"></div><div class="locked-line" style="width: 88%;"></div><div class="locked-line" style="width: 72%;"></div></div></div><div class="locked-section-icon">🔒</div></div><div class="prompt-header-visible">INPUTS</div><div class="locked-section"><div class="locked-section-bg"><div class="locked-section-lines"><div class="locked-line" style="width: 85%;"></div><div class="locked-line" style="width: 78%;"></div><div class="locked-line" style="width: 92%;"></div></div></div><div class="locked-section-icon">🔒</div></div><div class="prompt-header-visible">OUTPUT SPECIFICATION</div><div class="locked-section"><div class="locked-section-bg"><div class="locked-section-lines"><div class="locked-line" style="width: 85%;"></div><div class="locked-line" style="width: 78%;"></div><div class="locked-line" style="width: 92%;"></div><div class="locked-line" style="width: 75%;"></div><div class="locked-line" style="width: 88%;"></div><div class="locked-line" style="width: 72%;"></div><div class="locked-line" style="width: 80%;"></div><div class="locked-line" style="width: 95%;"></div><div class="locked-line" style="width: 70%;"></div><div class="locked-line" style="width: 83%;"></div><div class="locked-line" style="width: 85%;"></div><div class="locked-line" style="width: 78%;"></div><div class="locked-line" style="width: 92%;"></div><div class="locked-line" style="width: 75%;"></div><div class="locked-line" style="width: 88%;"></div><div class="locked-line" style="width: 72%;"></div><div class="locked-line" style="width: 80%;"></div><div class="locked-line" style="width: 95%;"></div><div class="locked-line" style="width: 70%;"></div><div class="locked-line" style="width: 83%;"></div><div class="locked-line" style="width: 85%;"></div><div class="locked-line" style="width: 78%;"></div><div class="locked-line" style="width: 92%;"></div><div class="locked-line" style="width: 75%;"></div><div class="locked-line" style="width: 88%;"></div><div class="locked-line" style="width: 72%;"></div><div class="locked-line" style="width: 80%;"></div><div class="locked-line" style="width: 95%;"></div><div class="locked-line" style="width: 70%;"></div><div class="locked-line" style="width: 83%;"></div><div class="locked-line" style="width: 85%;"></div><div class="locked-line" style="width: 78%;"></div><div class="locked-line" style="width: 92%;"></div><div class="locked-line" style="width: 75%;"></div><div class="locked-line" style="width: 88%;"></div><div class="locked-line" style="width: 72%;"></div></div></div><div class="locked-section-icon">🔒</div></div><div class="prompt-header-visible">QUALITY CHECKS</div><div class="locked-section"><div class="locked-section-bg"><div class="locked-section-lines"><div class="locked-line" style="width: 85%;"></div><div class="locked-line" style="width: 78%;"></div><div class="locked-line" style="width: 92%;"></div><div class="locked-line" style="width: 75%;"></div><div class="locked-line" style="width: 88%;"></div><div class="locked-line" style="width: 72%;"></div></div></div><div class="locked-section-icon">🔒</div></div>            </div>
            <!-- Unlocked: Full content (hidden by default) -->
            <div class="prompt-content-full" id="premium-prompt-content" style="display: none;">
                ## OBJECTIVE
Create a ready-to-read lecture/video script that teaches **[TOPIC]** in a way that hooks viewers immediately, stays engaging throughout, and leaves the ideal recipient with a clear, practical grasp of the subject—plus motivation to keep learning or take action afterward.

## PERSONA
You are a veteran instructional designer and on-camera educator who writes like a skilled presenter: friendly, clear, energetic, and confident. You turn complex ideas into plain language without dumbing them down, and you routinely use real situations to make concepts “stick.”

## CONSTRAINTS
- Use **delivery standards** that prioritize clarity, momentum, and learner understanding.
- Keep language aligned to **[KNOWLEDGE_LEVEL]** (don’t assume more expertise than specified).
- Minimize jargon; if technical terms are unavoidable, define them immediately in simple words.
- The script must be segmented with headings/subheadings and flow logically from one idea to the next.
- Include audience-engagement moments (questions, prompts, reflection beats).
- Include practical illustrations (examples or mini case studies) tied to each major concept.
- Respect **[SPECIAL_INSTRUCTIONS]** exactly; if it conflicts with other instructions, follow **[SPECIAL_INSTRUCTIONS]** and note the conflict in the pre-analysis.

### What This Is NOT (Scope Boundaries)
- Not a full course curriculum or multi-lesson syllabus.
- Not slide text or speaker notes only; it must read as a spoken script.
- Not an academic paper (avoid formal citations unless requested in **[SPECIAL_INSTRUCTIONS]**).
- Not a sales page (a light call-to-action is fine; hard selling is out of scope unless requested).

## PROCESS
1. **Pre-analysis (must appear in the output):**
   - Restate the topic in your own words.
   - Identify the ideal recipient and what they likely already know based on **[KNOWLEDGE_LEVEL]**.
   - List 3–6 learning outcomes the viewer should achieve.
   - If anything is unclear or missing, state your assumptions and provide 2–4 quick clarification questions.

2. **Build a flow that teaches progressively:**
   - Choose a sequence where each section naturally supports the next (from foundations → application → pitfalls → wrap-up, or another sensible arc).

3. **Write the script in a speakable style:**
   - Short-to-medium sentences, conversational phrasing, smooth transitions, and occasional “you” language.
   - Add anticipated viewer questions and answer them inline.

4. **Anchor learning with reality:**
   - For each major concept, add at least one real-world example, scenario, or micro case study.

5. **Keep viewers active:**
   - Add rhetorical questions, quick reflection prompts, and a request to share an opinion/experience (comments/social).

6. **Close strong:**
   - Recap the key points succinctly and end with a clear next step (apply, read, exercise, mini-assignment, discussion prompt).

## INPUTS
- **Lecture/Video topic:** [TOPIC]
- **Audience knowledge level:** [KNOWLEDGE_LEVEL]
- **Special instructions or requests:** [SPECIAL_INSTRUCTIONS]

## OUTPUT SPECIFICATION
Provide a complete script using the structure below (fill in placeholders with your generated content):

- **Pre-Analysis**
  - {Topic Restatement}
  - {Audience Snapshot}
  - {Learning Outcomes}
  - {Assumptions And Clarifying Questions}

- **Title**
  - {Video Title}

- **Opening (Hook + Why It Matters)**
  - {Attention Anchor} (use a surprising insight, pointed question, or short relatable story—write a brand-new one tailored to {Topic})
  - {Promise/Benefits}
  - {Roadmap Of What They’ll Learn}

- **Main Body**
  - **Section 1: {Section Title}**
    - {Concept Explanation In Plain Language}
    - {Anticipated Question + Answer}
    - {Real-World Example Or Mini Case}
    - {Engagement Prompt}
  - **Section 2: {Section Title}**
    - {Concept Explanation In Plain Language}
    - {Anticipated Question + Answer}
    - {Real-World Example Or Mini Case}
    - {Engagement Prompt}
  - **Section 3: {Section Title}**
    - {Concept Explanation In Plain Language}
    - {Anticipated Question + Answer}
    - {Real-World Example Or Mini Case}
    - {Engagement Prompt}
  - *(Add more sections if needed for completeness and clarity.)*

- **Common Mistakes / Misconceptions (optional but recommended)**
  - {Misconception List}
  - {Corrections + How To Avoid Them}

- **Wrap-Up**
  - {Key Takeaways Summary} (bullet list)
  - {Call To Action} (apply a technique, try an exercise, read/watch next, or comment prompt)
  - {Community Prompt} (invite viewers to share an experience or question)

## QUALITY CHECKS
At the end of the script, add a short checklist confirming:
- {Checklist Item}: The hook is relevant to [TOPIC] and appears within the opening.
- {Checklist Item}: Each major section includes at least one practical example/case.
- {Checklist Item}: Language matches [KNOWLEDGE_LEVEL] and jargon is explained when used.
- {Checklist Item}: The progression is logical and transitions are clear.
- {Checklist Item}: The ending includes a recap and a specific next step for the viewer.            </div>
        </div>


    </div>

    <!-- CTA Row - Full width buttons -->
    <div class="prompt-cta-row">
        <button class="prompt-cta-btn prompt-cta-copy flowpast-copy-prompt-btn" onclick="handlePromptCopy()">
            <svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" fill="currentColor" viewBox="0 0 16 16">
                <path d="M4 1.5H3a2 2 0 0 0-2 2V14a2 2 0 0 0 2 2h10a2 2 0 0 0 2-2V3.5a2 2 0 0 0-2-2h-1v1h1a1 1 0 0 1 1 1V14a1 1 0 0 1-1 1H3a1 1 0 0 1-1-1V3.5a1 1 0 0 1 1-1h1v-1z" />
                <path d="M9.5 1a.5.5 0 0 1 .5.5v1a.5.5 0 0 1-.5.5h-3a.5.5 0 0 1-.5-.5v-1a.5.5 0 0 1 .5-.5h3zm-3-1A1.5 1.5 0 0 0 5 1.5v1A1.5 1.5 0 0 0 6.5 4h3A1.5 1.5 0 0 0 11 2.5v-1A1.5 1.5 0 0 0 9.5 0h-3z" />
            </svg>
            <span class="cta-copy-text">Copy Full Prompt</span>
        </button>
    </div>
</div>

<style>
    /* Gated prompt states */
    .prompt-gated-wrapper {
        position: relative;
    }

    /* When unlocked - show full content, hide gated */
    body.flowpast-unlocked .prompt-gated-wrapper .prompt-gated-content {
        display: none;
    }

    body.flowpast-unlocked .prompt-gated-wrapper .prompt-content-full {
        display: block !important;
    }

    /* Show/hide elements based on unlock state */
    body.flowpast-unlocked .btn-when-unlocked {
        display: inline-flex !important;
    }

    .prompt-viewer-wrapper {
        scroll-margin-top: 250px;
    }

    /* ========================================
   PROMPT VIEWER - MAIN WRAPPER
   ======================================== */
    .prompt-viewer-wrapper {
        margin: 30px 0;
        display: flex;
        flex-direction: column;
        gap: 20px;
    }

    /* ========================================
   PROMPT BOX CONTAINER
   ======================================== */
    .prompt-comparison-row {
        border-radius: 12px;
        overflow: hidden;
        border: 1px solid #e0e0e0;
        background: #fff;
    }

    /* ========================================
   HEADER WITH BUTTONS
   ======================================== */
    .prompt-row-header {
        display: flex;
        align-items: center;
        gap: 10px;
        padding: 14px 20px;
        color: #fff !important;
        background: #141414;
        border-bottom: 1px solid #e0e0e0;
        flex-wrap: wrap;
    }

    .prompt-row-icon {
        font-size: 20px;
    }

    .prompt-row-title {
        font-weight: 600;
        font-size: 22px;
        color: #fff !important;
        text-decoration: underline
    }

    .prompt-header-buttons {
        margin-left: auto;
        display: flex;
        gap: 10px;
        flex-wrap: wrap;
    }

    /* Header buttons */
    .prompt-header-btn {
        display: inline-flex;
        align-items: center;
        gap: 8px;
        padding: 10px 20px;
        border-radius: 6px;
        font-size: 14px;
        font-weight: 600;
        cursor: pointer;
        transition: all 0.2s;
        text-decoration: none;
        border: none;
    }

    .prompt-header-copy {
        background: #3a3a3a;
        color: #fff;
    }

    .prompt-header-copy:hover {
        background: #2a2a2a;
    }

    .prompt-header-copy.copied {
        background: #2e7d32;
    }

    .prompt-header-copy-green {
        background: #04AA6D !important;
        color: #fff !important;
    }

    .prompt-header-copy-green:hover {
        background: #039860 !important;
    }

    .prompt-header-copy-green.copied {
        background: #2e7d32 !important;
    }

    .prompt-header-access {
        background: rgb(5, 152, 98);
        color: #fff !important;
    }

    .prompt-header-access:hover {
        background: rgb(4, 130, 83);
        transform: translateY(-1px);
    }

    /* ========================================
   PROMPT CONTENT - FULL (NO SCROLL)
   ======================================== */
    .prompt-box {
        background: #ffffff;
    }

    .prompt-content-full {
        padding: 24px;
        margin: 0;
        color: #202124;
        background: #ffffff;
        font-family: 'Fira Code', 'Monaco', 'Consolas', monospace;
        font-size: 13px;
        line-height: 1.7;
        white-space: pre-wrap;
        word-wrap: break-word;
        /* No scroll - show full content */
        max-height: none;
        overflow: visible;
    }

    /* Highlighted variable in prompt */
    .prompt-variable {
        background: #fff3cd;
        color: #1967d2;
        font-weight: 700;
        padding: 2px 4px;
        border-radius: 3px;
        border: 1px solid #ffc107;
    }

    .prompt-variable-filled {
        background: #d4edda;
        color: #155724;
        font-weight: 700;
        padding: 2px 4px;
        border-radius: 3px;
        border: 1px solid #28a745;
    }

    /* ========================================
   GATED CONTENT (NO ACCESS)
   ======================================== */
    .prompt-gated-content {
        padding: 24px;
        background: #ffffff;
        font-family: 'Fira Code', 'Monaco', 'Consolas', monospace;
        font-size: 13px;
        line-height: 1.8;
        max-height: none;
        overflow: visible;
        user-select: none;
        -webkit-user-select: none;
        -moz-user-select: none;
        -ms-user-select: none;
        cursor: default;
    }

    /* ## headers - larger, black */
    .prompt-header-visible {
        color: #202124;
        font-weight: 600;
        margin: 5px 0 0px 0;
        font-size: 20px;
        user-select: none;
        -webkit-user-select: none;
        -moz-user-select: none;
        -ms-user-select: none;
        text-decoration: underline;
        text-underline-offset: 4px;
    }

    /* ### headers - smaller, black */
    .prompt-header-visible.subheader {
        color: #202124;
        font-weight: 600;
        margin: 5px 0;
        font-size: 18px;
    }

    .prompt-header-visible:first-child {
        margin-top: 0;
    }

    /* ========================================
   LOCKED SECTION BLOCK
   ======================================== */
    .locked-section {
        position: relative;
        margin: 4px 0 8px 0;
        border-radius: 6px;
        overflow: hidden;
        background: linear-gradient(110deg, #e2e8f0 8%, #f1f5f9 18%, #e2e8f0 33%);
        user-select: none;
        -webkit-user-select: none;
        -moz-user-select: none;
        -ms-user-select: none;
    }

    .locked-section-bg {
        position: relative;
    }

    .locked-section-lines {
        padding: 8px 12px;
        position: relative;
    }

    .locked-line {
        height: 6px;
        background: rgba(255, 255, 255, 0.6);
        border-radius: 3px;
        margin-bottom: 4px;
        margin-left: 12px;
    }

    .locked-line:last-child {
        margin-bottom: 0;
    }

    .locked-section-icon {
        position: absolute;
        top: 50%;
        left: 50%;
        transform: translate(-50%, -50%);
        z-index: 10;
        font-size: 24px;
        filter: drop-shadow(0 1px 3px rgba(0, 0, 0, 0.1));
    }

    /* Subheader locked sections - slightly indented */
    /*  .prompt-header-visible.subheader+.locked-section {
        margin-left: 16px;
    } */

    /* ========================================
   COMPATIBILITY BADGES
   ======================================== */
    .prompt-compatibility {
        display: flex;
        flex-wrap: wrap;
        align-items: center;
        gap: 8px;
        padding: 12px 20px;
        background: #f8f9fa;
        border-top: 1px solid #e0e0e0;
    }

    .compat-label {
        font-size: 13px;
        color: #5f6368;
        font-weight: 500;
    }

    .compat-badge {
        padding: 4px 10px;
        background: #e8f0fe;
        color: #1967d2;
        border-radius: 4px;
        font-size: 12px;
        font-weight: 500;
    }

    /* ========================================
   CTA ROW - FULL WIDTH BUTTONS
   ======================================== */
    .prompt-cta-row {
        display: flex;
        gap: 16px;
        flex-wrap: wrap;
    }

    .prompt-cta-btn {
        flex: 1;
        min-width: 200px;
        display: inline-flex;
        align-items: center;
        justify-content: center;
        gap: 10px;
        padding: 16px 24px;
        border-radius: 8px;
        font-size: 16px;
        font-weight: 600;
        cursor: pointer;
        transition: all 0.2s;
        text-decoration: none;
        border: none;
    }

    .prompt-cta-copy {
        background: #3a3a3a;
        color: #fff;
    }

    .prompt-cta-copy:hover {
        background: #2a2a2a;
        transform: translateY(-2px);
        box-shadow: 0 4px 12px rgba(0, 0, 0, 0.15);
    }

    .prompt-cta-copy.copied {
        background: #2e7d32;
    }

    .prompt-cta-reset {
        background: #3a3a3a;
        color: #fff;
    }

    .prompt-cta-reset:hover {
        background: #2a2a2a;
        transform: translateY(-2px);
        box-shadow: 0 4px 12px rgba(0, 0, 0, 0.15);
    }

    .prompt-cta-access {
        background: rgb(5, 152, 98);
        color: #fff !important;
    }

    .prompt-cta-access:hover {
        background: rgb(4, 130, 83);
        transform: translateY(-2px);
        box-shadow: 0 4px 12px rgba(5, 152, 98, 0.3);
    }

    /* ========================================
    CUSTOMIZE YOUR PROMPT SECTION
    ======================================== */
    .prompt-customize-section {
        padding: 24px;
        border-bottom: 1px solid #e0e0e0;
        background: #fafbfc;
    }

    .customize-title {
        margin: 0 0 8px 0;
        font-size: 18px;
        font-weight: 700;
        color: #202124;
    }

    .customize-subtitle {
        margin: 0 0 20px 0;
        font-size: 14px;
        color: #5f6368;
    }

    .customize-table {
        width: 100%;
        border-collapse: collapse;
        margin-bottom: 20px;
    }

    .customize-table th {
        text-align: left;
        padding: 12px;
        background: #f1f3f4;
        border: 1px solid #e0e0e0;
        font-size: 13px;
        font-weight: 600;
        color: #202124;
    }

    .customize-table td {
        padding: 12px;
        border: 1px solid #e0e0e0;
        vertical-align: top;
    }

    .customize-table .var-name {
        width: 25%;
        background: #f8f9fa;
    }

    .customize-table .var-name code {
        background: #fff3cd;
        color: #1967d2;
        border: 1px solid #ffc107;
        padding: 4px 8px;
        border-radius: 4px;
        font-size: 12px;
        word-break: break-all;
        font-weight: 600;
    }

    .customize-table .var-desc {
        width: 35%;
        font-size: 13px;
        color: #5f6368;
        line-height: 1.5;
    }

    .customize-table .var-example {
        margin-top: 8px;
        padding: 8px 10px;
        background: #f8f9fa;
        border-left: 3px solid #dadce0;
        font-size: 12px;
        color: #5f6368;
        font-style: italic;
        border-radius: 0 4px 4px 0;
    }

    .customize-table .var-input {
        width: 40%;
    }

    .customize-input {
        width: 100%;
        padding: 10px 12px;
        border: 1px solid #dadce0;
        border-radius: 6px;
        font-size: 13px;
        font-family: inherit;
        resize: vertical;
        transition: border-color 0.2s, box-shadow 0.2s;
    }

    .customize-input:focus {
        outline: none;
        border-color: rgb(5, 152, 98);
        box-shadow: 0 0 0 3px rgba(5, 152, 98, 0.1);
    }

    .customize-input::placeholder {
        color: #9aa0a6;
        font-style: italic;
    }

    .copy-customized-btn {
        display: flex;
        align-items: center;
        justify-content: center;
        gap: 10px;
        width: 100%;
        padding: 16px 24px;
        background: rgb(5, 152, 98);
        color: #fff;
        border: none;
        border-radius: 8px;
        font-size: 16px;
        font-weight: 600;
        cursor: pointer;
        transition: all 0.2s;
    }

    .copy-customized-btn:hover {
        background: rgb(4, 130, 83);
        transform: translateY(-2px);
        box-shadow: 0 4px 12px rgba(5, 152, 98, 0.3);
    }

    .copy-customized-btn.copied {
        background: #2e7d32;
    }

    /* ========================================
    FULL PROMPT CODE HEADER
    ======================================== */
    .prompt-code-header {
        display: flex;
        align-items: center;
        justify-content: space-between;
        padding: 10px 20px;
        color: #fff !important;
        background: #141414;
        border-bottom: 1px solid #e0e0e0;
    }

    .prompt-code-title {
        font-size: 22px;
        font-weight: 600;
        text-decoration: underline;

    }

    .prompt-code-buttons {
        display: flex;
        gap: 8px;
    }

    .prompt-code-buttons .prompt-header-btn {
        padding: 8px 14px;
        font-size: 13px;
        background: #ffffff;
        color: #202124;
        border: 1px solid #dadce0;
    }

    .prompt-code-buttons .prompt-header-access {
        background: rgb(5, 152, 98);
        color: #fff !important;
        border-color: rgb(5, 152, 98);
    }

    .prompt-code-buttons .prompt-header-btn.prompt-header-access:hover {
        background: rgb(4, 130, 83) !important;
        border-color: rgb(4, 130, 83);
        color: #fff !important;
    }

    .prompt-code-buttons .prompt-header-btn:hover {
        background: #f1f3f4;
    }

    .prompt-code-buttons .prompt-header-copy.copied {
        background: #d4edda;
        color: #155724;
        border-color: #28a745;
    }

    .prompt-header-reset {
        background: #ffffff;
        color: #202124;
    }

    /* ========================================
   RESPONSIVE
   ======================================== */
    @media (max-width: 768px) {
        .prompt-row-header {
            flex-direction: column;
            align-items: flex-start;
            gap: 12px;
        }

        .prompt-header-buttons {
            margin-left: 0;
            width: 100%;
        }

        .prompt-header-btn {
            flex: 1;
            justify-content: center;
        }

        .prompt-cta-row {
            flex-direction: column;
        }

        .prompt-cta-btn {
            width: 100%;
        }

        /* Customize table responsive */
        .customize-table,
        .customize-table thead,
        .customize-table tbody,
        .customize-table tr,
        .customize-table th,
        .customize-table td {
            display: block;
        }

        .customize-table thead {
            display: none;
        }

        .customize-table tr {
            margin-bottom: 16px;
            border: 1px solid #e0e0e0;
            border-radius: 8px;
            overflow: hidden;
        }

        .customize-table td {
            width: 100% !important;
            border: none;
            border-bottom: 1px solid #e0e0e0;
        }

        .customize-table td:last-child {
            border-bottom: none;
        }

        .customize-table .var-name {
            background: #f1f3f4;
            font-weight: 600;
        }

        .prompt-code-header {
            flex-direction: column;
            gap: 12px;
            align-items: flex-start;
        }

        .prompt-code-buttons {
            width: 100%;
        }

        .prompt-code-buttons .prompt-header-btn {
            flex: 1;
            justify-content: center;
        }
    }
</style>

<script>
    function handlePromptCopy() {
        // Check if unlocked via cookie
        if (typeof window.flowpastIsUnlocked === 'function' && !window.flowpastIsUnlocked()) {
            // Show email popup
            if (typeof window.flowpastShowEmailPopup === 'function') {
                window.flowpastShowEmailPopup('prompt');
            }
            return;
        }

        // Copy the customized prompt (with filled variables)
        const customizedPrompt = getCustomizedPrompt();
        const copyButtons = document.querySelectorAll('.prompt-header-copy, .prompt-header-copy-green, .prompt-cta-copy, .copy-customized-btn');

        navigator.clipboard.writeText(customizedPrompt).then(() => {
            copyButtons.forEach(btn => {
                btn.classList.add('copied');
                const textSpan = btn.querySelector('span');
                if (textSpan) textSpan.textContent = 'Copied!';
            });

            setTimeout(() => {
                copyButtons.forEach(btn => {
                    btn.classList.remove('copied');
                    const textSpan = btn.querySelector('span');
                    if (textSpan) textSpan.textContent = 'Copy Full Prompt';
                });
            }, 2000);
        }).catch(err => {
            console.error('Failed to copy:', err);
        });
    }

    // Store original prompt for customization
    const originalPrompt = "## OBJECTIVE\r\nCreate a ready-to-read lecture\/video script that teaches **[TOPIC]** in a way that hooks viewers immediately, stays engaging throughout, and leaves the ideal recipient with a clear, practical grasp of the subject\u2014plus motivation to keep learning or take action afterward.\r\n\r\n## PERSONA\r\nYou are a veteran instructional designer and on-camera educator who writes like a skilled presenter: friendly, clear, energetic, and confident. You turn complex ideas into plain language without dumbing them down, and you routinely use real situations to make concepts \u201cstick.\u201d\r\n\r\n## CONSTRAINTS\r\n- Use **delivery standards** that prioritize clarity, momentum, and learner understanding.\r\n- Keep language aligned to **[KNOWLEDGE_LEVEL]** (don\u2019t assume more expertise than specified).\r\n- Minimize jargon; if technical terms are unavoidable, define them immediately in simple words.\r\n- The script must be segmented with headings\/subheadings and flow logically from one idea to the next.\r\n- Include audience-engagement moments (questions, prompts, reflection beats).\r\n- Include practical illustrations (examples or mini case studies) tied to each major concept.\r\n- Respect **[SPECIAL_INSTRUCTIONS]** exactly; if it conflicts with other instructions, follow **[SPECIAL_INSTRUCTIONS]** and note the conflict in the pre-analysis.\r\n\r\n### What This Is NOT (Scope Boundaries)\r\n- Not a full course curriculum or multi-lesson syllabus.\r\n- Not slide text or speaker notes only; it must read as a spoken script.\r\n- Not an academic paper (avoid formal citations unless requested in **[SPECIAL_INSTRUCTIONS]**).\r\n- Not a sales page (a light call-to-action is fine; hard selling is out of scope unless requested).\r\n\r\n## PROCESS\r\n1. **Pre-analysis (must appear in the output):**\r\n   - Restate the topic in your own words.\r\n   - Identify the ideal recipient and what they likely already know based on **[KNOWLEDGE_LEVEL]**.\r\n   - List 3\u20136 learning outcomes the viewer should achieve.\r\n   - If anything is unclear or missing, state your assumptions and provide 2\u20134 quick clarification questions.\r\n\r\n2. **Build a flow that teaches progressively:**\r\n   - Choose a sequence where each section naturally supports the next (from foundations \u2192 application \u2192 pitfalls \u2192 wrap-up, or another sensible arc).\r\n\r\n3. **Write the script in a speakable style:**\r\n   - Short-to-medium sentences, conversational phrasing, smooth transitions, and occasional \u201cyou\u201d language.\r\n   - Add anticipated viewer questions and answer them inline.\r\n\r\n4. **Anchor learning with reality:**\r\n   - For each major concept, add at least one real-world example, scenario, or micro case study.\r\n\r\n5. **Keep viewers active:**\r\n   - Add rhetorical questions, quick reflection prompts, and a request to share an opinion\/experience (comments\/social).\r\n\r\n6. **Close strong:**\r\n   - Recap the key points succinctly and end with a clear next step (apply, read, exercise, mini-assignment, discussion prompt).\r\n\r\n## INPUTS\r\n- **Lecture\/Video topic:** [TOPIC]\r\n- **Audience knowledge level:** [KNOWLEDGE_LEVEL]\r\n- **Special instructions or requests:** [SPECIAL_INSTRUCTIONS]\r\n\r\n## OUTPUT SPECIFICATION\r\nProvide a complete script using the structure below (fill in placeholders with your generated content):\r\n\r\n- **Pre-Analysis**\r\n  - {Topic Restatement}\r\n  - {Audience Snapshot}\r\n  - {Learning Outcomes}\r\n  - {Assumptions And Clarifying Questions}\r\n\r\n- **Title**\r\n  - {Video Title}\r\n\r\n- **Opening (Hook + Why It Matters)**\r\n  - {Attention Anchor} (use a surprising insight, pointed question, or short relatable story\u2014write a brand-new one tailored to {Topic})\r\n  - {Promise\/Benefits}\r\n  - {Roadmap Of What They\u2019ll Learn}\r\n\r\n- **Main Body**\r\n  - **Section 1: {Section Title}**\r\n    - {Concept Explanation In Plain Language}\r\n    - {Anticipated Question + Answer}\r\n    - {Real-World Example Or Mini Case}\r\n    - {Engagement Prompt}\r\n  - **Section 2: {Section Title}**\r\n    - {Concept Explanation In Plain Language}\r\n    - {Anticipated Question + Answer}\r\n    - {Real-World Example Or Mini Case}\r\n    - {Engagement Prompt}\r\n  - **Section 3: {Section Title}**\r\n    - {Concept Explanation In Plain Language}\r\n    - {Anticipated Question + Answer}\r\n    - {Real-World Example Or Mini Case}\r\n    - {Engagement Prompt}\r\n  - *(Add more sections if needed for completeness and clarity.)*\r\n\r\n- **Common Mistakes \/ Misconceptions (optional but recommended)**\r\n  - {Misconception List}\r\n  - {Corrections + How To Avoid Them}\r\n\r\n- **Wrap-Up**\r\n  - {Key Takeaways Summary} (bullet list)\r\n  - {Call To Action} (apply a technique, try an exercise, read\/watch next, or comment prompt)\r\n  - {Community Prompt} (invite viewers to share an experience or question)\r\n\r\n## QUALITY CHECKS\r\nAt the end of the script, add a short checklist confirming:\r\n- {Checklist Item}: The hook is relevant to [TOPIC] and appears within the opening.\r\n- {Checklist Item}: Each major section includes at least one practical example\/case.\r\n- {Checklist Item}: Language matches [KNOWLEDGE_LEVEL] and jargon is explained when used.\r\n- {Checklist Item}: The progression is logical and transitions are clear.\r\n- {Checklist Item}: The ending includes a recap and a specific next step for the viewer.";
    const variables = ["[TOPIC]","[KNOWLEDGE_LEVEL]","[SPECIAL_INSTRUCTIONS]"];
    // Initial render with highlighted variables
    document.addEventListener('DOMContentLoaded', function() {
        renderPromptWithHighlights();
    });

    // Live update prompt as user types
    document.querySelectorAll('.customize-input').forEach(input => {
        input.addEventListener('input', renderPromptWithHighlights);
    });

    function renderPromptWithHighlights() {
        const promptContent = document.getElementById('premium-prompt-content');
        if (!promptContent) return;

        let updatedPrompt = originalPrompt;
        let filledVariables = {};

        // Collect filled values
        document.querySelectorAll('.customize-input').forEach(input => {
            const placeholder = input.dataset.placeholder;
            const value = input.value.trim();

            if (value) {
                filledVariables[placeholder] = value;
            }
        });

        // Replace filled variables and highlight remaining
        let htmlContent = escapeHtml(updatedPrompt);

        variables.forEach(placeholder => {
            const escapedPlaceholder = escapeHtml(placeholder);
            const regex = new RegExp(escapeRegex(escapedPlaceholder), 'g');

            if (filledVariables[placeholder]) {
                // Show filled value with green highlight
                htmlContent = htmlContent.replace(regex,
                    '<span class="prompt-variable-filled">' + escapeHtml(filledVariables[placeholder]) + '</span>'
                );
            } else {
                // Show original placeholder with yellow highlight
                htmlContent = htmlContent.replace(regex,
                    '<span class="prompt-variable">' + escapedPlaceholder + '</span>'
                );
            }
        });

        promptContent.innerHTML = htmlContent;
    }

    function escapeRegex(string) {
        return string.replace(/[.*+?^${}()|[\]\\]/g, '\\$&');
    }

    function escapeHtml(text) {
        const div = document.createElement('div');
        div.textContent = text;
        return div.innerHTML;
    }

    function resetPrompt() {
        // Clear all input fields
        document.querySelectorAll('.customize-input').forEach(input => {
            input.value = '';
        });

        // Re-render with original placeholders highlighted
        renderPromptWithHighlights();

        // Visual feedback
        const resetBtns = document.querySelectorAll('.prompt-header-reset, .prompt-cta-reset');
        resetBtns.forEach(btn => {
            const originalText = btn.querySelector('span').textContent;
            btn.querySelector('span').textContent = 'Reset!';
            setTimeout(() => {
                btn.querySelector('span').textContent = originalText;
            }, 1000);
        });
    }


    function getCustomizedPrompt() {
        let updatedPrompt = originalPrompt;

        document.querySelectorAll('.customize-input').forEach(input => {
            const placeholder = input.dataset.placeholder;
            const value = input.value.trim();

            if (value) {
                const regex = new RegExp(escapeRegex(placeholder), 'g');
                updatedPrompt = updatedPrompt.replace(regex, value);
            }
        });

        return updatedPrompt;
    }
</script>

</div>

<div class="pro-tips-section">

<h2 class="wp-block-heading">Pro Tips for Better AI Prompt Results</h2>



<ul class="wp-block-list">

<li><strong>Define the audience with one “day in the life” sentence.</strong> Don’t stop at “beginners” or “intermediate.” Add context like: “They’re new managers leading 5–10 people and struggling with weekly one-on-ones.” You will get tighter examples and fewer generic platitudes.</li>


<li><strong>Make KNOWLEDGE_LEVEL concrete.</strong> Try levels that describe what they can already do: “Can define the term, but can’t apply it,” or “Has tried it once and failed.” If the first draft still misses, follow up with: “Rewrite this for a viewer who knows the basics but keeps making the same two mistakes: X and Y.”</li>


<li><strong>Use SPECIAL_INSTRUCTIONS to control delivery and timing.</strong> If you need an 8–10 minute video, say so and request approximate word count (for many presenters, 130–160 words/minute). Example: “Target 1,200–1,400 words, include short sentences, and add a 10-second recap at the end of each chapter.”</li>


<li><strong>Iterate the examples, not the whole script.</strong> After the first output, ask: “Keep the structure exactly the same, but replace every example with one from B2B SaaS onboarding.” It’s faster and keeps the narrative flow intact while making the lesson feel tailored.</li>


<li><strong>Ask for two alternate hooks and a stronger close.</strong> Honestly, the hook is where most scripts feel interchangeable. Use a follow-up like: “Give me 3 new hook options: one surprising stat (no citations needed), one contrarian claim, and one short story. Then rewrite the closing CTA to be action-only, no selling.”</li>

</ul>

</div>

<div class="related-prompts-section">

<h2 class="wp-block-heading">Related Prompts</h2>



<p>Once your lecture script is solid, these prompts help you turn learning into behavior change inside a team.</p>



<p>If you also need to convert your teaching into an interactive session, <a href="https://flowpast.com/prompts/create-a-team-prioritization-workshop-template-ai-prompt/">Create a Team Prioritization Workshop Template AI Prompt</a> is a strong next step. Use it when your lecture introduces a framework, and you want a live exercise that forces real trade-offs, not just nodding along.</p>



<p>For training that’s meant to improve execution over weeks (not just understanding in the moment), pair your script with <a href="https://flowpast.com/prompts/time-boxing-rollout-plan-for-any-team-ai-prompt/">Time-Boxing Rollout Plan for Any Team AI Prompt</a>. When you’re asking viewers to adopt a new habit or workflow, a rollout plan helps you define cadence, ownership, and checkpoints right away.</p>



<p>When the topic is sensitive or emotionally loaded, you’ll want more than “tips.” <a href="https://flowpast.com/prompts/build-a-team-stress-management-workshop-ai-prompt/">Build a Team Stress Management Workshop AI Prompt</a> is useful after you’ve recorded the educational piece and now need a facilitated format with prompts, guardrails, and concrete practices people can try the same week.</p>


<br>


<p>Quick reference:</p>



<ul class="wp-block-list">

<li><a href="https://flowpast.com/prompts/create-a-team-prioritization-workshop-template-ai-prompt/">Create a Team Prioritization Workshop Template AI Prompt</a>: Turn concepts into facilitated prioritization exercises.</li>


<li><a href="https://flowpast.com/prompts/time-boxing-rollout-plan-for-any-team-ai-prompt/">Time-Boxing Rollout Plan for Any Team AI Prompt</a>: Launch habits with cadence and checkpoints.</li>


<li><a href="https://flowpast.com/prompts/build-a-team-stress-management-workshop-ai-prompt/">Build a Team Stress Management Workshop AI Prompt</a>: Facilitate stress skills with practical activities.</li>

<li><a href="https://flowpast.com/prompts/build-a-team-goal-setting-workshop-blueprint-ai-prompt/">Build a Team Goal-Setting Workshop Blueprint AI Prompt</a>: Run a goals workshop with alignment steps.</li>

<li><a href="https://flowpast.com/prompts/build-a-team-performance-turnaround-plan-with-this-ai-prompt/">Build a Team Performance Turnaround Plan with this AI Prompt</a>: Diagnose performance gaps and execute fixes.</li>
<!-- /wp:post-content -->
</div>

<div class="faq-section">
<!-- wp:heading {"level":2} -->
<h2 class="wp-block-heading">Common Questions</h2>
<!-- /wp:heading -->

<div class="faq-item">
<span class="question">Which roles benefit most from this lecture video scripts AI prompt?</span>
<!-- wp:paragraph -->
<p class="answer"><strong>Instructional designers</strong> use this to turn SMEs’ raw notes into scripts with clean sequencing, defined terms, and engagement beats that reduce learner drop-off. <strong>Course creators and cohort-based educators</strong> rely on it when they need a ready-to-record lesson that still sounds natural on camera, not like a blog post. <strong>Customer education and enablement managers</strong> apply it to standardize training across teams, especially when multiple presenters need the same “core story.” <strong>Consultants</strong> use it to productize expertise into teachable assets that lead into a next step without turning into a sales pitch.</p>
<!-- /wp:paragraph -->
</div>

<div class="faq-item">
<span class="question">Which industries get the most value from this lecture video scripts AI prompt?</span>
<!-- wp:paragraph -->
<p class="answer"><strong>SaaS companies</strong> get value when onboarding users or training internal teams on processes like qualification, implementation, or support workflows; the chapters map neatly to product milestones. <strong>Professional services firms</strong> (agencies, consultancies, accounting firms) use it to turn recurring advice into short lecture modules that educate leads and reduce repetitive 1:1 explanations. <strong>Education businesses</strong> use it to scale one expert’s teaching style into consistent lessons that feel coherent across a course library. <strong>Healthcare and compliance-adjacent teams</strong> can use it for plain-language training content where clarity and defined terms matter, especially when jargon needs immediate translation.</p>
<!-- /wp:paragraph -->
</div>

<div class="faq-item">
<span class="question">Why do basic AI prompts for writing lecture video scripts produce weak results?</span>
<!-- wp:paragraph -->
<p class="answer">A typical prompt like “Write me a lecture script about project prioritization” fails because it: lacks an explicit audience and knowledge level, so the model guesses and lands in the mushy middle. It provides no delivery standards or spoken-word constraints, so you get paragraphs that read like an article, not a performance. It ignores engagement moments, which makes the script feel monotone and “information-only.” It produces generic examples that don’t map to real situations, and it often forgets a clear close that tells the viewer what to do next.</p>
<!-- /wp:paragraph -->
</div>

<div class="faq-item">
<span class="question">Can I customize this lecture video scripts prompt for my specific situation?</span>
<!-- wp:paragraph -->
<p class="answer">Yes. The big levers are [TOPIC], [KNOWLEDGE_LEVEL], and [SPECIAL_INSTRUCTIONS], and small changes there noticeably change the script’s voice and structure. For example, set [KNOWLEDGE_LEVEL] to “new to the concept but managing a team already” to get management-flavored examples, or use [SPECIAL_INSTRUCTIONS] to request “8 minutes, include two analogies, avoid acronyms, and add a short practice exercise at the end.” After you get a first draft, a strong follow-up is: “Keep the outline, but rewrite every example for my audience: [describe audience], and make the CTA a single next step they can do in 10 minutes.”</p>
<!-- /wp:paragraph -->
</div>

<div class="faq-item">
<span class="question">What are the most common mistakes when using this lecture video scripts prompt?</span>
<!-- wp:paragraph -->
<p class="answer">The biggest mistake is leaving [KNOWLEDGE_LEVEL] too vague — instead of “beginner,” try “has heard the terms, can’t apply them without a template.” Another common error is making [TOPIC] too broad; “leadership” becomes a generic motivational talk, while “how to run weekly one-on-ones that produce commitments” yields specific chapters and examples. People also underuse [SPECIAL_INSTRUCTIONS]; “make it engaging” is weak, but “include 5 audience questions, define jargon in one sentence, and add a 30-second recap after each section” gives the model enforceable constraints. Finally, if your [SPECIAL_INSTRUCTIONS] contradict clarity (for example, “use lots of technical terms for beginners”), you’ll get a script that sounds confident but teaches poorly.</p>
<!-- /wp:paragraph -->
</div>

<div class="faq-item">
<span class="question">Who should NOT use this lecture video scripts prompt?</span>
<!-- wp:paragraph -->
<p class="answer">This prompt isn’t ideal for one-time recordings where you refuse to iterate, because the best results come from a quick second pass on examples and pacing. It also won’t replace subject-matter expertise; if you haven’t validated what you’re teaching (or you’re guessing), the script can sound polished while still being wrong. And if you only need slide bullets, not spoken delivery, you’ll do better with a presentation-outline workflow instead of a full lecture script.</p>
<!-- /wp:paragraph -->
</div>

<script type="application/ld+json">
{
  "@context": "https://schema.org",
  "@type": "FAQPage",
  "mainEntity": [
    {
      "@type": "Question",
      "name": "Which roles benefit most from this lecture video scripts AI prompt?",
      "acceptedAnswer": {
        "@type": "Answer",
        "text": "Instructional designers use this to turn SMEs’ raw notes into scripts with clean sequencing, defined terms, and engagement beats that reduce learner drop-off. Course creators and cohort-based educators rely on it when they need a ready-to-record lesson that still sounds natural on camera, not like a blog post. Customer education and enablement managers apply it to standardize training across teams, especially when multiple presenters need the same “core story.” Consultants use it to productize expertise into teachable assets that lead into a next step without turning into a sales pitch."
      }
    },
    {
      "@type": "Question",
      "name": "Which industries get the most value from this lecture video scripts AI prompt?",
      "acceptedAnswer": {
        "@type": "Answer",
        "text": "SaaS companies get value when onboarding users or training internal teams on processes like qualification, implementation, or support workflows; the chapters map neatly to product milestones. Professional services firms (agencies, consultancies, accounting firms) use it to turn recurring advice into short lecture modules that educate leads and reduce repetitive 1:1 explanations. Education businesses use it to scale one expert’s teaching style into consistent lessons that feel coherent across a course library. Healthcare and compliance-adjacent teams can use it for plain-language training content where clarity and defined terms matter, especially when jargon needs immediate translation."
      }
    },
    {
      "@type": "Question",
      "name": "Why do basic AI prompts for writing lecture video scripts produce weak results?",
      "acceptedAnswer": {
        "@type": "Answer",
        "text": "A typical prompt like “Write me a lecture script about project prioritization” fails because it: lacks an explicit audience and knowledge level, so the model guesses and lands in the mushy middle. It provides no delivery standards or spoken-word constraints, so you get paragraphs that read like an article, not a performance. It ignores engagement moments, which makes the script feel monotone and “information-only.” It produces generic examples that don’t map to real situations, and it often forgets a clear close that tells the viewer what to do next."
      }
    },
    {
      "@type": "Question",
      "name": "Can I customize this lecture video scripts prompt for my specific situation?",
      "acceptedAnswer": {
        "@type": "Answer",
        "text": "Yes. The big levers are [TOPIC], [KNOWLEDGE_LEVEL], and [SPECIAL_INSTRUCTIONS], and small changes there noticeably change the script’s voice and structure. For example, set [KNOWLEDGE_LEVEL] to “new to the concept but managing a team already” to get management-flavored examples, or use [SPECIAL_INSTRUCTIONS] to request “8 minutes, include two analogies, avoid acronyms, and add a short practice exercise at the end.” After you get a first draft, a strong follow-up is: “Keep the outline, but rewrite every example for my audience: [describe audience], and make the CTA a single next step they can do in 10 minutes.”"
      }
    },
    {
      "@type": "Question",
      "name": "What are the most common mistakes when using this lecture video scripts prompt?",
      "acceptedAnswer": {
        "@type": "Answer",
        "text": "The biggest mistake is leaving [KNOWLEDGE_LEVEL] too vague — instead of “beginner,” try “has heard the terms, can’t apply them without a template.” Another common error is making [TOPIC] too broad; “leadership” becomes a generic motivational talk, while “how to run weekly one-on-ones that produce commitments” yields specific chapters and examples. People also underuse [SPECIAL_INSTRUCTIONS]; “make it engaging” is weak, but “include 5 audience questions, define jargon in one sentence, and add a 30-second recap after each section” gives the model enforceable constraints. Finally, if your [SPECIAL_INSTRUCTIONS] contradict clarity (for example, “use lots of technical terms for beginners”), you’ll get a script that sounds confident but teaches poorly."
      }
    },
    {
      "@type": "Question",
      "name": "Who should NOT use this lecture video scripts prompt?",
      "acceptedAnswer": {
        "@type": "Answer",
        "text": "This prompt isn’t ideal for one-time recordings where you refuse to iterate, because the best results come from a quick second pass on examples and pacing. It also won’t replace subject-matter expertise; if you haven’t validated what you’re teaching (or you’re guessing), the script can sound polished while still being wrong. And if you only need slide bullets, not spoken delivery, you’ll do better with a presentation-outline workflow instead of a full lecture script."
      }
    }
  ]
}
</script>
</div>

<div class="closing-section">
<!-- wp:paragraph -->
<p>A good lecture script isn’t “more words.” It’s better sequencing, clearer examples, and the right prompts to keep people with you. Paste the prompt into ChatGPT, set your topic and audience level, and record with confidence.</p>
<!-- /wp:paragraph -->
</div>]]></content:encoded>
					
		
		
		<media:content url="https://flowpast.s3.eu-north-1.amazonaws.com/featured_blog_images/5002540.webp" medium="image"></media:content>
            	</item>
	</channel>
</rss>
