=== Forward: Custom Login Page ===
Contributors: forlaens
Tags: login page, custom login, branding, admin, accessibility
Requires at least: 5.8
Tested up to: 7.0
Requires PHP: 7.4
Stable tag: 1.0.1
License: GPLv2 or later
License URI: https://www.gnu.org/licenses/gpl-2.0.html

Customize the WordPress login screen with a logo, background image, colors, copy, and controls for hiding default login UI.

== Description ==

Forward: Custom Login Page gives administrators a focused, native settings screen for making the WordPress login page feel like the rest of their site.

Use it to:

* Replace the WordPress login logo with your own logo.
* Start from polished presets such as Calm Editorial, Forward Purple, Graphite, Nordic Green, and High Contrast.
* Add a background image and choose whether it fills the page, shows fully, repeats as a pattern, or stays centered.
* Set login page background, box, text, link, button, focus, and input colors.
* Add a welcome heading, short intro text, and optional footer note.
* Hide default login elements such as the language switcher, back-to-site link, privacy link, Remember me control, and lost password/register links.
* Preview the login page while editing.
* Check the main login color pairs against WCAG AA contrast while editing.
* Reset to the plugin defaults at any time.

The plugin keeps the login form lightweight and uses WordPress' normal login workflow. It does not replace authentication, intercept passwords, or add external dependencies.

== Privacy ==

This plugin stores its login page settings in your WordPress database. It does not collect analytics, send telemetry, process submitted login credentials, or make requests to external services.

If you choose a logo or background image from the media library, the selected image URLs are stored as part of the plugin settings.

== Accessibility ==

The settings screen and generated login styling are built to support WCAG 2.2 AA expectations:

* Controls use native form elements with labels.
* Keyboard focus remains visible.
* The default color palette meets AA contrast requirements.
* The login page reflows on narrow screens and at high zoom.
* Motion is minimal and respects reduced-motion preferences.

Administrators are responsible for choosing custom colors with sufficient contrast for their own site.

== Installation ==

1. Upload the plugin folder to `/wp-content/plugins/`.
2. Activate "Forward: Custom Login Page" in WordPress.
3. Go to "Login Page" in the WordPress admin menu.
4. Choose your logo, colors, text, and visibility settings.
5. Click "Save login page".

== Frequently Asked Questions ==

= Does this change how users log in? =

No. The plugin only changes the look and optional surrounding elements of the standard WordPress login page.

= Can I remove the language switcher? =

Yes. The language switcher is hidden by default and can be shown again from the settings screen.

= Can I get back to the WordPress default login page? =

Yes. Disable "Use the custom login page". "Reset defaults" restores the plugin's starter design and settings.

= Does the plugin add custom CSS fields? =

No. The plugin intentionally uses structured settings instead of free-form CSS so the output remains predictable, secure, and easier to translate and test.

= Can I use it on multisite? =

The plugin stores settings per site. It has not been designed as a network-wide settings tool.

== Screenshots ==

1. The login page customizer with brand, background image, color, text, and visibility settings.
2. The customized WordPress login page with a branded welcome message.
3. Mobile login page layout with the login form reflowed for narrow screens.
4. The Graphite preset with a readable login error state.

== Changelog ==

= 1.0.1 =
* Remove not-yet-public Forward plugins from the admin teaser list.

= 1.0.0 =
* Initial release.
* Added logo, background image, color, text, preview, reset, and default login UI visibility controls.

== Upgrade Notice ==

= 1.0.1 =
Only public WordPress.org plugins are shown in the Forward plugins teaser list.

= 1.0.0 =
Initial release.
