<!-- Key Colors Editor Modal -->
<div id="kc-editor-modal" class="modal" role="dialog" aria-modal="true" aria-labelledby="kc-editor-title">
    <div class="modal-content">
        <div class="modal-header">
            <h2 id="kc-editor-title"><svg class="icon" viewBox="0 0 24 24"><path d="M12 22a1 1 0 0 1 0-20 10 9 0 0 1 10 9 5 5 0 0 1-5 5h-2.25a1.75 1.75 0 0 0-1.4 2.8l.3.4a1.75 1.75 0 0 1-1.4 2.8z"/><circle cx="13.5" cy="6.5" r=".5" fill="currentColor"/><circle cx="17.5" cy="10.5" r=".5" fill="currentColor"/><circle cx="6.5" cy="12.5" r=".5" fill="currentColor"/><circle cx="8.5" cy="7.5" r=".5" fill="currentColor"/></svg> <span data-i18n="kc.add">Add Key Colors Target</span></h2>
            <button class="modal-close-btn" onclick="closeKCEditorModal()" title="Close" data-i18n-aria-label="aria.close">&#x2715;</button>
        </div>
        <div class="modal-body">
            <form id="kc-editor-form">
                <input type="hidden" id="kc-editor-id">

                <div class="form-group">
                    <label for="kc-editor-name" data-i18n="kc.name">Target Name:</label>
                    <input type="text" id="kc-editor-name" data-i18n-placeholder="kc.name.placeholder" placeholder="My Key Colors Target" required>
                    <div id="kc-tags-container"></div>
                </div>

                <div class="form-group">
                    <div class="label-row">
                        <label for="kc-editor-source" data-i18n="kc.source">Picture Source:</label>
                        <button type="button" class="hint-toggle" onclick="toggleHint(this)" title="?">?</button>
                    </div>
                    <small class="input-hint" style="display:none" data-i18n="kc.source.hint">Which picture source to extract colors from</small>
                    <select id="kc-editor-source"></select>
                </div>

                <div class="form-group">
                    <div class="label-row">
                        <label for="kc-editor-pattern-template" data-i18n="kc.pattern_template">Pattern Template:</label>
                        <button type="button" class="hint-toggle" onclick="toggleHint(this)" title="?">?</button>
                    </div>
                    <small class="input-hint" style="display:none" data-i18n="kc.pattern_template.hint">Select the rectangle pattern to use for color extraction</small>
                    <select id="kc-editor-pattern-template"></select>
                </div>

                <div class="form-group">
                    <div class="label-row">
                        <label for="kc-editor-brightness-vs" data-i18n="kc.brightness_vs">Brightness Source:</label>
                        <button type="button" class="hint-toggle" onclick="toggleHint(this)" title="?" data-i18n-aria-label="aria.hint">?</button>
                    </div>
                    <small class="input-hint" style="display:none" data-i18n="kc.brightness_vs.hint">Optional value source that dynamically controls brightness each frame (multiplied with the manual brightness slider)</small>
                    <select id="kc-editor-brightness-vs">
                        <option value="" data-i18n="kc.brightness_vs.none">None (manual brightness only)</option>
                    </select>
                </div>

                <div class="form-group">
                    <div class="label-row">
                        <label for="kc-editor-fps" data-i18n="kc.fps">Extraction FPS:</label>
                        <button type="button" class="hint-toggle" onclick="toggleHint(this)" title="?">?</button>
                    </div>
                    <small class="input-hint" style="display:none" data-i18n="kc.fps.hint">How many times per second to extract colors (1-60)</small>
                    <div class="slider-row">
                        <input type="range" id="kc-editor-fps" min="1" max="60" value="10" oninput="document.getElementById('kc-editor-fps-value').textContent = this.value">
                        <span id="kc-editor-fps-value" class="slider-value">10</span>
                    </div>
                </div>

                <div class="form-group">
                    <div class="label-row">
                        <label for="kc-editor-interpolation" data-i18n="kc.interpolation">Color Mode:</label>
                        <button type="button" class="hint-toggle" onclick="toggleHint(this)" title="?">?</button>
                    </div>
                    <small class="input-hint" style="display:none" data-i18n="kc.interpolation.hint">How to compute the key color from pixels in each rectangle</small>
                    <select id="kc-editor-interpolation">
                        <option value="average">Average</option>
                        <option value="median">Median</option>
                        <option value="dominant">Dominant</option>
                    </select>
                </div>

                <div class="form-group">
                    <div class="label-row">
                        <label for="kc-editor-smoothing">
                            <span data-i18n="kc.smoothing">Smoothing:</span>
                            <span id="kc-editor-smoothing-value">0.3</span>
                        </label>
                        <button type="button" class="hint-toggle" onclick="toggleHint(this)" title="?">?</button>
                    </div>
                    <small class="input-hint" style="display:none" data-i18n="kc.smoothing.hint">Temporal blending between extractions (0=none, 1=full)</small>
                    <input type="range" id="kc-editor-smoothing" min="0.0" max="1.0" step="0.05" value="0.3" oninput="document.getElementById('kc-editor-smoothing-value').textContent = this.value">
                </div>

                <div id="kc-editor-error" class="error-message" style="display: none;"></div>
            </form>
        </div>
        <div class="modal-footer">
            <button class="btn btn-icon btn-secondary" onclick="closeKCEditorModal()" title="Cancel" data-i18n-aria-label="aria.cancel">&#x2715;</button>
            <button class="btn btn-icon btn-primary" onclick="saveKCEditor()" title="Save" data-i18n-aria-label="aria.save">&#x2713;</button>
        </div>
    </div>
</div>
