feat: hero variants, block colors, theme preview tab, CSS var sync on upgrade

- Add .hero#primary / .hero#secondary CSS variant system to template.css
- Add :nth-child() block color palette for top-a/b, bottom-a/b positions
- Add named per-module overrides (#block-highlight, #block-cta, #block-alert)
- Add all hero + block CSS variables to light/dark custom palette templates
- Add theme-test.html with full visual CSS variable reference + color test
- Add "Theme Preview" tab to admin config with embedded iframe of test sheet
- Add script.php install/update script (Joomla 5/6 compatible)
- Add sync_custom_vars.php — detects missing vars in user palettes on upgrade
- Add en-GB and en-US language strings for new admin config fields
- Update CSS_VARIABLES.md and CHANGELOG.md
- Bump version to 03.09.02

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
This commit is contained in:
2026-03-26 12:44:46 -05:00
parent 4237b303dc
commit b25a8f58d8
10 changed files with 1440 additions and 1 deletions

View File

@@ -512,6 +512,40 @@ color-scheme: dark;
--vm-vendor-menu-link-active: var(--primary);
--vm-vendor-menu-hover-bg: var(--tertiary-bg);
/* ===== HERO VARIANTS ===== */
/* Primary — deep navy, dark overlay */
--hero-primary-bg-color: #0d1e3a;
--hero-primary-overlay: linear-gradient(rgba(13, 30, 58, .65), rgba(13, 30, 58, .65));
--hero-primary-color: #f1f5f9;
/* Secondary — darker navy, heavier overlay */
--hero-secondary-bg-color: #080f1e;
--hero-secondary-overlay: linear-gradient(rgba(8, 15, 30, .80), rgba(8, 15, 30, .80));
--hero-secondary-color: #f1f5f9;
/* ===== BLOCK COLORS (top-a / top-b / bottom-a / bottom-b) ===== */
--block-color-1: var(--secondary-bg);
--block-text-1: var(--body-color);
--block-color-2: var(--accent-color-primary);
--block-text-2: #fff;
--block-color-3: rgba(238, 194, 52, .15);
--block-text-3: var(--body-color);
--block-color-4: rgba(74, 166, 100, .15);
--block-text-4: var(--body-color);
/* ===== BLOCK COLOR OVERRIDES ===== */
--block-highlight-bg: var(--accent-color-primary);
--block-highlight-text: #fff;
--block-cta-bg: var(--color-primary);
--block-cta-text: #f1f5f9;
--block-alert-bg: var(--danger, #c23a31);
--block-alert-text: #fff;
/* ===== GABLE ===== */
--gab-blue: #4d9fff;
--gab-green: #5cb85c;