=== Kontrastkopf AI Transparency Markers ===
Contributors: kontrastkopf
Tags: ai disclosure, ai transparency, ai content, image labels, eu ai act
Requires at least: 6.4
Tested up to: 7.1
Requires PHP: 7.4
Stable tag: 1.0.9
License: GPLv2 or later
License URI: https://www.gnu.org/licenses/gpl-2.0.html

Label AI-generated and AI-modified WordPress content and images with local EU icon assets, manual control, and no telemetry.

== Description ==

Kontrastkopf AI Transparency Markers adds visible, accessible labels to images, posts, and pages. It bundles the official EU icon assets locally and does not require a cloud service.

Features:

* automatically label newly uploaded images when their filename contains the configured `.ki` segment
* manually choose a status in the Media Library and content editor
* add image overlays to common WordPress image output
* show a written content notice below the main heading, with a safe fallback before the content
* choose an official EU color variant, a theme color, or a brand color
* preview the result and receive basic visibility warnings in the settings screen
* provide screen-reader text and machine-readable `data-ai-content` attributes
* no telemetry, no external runtime requests, and no automatic AI detection

The plugin is a labeling tool, not legal advice. It does not guarantee compliance with any law or regulation.

The included EU icon files are stored in the plugin and are not downloaded at runtime. Their source and checksums are documented inside the plugin under `docs/EU-ASSETS.md`.

== Installation ==

1. Upload the plugin ZIP through Plugins > Add New Plugin > Upload Plugin.
2. Activate Kontrastkopf AI Transparency Markers.
3. Open Settings > AI Transparency.
4. Configure the display and label content manually, or upload a new image whose filename contains `.ki`.

== Frequently Asked Questions ==

= Does the plugin automatically detect AI-generated content? =

No. It does not analyze images or text. A label is set only through the configured filename segment on a new image upload or through a manual selection.

= Which filenames are detected? =

The default marker `.ki` must form a complete dot-separated segment. For example, `image.ki.jpg` and `IMAGE.KI.WEBP` are detected, while `monki.jpg` is not.

= Is the label embedded when someone downloads the image? =

No. Version 1 displays an HTML/CSS overlay on the website and does not modify the original media file.

= Does the plugin send data to third parties? =

No. The plugin makes no external requests at runtime.

= Are theme and brand colors official EU color variants? =

No. Only black, white, 50% black, and 50% white are bundled official variants. Theme and brand modes retain the icon geometry but are clearly identified as derived color variants in the settings.

= What happens to plugin data after deactivation or deletion? =

Deactivation keeps settings and content statuses. Uninstall keeps them by default as well. You can explicitly enable complete data removal in the plugin settings before uninstalling.

== Screenshots ==

1. Choose an AI content status in the post or page editor.
2. Set an image status manually or use the filename marker for new uploads.
3. Preview image labels, content notices, sizes, positions, and color variants.
4. Display an accessible written content notice directly below the main heading.
5. Use a compact icon on preview cards and a status-specific wordmark on single views.

== External services ==

This plugin does not connect to or depend on any external service. All icon, stylesheet, and script files used at runtime are bundled locally. WordPress.org supplies translations through its standard language-pack system.

== Changelog ==

= 1.0.9 =

* Renamed the plugin and slug to Kontrastkopf AI Transparency Markers for a distinctive WordPress.org identity.
* Replaced direct `<style>` output with stylesheets loaded through the WordPress enqueue system.
* Removed bundled locale files and the unnecessary manual text-domain loader in favor of WordPress.org language packs.
* Kept all existing settings, metadata keys, and runtime behavior compatible with version 1.0.8.

= 1.0.8 =

* Prepared public metadata and WordPress.org documentation for submission.
* Aligned version declarations across the plugin header, translations, tests, and release documentation.
* Normalized bundled EU asset filenames for WordPress.org packaging without changing their contents.
* Addressed Plugin Check findings for input sanitization, template variables, and uninstall cleanup.
* Excluded development-only tests from the production package.
* No runtime behavior or stored settings changed.

= 1.0.7 =

* Removed the redundant badge gallery from the live preview.
* Focused the preview on the two actual image contexts and the written content notice.

= 1.0.6 =

* Added automatic placement of the content notice directly below the main heading.
* Kept a safe fallback before the content for unusual themes and added a compatibility mode.
* Changed defaults to a 24 px icon and 14 px text while preserving custom sizes during upgrades.

= 1.0.5 =

* Added separate opacity control for the icon beside the written content notice.
* Added 100% and 50% color strength for image labels and content notices in theme color mode.
* Applied both opacity settings immediately in the live preview and frontend.

= 1.0.4 =

* Ensured theme and brand badges remain visible after switching modes in the live preview.
* Handled the `hidden` attribute of embedded SVGs consistently across browsers.

= 1.0.3 =

* Restored the written, status-specific content notice below the heading.
* Removed only the optional text beside image badges.
* Separated image previews and the actual written notice in the settings preview.
* Added a local preview image and a compact setup guide.

= 1.0.2 =

* Replaced written notices temporarily with status-specific content badges.
* Removed configurable companion text.
* Improved custom color rendering in the preview and frontend.

= 1.0.1 =

* Added a compact Basic icon to preview cards and status-specific wordmarks to single views.
* Added separate responsive sizes and improved theme compatibility.
* Prevented content notices from appearing in archive excerpts.

= 1.0.0 =

* Initial package release.
* Added EU icon overlays, content notices, `.ki` filename detection, and manual status controls.
* Added settings for preview, color modes, and basic visibility warnings.

== Upgrade Notice ==

= 1.0.9 =

Renames the plugin for WordPress.org review and aligns stylesheet and translation handling with directory requirements. Stored settings and content statuses remain unchanged.

= 1.0.8 =

Release preparation only. Runtime behavior and stored settings remain unchanged.

= 1.0.7 =

Simplifies the live preview without changing frontend labels or stored settings.

= 1.0.6 =

Places content notices below the main heading across themes and uses more compact defaults. Custom sizes remain unchanged.

= 1.0.5 =

Adds opacity controls for content notice icons and theme colors. Existing settings default to full opacity.

= 1.0.4 =

Fixes theme and brand colors in the live preview. Stored settings and content statuses remain unchanged.

= 1.0.3 =

Restores the written content notice and keeps existing content statuses.

= 1.0.2 =

Simplifies visible labels and improves custom colors. Existing status values and sizes are retained.

= 1.0.1 =

Improves labeling on preview cards and single views. Existing status values remain unchanged.

= 1.0.0 =

Initial version. Test all display contexts used by your theme before production use.
