# Changelog

## v1.2.0

- Added support for AC EVO's new Official livery linker when validating, generating, duplicating and deploying SavedCars, while preserving compatibility with older Official livery packages and legacy SavedCars.
- Added persistent timestamped session error logs under `UserData/Logs`, including startup and WebView runtime diagnostics, active workflow context, critical-operation checkpoints, backend tracebacks, ZIP import/export and texconv diagnostics, background watcher failures, frontend JavaScript errors and clean/unclean shutdown detection, plus a Settings shortcut to the current logs folder.
- Added five persistent Layer Studio favorite-color slots with a compact right-aligned flyout below the 2D toolbar, editable hex values and one-click color application to the active tool.
- Added linear and radial gradients to the Layer Studio Stripe tool, including two-color alpha controls and angle support while preserving existing solid stripes.
- Improved the Layer Studio Shortcuts modal with a wider three-column layout and scrollable content so current and future shortcut entries remain fully accessible.
- Improved Official activation guidance when multiple profile `SavedCars` targets are detected, including the detected paths, clear recovery steps and a pre-expanded scrollable details view while preserving the safe deployment block.
- Fixed redirected Windows `Saved Games` folder support by resolving the system Known Folder instead of assuming the default user-profile location across Official liveries, SavedCars, thumbnails, runtime switching and Grid Cache workflows.
- Added a `Duplicate Livery` action for editable Official and Advanced project liveries, creating an inactive project with a new identity while preserving authoring assets and supporting existing local SavedCar and visual/mechanical preset chains.
- Removed the unreliable in-session workspace switch from the sidebar logo; changing between Official and Advanced workspaces now requires an app restart so startup initialization runs cleanly.
- Added workflow-aware conversion of Official livery packages into Advanced projects when they are imported from the Advanced workflow.
- Converted editable Official packages into normal editable Advanced projects while preserving included Layer Studio sources.
- Added Derived Advanced projects for read-only Official packages, preserving their baked livery artwork as a locked base while allowing Tyre Brands, Driver Profiles and Numberplates to be changed independently.
- Added safe template resolution, package-path validation and rollback cleanup for Official-to-Advanced package conversion.
- Fixed Derived Advanced activation so locked baked project textures are validated and synchronized into the local Advanced skin without unlocking artwork editing.
- Fixed Derived Advanced Tyre Brand selection so the chosen brand remains visible, is verified in the local Visual Preset and is reliably restored before Activate or Update in Game.
- Enabled detected AC EVO garage thumbnails for Derived Advanced projects while keeping their baked livery artwork, Layer Studio authoring and Material Finish controls locked.
- Fixed AC EVO thumbnail refresh detection so changed thumbnail content is recognized even when file size and timestamps remain unchanged.
- Added clear available, update and current states to the `Use AC EVO Thumbnail` action.
- Enabled personal AC EVO thumbnail overrides for read-only Official and Advanced liveries while preserving their locked package artwork.
- Added creator thumbnails to Official read-only package exports and imports, including automatic SavedCar thumbnail installation on first activation when no AC EVO thumbnail already exists.
- Fixed portable-install update handling so managed preview resources, project metadata and other stored paths continue to work after the LiveryLab installation folder is renamed or moved.
- Expanded path rebasing and validation across Official preview assets, runtime state, SavedCar vaults, package state, update backups and Custom Grid presets to prevent stale installation paths from reaching later workflows.
- Fixed migrated Advanced workspaces incorrectly requiring another full content extraction when valid legacy extraction state from an earlier installation was available.
- Improved legacy livery package compatibility across Official and Advanced imports, including older SavedCar payload layouts and exported `system/SavedCars/*.carfinalstate` files.
- Fixed Advanced liveries using shared cross-car `EXT_BANNER` templates so missing local banner runtime files are repaired before activation and package export.
- Added a guided AC EVO update assistant that detects changed game packages, explains the required restore and cleanup sequence, supports resumable full Advanced extraction and refreshes previously active Advanced liveries afterwards.
- Improved duplicate `content.kspkg` recovery guidance by identifying the old LiveryLab-disabled package, showing its exact location and requiring the user to remove it manually before continuing.
- Added guided cleanup for stale loose AC EVO folders: `cfg`, `content`, `editor`, `serverconfig`, `system` and `uiresources`.
- Added a dismissible pending-migration reminder with an option to restore the reminder later.
- Added an immediate busy overlay to the Official and Advanced workflow-selection cards so repeated clicks are blocked while the selected workflow initializes.
- Removed the obsolete Advanced-workflow startup notice and suppressed the successful Advanced-livery refresh modal when no active liveries needed restoration.
- Improved Advanced My Liveries so installed Official liveries appear as clearly labeled, collapsible read-only references, while preserving the existing conversion into separate Advanced projects when Official packages are imported.
- Enabled Layer Studio layers to extend beyond and overlap the 2D texture area, including groups, PNG mask groups, polygon and stripe points, and Bezier handles, while keeping baked output limited to the actual texture size.
- Fixed Layer Studio text scaling so it is proportional by default and freely adjustable while holding Shift, and hid Favorite Colors for the `EXT_SKIN_D` texture slot.
- Fixed Numberplate template previews after installation-folder renames by resolving current managed Door, Hood, Font and downloaded template PNG paths instead of stale absolute paths.
- Improved the 3D Livery Preview guidance for Official and Advanced projects with clear project-folder, texture-filename and live-refresh instructions.
- Updated Layer Studio, Numberplate, package-import, migration and AC EVO game-folder dialogs with clearer current-workflow wording and consistent terminology.
- Improved Advanced Setup with a compact full-width Windows Long Paths requirement followed by a balanced 2x2 step grid, and removed the obsolete pre-thumbnail-grid Car Analysis legend.

## v1.1.4
- Fixed legacy Official livery package imports so machine-specific SavedCar paths are handled portably and older compatible packages can be imported and activated safely.
- Removed incorrect Official activation dependencies on Advanced visual presets and extracted game content while preserving the required Official preview-asset workflow.
- Added discovery of externally installed Official liveries that are not yet registered in LiveryLab, including a visible Not Synced status and manual registration for app management.
- Improved external livery discovery so valid game-installed liveries and their matching SavedCars appear reliably in My Liveries.
- Hardened Advanced runtime switching so a complete content extract is required before disabling `content.kspkg`, with Safety installation and rollback protection before livery writes.
- Fixed Workspace Transfer portability for SavedCar snapshots, thumbnails, Driver profiles, Tyre Brands, preview projects, project metadata, browser favorites and other machine-specific paths.
- Fixed legacy Workspace Transfer imports with relative `projectFolder` values so preview project paths and filenames are no longer corrupted during rebasing.
- Ensured imported Workspace Transfer liveries remain inactive and do not retain paths from the source PC.
- Removed unfinished template-generation assets from release packaging and prevented them from entering future builds.
- Simplified portable release folder naming by removing the `_Portable` suffix.


## v1.1.3

- Changed foreign Saved Games `ExternalLiveries` discovery to a visible `Not registered` state with explicit read-only registration, including validation and a local SavedCar snapshot for later activation/deactivation management.
- Made finished Official packages self-contained: export/import/activation no longer require extracted game content or prepared Preview Assets, and incomplete texture/SavedCar payloads are rejected before installation.
- Fixed Official packages from older LiveryLab versions carrying source-machine SavedCar archive paths, while preserving portable SavedCar data and valid local deactivate/reactivate restores.
- Added the Official-only Online League workflow for creating, exporting, importing and activating shared livery packs through AC EVO's `ExternalLiveries` system.
- Added dedicated `LeagueProjects`, `LeagueLibrary` and `LeagueExport` storage folders so League content remains separate from normal projects and My Liveries.
- Added Online League pack validation that rejects Advanced liveries and other unsupported entries before export.
- Improved League activation conflict handling so matching existing liveries can be reused while genuinely different liveries are installed separately.
- Kept League-owned liveries out of the normal My Liveries list while preserving pre-existing Official liveries that were already installed independently.
- Added expandable Installed Pack details with read-only livery information and thumbnails.
- Added installed League pack deletion with clear confirmation that pack-owned liveries are permanently removed from `ExternalLiveries`.
- Preserved pre-existing user liveries and liveries still shared by other installed League packs during pack removal.
- Improved the Online League editor with collapsible livery entries, clearer in-view navigation and draft-level unsaved-change feedback.
- Fixed Online League draft tracking so livery field edits and locally saved entry changes correctly mark the complete draft as unsaved.
- Fixed missing thumbnails in the Installed Packs view.
- Improved legacy Official livery activation by automatically resolving the single available profile `SavedCars` folder when older imports do not contain the newer stored path information.
- Expanded Official Preview Resources to include compatible vehicle part meshes used by vehicle variants in 3D Livery Preview and Layer Studio.
- Fixed a preview mesh cache issue that could prevent extracted part meshes from being exported with complete geometry.
- Improved long Windows path handling with an actual runtime write test for deeply nested Official Preview Resources instead of relying only on the legacy path-length limit.
- Added a non-blocking Windows Long Paths setup check for both Official and Advanced workflows, including guidance for the bundled BAT file and manual Windows configuration.
- Improved long-path error messages with concrete recovery instructions while keeping normal setup usable when the Windows setting is disabled.
- Fixed 3D preview material classification across all cars so generic `EXT_DETAILS_*` materials are no longer mistaken for tail lights and rendered red.
- Added a guided migration workflow for LiveryLab 1.0.2 and 1.0.3 Advanced workspaces.
- Added detailed migration inspection, progress reporting, verification and rollback handling.
- Migrated Advanced liveries now start inactive while preserving editable and read-only package policies.
- Preserved existing Official libraries, machine-specific settings and the original LiveryLab installation during migration.
- Added support for importing pre-1.1 Advanced livery packages into the Official workflow while keeping read-only packages read-only.
- Improved Official workflow onboarding with clearer multiplayer, single-player and content-extraction explanations.
- Expanded the Official Help Guide across Setup, My Liveries, Livery Creator, Import / Export and Settings.
- Clarified that Official liveries appear under `Vehicles → My Cars` and that custom livery names are not currently displayed in-game.
- Improved the Live 3D Workflow guidance to explain live texture updates from the project folder when using an external image editor.
- Updated the About page with features focused on the Official workflow.
- Simplified read-only livery handling by removing editable-folder actions and restricting the 3D viewer to a clean preview-only mode.
- Fixed read-only Official 3D previews opening the wrong confirmation flow or failing to open.
- Fixed duplicate External Install entries appearing after importing converted Advanced liveries.
- Fixed converted Legacy liveries losing their correct car model during Official discovery, which could block activation with a SavedCar model mismatch.
- Updated generated README files with separate Official and Advanced workflow guidance.
- Added a release-root README with clearer ZIP unblocking, extraction and versioned installation-folder instructions.
- Removed the obsolete beta instructions file.
- Updated the blocked-ZIP error guidance with consistent English wording.

## v1.1.2

- Added multi-batch Official livery support for cars using multiple EXT_SKIN material surfaces.
- Added Official Body Color synchronization with AC EVO garage SavedCars.
- Added Body Color support for cars without native in-game customization options.
- Fixed Official EXT_Skin_D red-channel surfaces so they follow the selected in-game Body Color.
- Fixed blue EXT_Skin_D material regions so they render as neutral black carbon instead of blue-tinted carbon.
- Added tiled carbon texture rendering to the normal 3D Preview and Layer Studio Final Livery view.
- Updated all 3D livery previews to use Final Livery as the default view.
- Improved feature parity between the normal 3D Preview, Layer Studio and Advanced/Official workflows.
- Fixed Layer Studio Texture Slot view so EXT_Skin_D displays its original RGB channel colors.
- Fixed UV Mesh rendering so it remains visible above the vehicle without inheriting EXT_Skin_C colors.
- Added Official material-channel preview support independent of an existing external_livery.json.
- Removed the obsolete Detect From Skin action from the Official Body Color workflow.
- Added Update in Game notifications after Official Body Color and Paint Finish changes.
- Added a Paint Finish-specific tooltip to the Update in Game action.
- Added a visible error modal when Paint Finish values cannot be saved.
- Added adaptive texture-format detection for Advanced-to-Official imports using texture descriptors and texturemips sizes.
- Added support for both 8-byte BC1/BC4 and 16-byte BC5/BC7 Advanced texture sources.
- Preserved linear BC7 decoding for compatible Advanced color and detail textures.
- Added compatible neutral Official vehicle-variant fallback handling for Advanced packages using authored-only vehicle materials.
- Added migration of supported Advanced RGB/PBR material channel values into Official projects.
- Added fidelity warnings for Advanced material properties that cannot be reproduced by Official External Liveries.
- Improved Advanced Project and Read-only package conversion into editable Official projects.
- Added content-based duplicate detection for Advanced-to-Official package imports.
- Prevented identical Advanced packages from creating duplicate Official projects.
- Added backward duplicate detection for older imports when their original source package is still available.
- Added a neutral Already installed - no changes made result for detected package duplicates.
- Added a warning when a changed version of an existing source livery is installed as a separate copy.
- Fixed repeated Official SavedCar activation and update operations when a previously used vault source no longer exists.
- Treat a valid matching SavedCar at its original profile location as already present instead of requiring the old archived copy.
- Keep activation blocked when both the archived SavedCar and the expected profile SavedCar are missing.
- Added SavedCar restore-state metadata for restored and already-present garage files.
- Updated new Official Paint Finish placeholders to match the default Paint Finish controls:
  - Metalness: 0.0
  - Roughness: 0.3
  - Clearcoat: 1.0
  - Clearcoat Roughness: 0.3
- Preserved existing user-authored Official material maps when applying the updated placeholder defaults.
- Added a purple Install Livery action style across Advanced and Official My Liveries views.
- Improved Advanced-to-Official import validation, error reporting and focused regression-test coverage.

## v1.1.1

- Fixed Official livery activation so it no longer depends on an extracted content/cars folder.
- Added deterministic recovery and compatibility validation for missing or incompatible Official SavedCars while preserving project car GUIDs.
- Fixed read-only Official package imports and deployment eligibility.
- Blocked Official activation and deactivation while AC EVO is running.
- Added post-deployment verification before an Official livery is marked active.
- Improved detection of missing or stale Official game deployments.
- Expanded Backup & Transfer support for Official libraries, editable Official projects and required SavedCars.
- Fixed Workspace Transfer for Advanced projects, editable Official projects and read-only Official liveries.
- Preserved target-machine settings and rebased portable project and preview paths during Workspace Transfer imports.
- Added safe transfer support for common editor source files.
- Fixed Workspace Transfer progress reporting and duplicate Official project file processing.

## v1.1.0
- Added the new Official workflow for creating custom liveries compatible with standard AC EVO installations without loose game content.
- Added automatic discovery and read-only handling of official and externally installed liveries in My Liveries.
- Added car thumbnail grids, search, favorites, vehicle variants and selectable livery start points to the Official creator.
- Added Official project support for 3D Preview and Layer Studio, including material channels and splat map editing.
- Added automatic import routing for livery packages based on the selected workflow and detected package type.
- Added conversion of legacy Advanced livery packages into editable Official projects.
- Preserved legacy livery colors, paint finish values, Layer Studio sources and package thumbnails during Official import.
- Added in-game SavedCar thumbnails for imported and newly created Official liveries.
- Improved workflow switching with safe storage and restoration of Advanced content, SavedCars and their thumbnails.
- Added transactional rollback and integrity checks to prevent incomplete workflow switches or damaged stored files.
- Updated multiplayer safety notices and limited loose-content warnings to relevant Advanced liveries.
- Fixed Volkswagen Golf 8 R availability in the Advanced creator and corrected blank livery texture neutralization.
- Improved release and signing scripts for shared virtual environments and multiple Git worktrees.
- Various workflow, validation and UI fixes.
- Added automatic SavedCar generation for Official External Liveries, allowing newly created liveries to appear in the AC EVO garage without first creating a car manually in-game.
- Added collision-safe SavedCar GUID generation and automatic synchronization between LiveryLab projects, ExternalLiveries deployments and AC EVO SavedCars.
- Improved Official livery activation and deactivation so generated SavedCars are stored locally while inactive and restored when the livery is reactivated.
- Added detection and clear labeling for manually installed External Liveries that were not created or managed by LiveryLab.
- Fixed livery removal so active ExternalLiveries deployments, local library entries, thumbnails and related files are removed consistently.
- Improved Deleted Liveries management with corrected list sizing and Remove All Deleted Entries actions for both Official and Advanced workflows.
- Preserved read-only package policy after import and removed obsolete editable-project conversion paths.
- Routed Official read-only and editable package exports to OfficialLiveryPackageExport and improved safe editable Official package imports.
- Fixed local AC EVO thumbnail discovery, added short retry polling, improved instructions and kept Use AC EVO Thumbnail visible but disabled until a thumbnail is available.
- Simplified end-user Settings and My Liveries views by moving runtime diagnostics, external-livery diagnostics, Overview/Diagnostics switches and internal project-status pills into dev mode.
- Improved Official and Advanced Livery Creator layouts with brand sorting, aligned readiness badges, cleaner category counts and refined Variant/Trim thumbnails.
- Added consistent Update in Game notifications for Layer Studio texture changes and paint-finish changes in both Official and Advanced workflows.
- Replaced intrusive texture-update modals with a temporary inline button tooltip.
- Improved Official Layer Studio 3D preview handling for final liveries, body colors and additional texture slots including EXT_SKIN_D.
- Improved compatibility for cars with alternative EXT_SKIN material layouts, including the Alfa Romeo Giulia GTA Sprint, without adding car-specific behavior.
- Significantly improved full and partial content extraction performance with faster XOR processing, larger chunks, byte-based progress, transfer speed and ETA reporting.
- Fixed extraction progress appearing stuck near 98% while remaining files were still being processed.
- Improved Official preview-asset generation with reusable extraction results and reduced duplicate processing.
- Prevented content.kspkg from being renamed before Advanced content setup has completed successfully.
- Updated Advanced race-car No Numberplate handling for the latest AC EVO format by synchronizing empty Kunos selector messages in Visual Presets and CarFinalStates.
- Removed the obsolete transparent Actor/placement-scale workaround for newly saved No Numberplate configurations and added migration cleanup for existing LiveryLab-owned hidden variants.
- Clarified Official Creator behavior: official external liveries now start from a blank livery only.
- Removed Official workflow access to original EVO livery start points to avoid extracted-content dependencies.
- Kept vehicle variant selection as Official project context for preview, metadata and SavedCar alignment.
- Updated Official blank project generation to create the full EXT_Skin source set: C, D, R, M, CC and CR.
- Updated Official external_livery.json refresh so generated EXT_Skin placeholders are referenced consistently.
- Hid the Official Creator start point selector and kept Advanced-only original EVO livery start points.
- Synced updated source files into release/_internal for local runtime smoke testing without a full build.
- Added Official/Advanced runtime switching with content.kspkg disable/restore handling.
- Added runtime vault handling for Official and Advanced garage SavedCars, including thumbnails.
- Always show the Official/Advanced workflow selection screen on app start.
- Clarified runtime switch confirmation text: loose Advanced content stays untouched and Safety is checked during Advanced loading.
- Shortened runtime vault SavedCar/thumbnail filenames to reduce Windows path risk.
- Added game-running guard for runtime switch operations.
- Fixed game process detection encoding issue.
- Added Layer Studio legacy migration from layer-studio/layers.json to layer-studio/ext_skin_c/layers.json.
- Improved Advanced setup resource selection by automatically selecting `content.kspkg` after the AC EVO root has been configured.
- Added Layer Studio `ext_skin_d` support across the 2D texture slot flow, layer list handling and 3D texture slot switching.
- Added original AC EVO texture/mask awareness for EVO default liveries in Layer Studio, including locked reference layers and automatic hiding of the `BASE COLOR` layer where it would cover original source textures.
- Improved `ext_skin_d` handling for EVO default liveries, including support for real splat maps, fallback masks and Ferrari F40 LM edge cases.
- Added in-game Body Color preview support based on `ext_skin_d` splat map channels, including red body-color regions, yellow authored-texture regions and paint finish application.
- Added Body Color controls to Layer Studio 3D preview and improved `Texture Slot` vs `Final Livery` preview behavior.
- Updated Body Color defaults to a saturated purple preview color for clearer visual distinction.
- Restored original AC EVO livery availability for valid Advanced source templates.
- Fixed Layer Studio base-color auto-hide behavior for `ext_skin_d`, EVO default base textures and generated `ext_banner_c` cases.
- Added read-only research/validation for AC EVO `SavedCars` paint state, confirming Body Color and Paint Finish are stored in user garage `.carfinalstatewithconsumable` files.
- support original AC EVO livery start points in advanced creator
- avoid using custom installed skins as EVO default sources
- add advanced banner fallback project texture handling
- show busy state while creator actions prepare confirmations
- hide temporary project workflow details in My Liveries
- scope 3D preview asset status to active template workflows
- show square source-template thumbnails in creator selection
- Added Online League pack management for Official and Advanced workflows with strict workflow-separated local storage.
- Added local league pack drafts, editable pack metadata, square pack thumbnails, saved draft list and installed pack list.
- Added multi-livery ZIP import, folder import, entry metadata editing, per-entry save, preflight checks and warning/error status display.
- Added league pack export/import as ZIP with manifest validation, thumbnail packaging and workflow-scope mismatch protection.
- Kept Online League data separate from My Liveries and local-only, with no writes into AC EVO game folders.
- Improved Online League UI layout, including Custom Grids-style pack list, inline export-folder picker, multi-ZIP import hint and compact entry status placement.
- Add EXT_Skin_D as an editable Layer Studio surface for official and advanced projects
- Restrict splat editing to game-supported mask colors
- Add Layer Studio splat legend and contextual tool guidance
- Sync official external manifest state after splat map bakes
- Preserve EXT_Skin_D project data during package and transfer imports
- Treat missing advanced EXT_Skin_D as optional until a real source exists
- Harden advanced game texture update paths for neutral splat map resizing
- Added scoped My Liveries categories for Advanced and Official workflows so both paths keep independent category lists, favorites and assignments.
- Added per-workflow category sorting modes: created order, alphabetical and custom order.
- Added custom category ordering with Up/Down controls, visible only while Custom sorting is active.
- Kept Favorites pinned at the top and excluded from manual reordering.
- Moved category item counts into the category title, e.g. `Favorites [2]`.
- Improved Skin Detail layout by moving diagnostic/debug information into a less prominent tabbed area.
- Removed the obsolete display-name Save action for editable project liveries and added editable author/description fields for Advanced and Official project liveries.
- Fixed metadata-only saves for Official project liveries so author/description updates do not try to write through the game content path.
- Added Official Creator preflight checks for saved-car/template readiness and official resource state.
- Added `carfinalstatewithconsumable` template preparation notes and EVO 0.8 validation checklist documentation.
- Updated transfer export/import to preserve My Liveries category metadata with Advanced/Official scope awareness.
- Verified Advanced legacy project transfer compatibility, including existing-category reuse during import.
- Verified Official transfer category restore behavior, including same-name category reuse inside the Official scope while keeping Advanced categories separate.
- filter creator templates to original Kunos designs only
- add sidebar workflow mode badge and logo workflow switch
- replace source template selects with variant radio cards
- simplify creator card text and hide redundant variant metadata
- lock livery identity naming and shorten generated IDs/folders
- add author/description metadata to advanced and official projects
- show livery metadata in My Liveries detail view
- refine creator layout, right-column scrolling and thumbnail handling
- add official vehicle variant preset selection and default standard ordering
- reuse advanced variant part preview handling for official livery projects
- support variant-specific auxiliary models, UV overlays and AO textures
- refine official preview asset extraction filters
- simplify official setup/startup flow and shared splash background handling
- keep risky rear overlap hiding disabled after BMW M2 diffuser review
- add official vehicle variant metadata and selection support
- include variant body parts, UV parts templates and variant AO maps in official preview assets
- filter official resource extraction to relevant exterior meshes, presets and AO mips
- dedupe technical duplicate variants while preserving user-visible specs
- prefer Standard/Base specs as default variant selection
- avoid preview asset backups inside derived preview storage

## v1.0.2
- Added Layer Studio 3D camera preset controls matching the existing 3D Livery Preview camera bar.
- Added middle-mouse camera roll for 3D Livery Preview and Layer Studio, including Shift snapping to 45-degree steps and updated shortcuts guidance.
- Improved save and apply workflows for numberplates, tyres, drivers and My Liveries activation so loading states stay visible until post-action refresh work is complete.
- Simplified Activate/Update in Game confirmation handling by closing the confirmation modal immediately and relying on the My Liveries action loading state.
- Tightened end-user file browser behavior so Livery Creator focuses on `.cardesign` files and Texture Converter focuses on `.texture` / `.texturemips` files.
- Hid advanced template file controls from the end-user Livery Creator workflow while keeping them available for dev mode.
- Restored automatic selection of newly created liveries when switching to My Liveries after creation.
- Added project preparation to the livery creation progress modal so temporary missing-project-file warnings no longer appear after new skin creation.
- Added an Install Livery shortcut in My Liveries that opens Import / Export and highlights the single-livery import workflow.
- Updated About page feature tiles with current release features, including Layer Studio and refreshed Numberplate Tools wording.
- Added a Driver Profiles info modal explaining current Ferrari F1 support and the need for a matching livery before assigning a driver.
- Improved 3D paint finish preview material response so roughness, clear coat, clear coat roughness and metalness changes are more visible and closer to AC EVO.
- Updated Paint Finish presets in 3D Livery Preview and Layer Studio with AC EVO-inspired Gloss, Matte, Metallic, Satin Metallic, Matte Metallic and Chrome values.

## v1.0.1
- Improved read-only installed livery handling so package skins skip editable project texture sync during Activate in Game.
- Fixed My Liveries remove/trash handling for local-library skin files so local storage paths are moved into LiveryLab trash correctly.
- Fixed AC EVO thumbnail import so square non-1024 snapshots are normalized to 1024x1024 instead of failing.
- Improved texture format detection with DXGI descriptor fallback and safer SpatMap handling for unusual `.texturemips` layouts.
- Improved EXT_BANNER neutral material map handling so banner roughness/metalness/clearcoat descriptors are repaired from matching slot templates.
- Fixed project/transfer import handling for driver profiles and Layer Studio data, including legacy project-library PNG source migration.
- Removed automatic Custom Grids AI name cleanup installation and added cleanup for legacy AI name hooks.
- Added Custom Grids Endurance AI-spec support detection so Endurance can only be selected for compatible cars.
- Fixed OEM/EVO paint override stripping so valid material controls are not removed too aggressively.
- Improved setup/root saving behavior so the setup gate only treats the selected AC EVO root as ready after it has actually been saved.
- Removed the Backup Cleanup card from Settings and simplified the maintenance section.
- Disabled UPX compression in the PyInstaller spec to improve packaged EXE reliability.
- Hardened EXT_BANNER texture activation so color and neutral banner maps verify matching descriptors before rebuilding `.texturemips`.

## v1.0
- Added custom My Liveries categories with live search, collapsible groups, inline rename, inline category creation and per-livery category assignment.
- Added Favorites as a virtual My Liveries group with card-level star toggles while keeping favorite liveries assignable to normal categories.
- Added My Liveries category and favorite storage in `UserData/settings.json`.
- Improved Backup & Transfer with My Liveries category-aware export selection, a compact selected export summary and total export size.
- Added My Liveries category metadata to transfer exports so imported skin packs restore categories and livery assignments.
- Reuse existing My Liveries categories by name during transfer import instead of creating duplicates.
- Added automatic My Liveries refresh after transfer import and automatic transfer overview refresh when opening Import / Export.
- Moved transfer workflows out of Settings into a renamed Import / Export section.
- Split Import / Export into Single Livery Package, Skin Pack and Workspace Transfer workflows.
- Added dedicated Skin Pack export/import UI for My Liveries-only transfer ZIPs while preserving known livery dependency handling.
- Reworked Workspace Transfer My Liveries selection into category groups with nested livery checkboxes.
- Improved My Liveries action timing so success modals are no longer shown before post-action refresh work has completed.
- Reduced My Liveries success modal noise for longer Activate, Deactivate, Update, Remove and Trash workflows while keeping error modals visible.
- Unified Car Analysis Ready states so native and LiveryLab-generated livery workflows are shown as one Ready status.
- Added a LiveryLab Livery marker in the file browser so known My Liveries `.cardesign` files show a yellow `L` badge and matching yellow filename highlight.
- Made LiveryLab Livery file-browser markers independent from Car Analysis and loaded lazily only when browsing relevant skin folders, avoiding extra startup delay.
- Added clearer loading states for My Liveries and Custom Grids while slower views are being prepared.
- Deferred LiveryLab file-browser marker scanning until the file browser is opened, with cached marker state to avoid repeated full scans.
- Updated My Liveries remove workflow: removed the redundant Remove from Game choice and simplified the modal around Remove from App, with optional LiveryProject trashing.
- Editable LiveryLab liveries now detect missing required LiveryProject source textures before Activate/Update in Game.
- Missing critical project files no longer show a misleading Update in Game state; inactive liveries with missing project files cannot be activated.
- Restored disabled cursor behavior for the Activate in Game button when activation is blocked by missing project assets.
- Optimized LayerStudio projects with local PNG library
- Added Layer Studio gradient fills for polygon, rectangle and ellipse layers, including solid, linear and radial fill modes with two-color alpha controls and baked texture support.
- Disabled auto backup of livery files in UserData folder
- Export you liveries as read-only or complete project zip with Layer Studio included, so you can work together on a livery project
- Many bug fixes and UI polish

## v0.99.99
- Add Layer Studio variant part policy groundwork
- Improved Layer Studio support for vehicle variants with replacement and add-on body parts.
- Split UV mesh overlays into separate `UV BASE OVERLAY` and `UV PARTS OVERLAY` layers, with base UV lines in red and variant/parts UV lines in cyan.
- Updated the 3D preview to combine the base mesh with compatible variant parts and hide replaced stock body components where needed.
- Removed the obsolete separate `Spec Parts` texture-slot workflow for cases now handled through the main `ext_skin_c` texture.
- Added a conservative `Vehicle Variant` selector during skin creation for cars where one `.cardesign` can map to multiple paint-relevant variants, such as the Mazda MX-5 NA Standard / RS Limited case.
- Improved `.cardesign` recognition in the setup/file browser so valid design files are easier to identify, including files in nested folders.
- Added Settings backup cleanup controls for My Skins game-file backups and reduced unnecessary My Skins backup generation during normal activate/deactivate/update workflows.
- Fixed My Liveries activation dependency handling so skin-local material references are repaired or copied correctly for cars with additional retargeted design material slots.
- Added a visible Missing assets status pill to My Liveries cards when required activation dependencies are missing.
- Improved My Liveries Activate/Deactivate/Update in Game loading behavior so the view stays busy until the post-action refresh is complete.

## v0.99.98
- Added Layer Studio PNG mask groups so polygon masks can clip PNG layers, stay selectable in the 2D texture view and bake correctly into the preview texture.
- Improved Layer Studio layer and PNG-library reordering with pointer-based drag handling for faster drops and more responsive grouping workflows.
- Expanded Layer Studio layer-list polish with colored group backgrounds and direct fill swatches for rectangle and ellipse layers.
- Reworked polygon and stripe Bezier editing toward a Photoshop-style workflow with selected-point handles, coupled handle movement, Alt decoupling and Shift snapping.
- Added curve-hover point insertion for polygon and stripe layers, including click-to-add linear points, drag-to-add Bezier points, clearer hover states and updated shortcuts guidance.

## v0.99.97
- Added selectable Custom Rear Plate handling for road-car liveries, including project `plate_r.png` creation, update detection and AC EVO default cleanup.
- Fixed road-plate activation and restore cleanup for wrapped garage SavedCars so stale generated plate parts are removed safely.
- Improved My Liveries package import/export and Backup & Transfer so read-only skins, project liveries, Layer Studio projects and required PNG assets round-trip more reliably.
- Fixed livery creation cleanup and texture conversion handling so failed creates remove partial files and cars with non-BC1 source maps can still be generated.
- Polished release packaging with visible third-party notices, bundled texconv documentation and font license files while removing generated build/checksum metadata from release outputs.

## v0.99.96
- Added livery-specific rear road-car plate handling so supported road skins get an editable `plate_r.png` project texture that is wired back into the in-game PLATE_R part during activation.
- Fixed road plate source detection for JDM cars such as the Datsun 240Z and Toyota Supra MkIV so project PNGs come from the material-referenced plate texture instead of stale family fallback textures.
- Improved road plate activation syncing by patching matching car final states and saved garage cars through additional skin references.
- Moved Layer Studio base textures into per-surface `layer-studio/<texture>/base.png` folders with legacy `ext_skin_c_base.png` migration.

## v0.99.95
- Added Bezier curve editing for Layer Studio polygon layers while preserving existing straight polygon shapes.
- Improved Layer Studio point editing with active selection frames, anchored color pickers and clickable color swatches for polygon and stripe layers.
- Added bundled Layer Studio Google Font presets with local licenses and alphabetized font groups.
- Improved PNG placement by closing the PNG library after inserting an asset.
- Added 45-degree Shift rotation snapping for simple Layer Studio layers such as PNGs, shapes and text.

## v0.99.94
- Added Bezier curve editing for Layer Studio stripe layers, including click-drag curve creation and editable handles.
- Improved Layer Studio polygon and stripe drafting with visible points, first-point polygon closing and clearer gold draft guides.
- Added Shift snapping for stripe points and Bezier handles so edited curves can align cleanly to common angles.
- Improved Layer Studio 3D UV mesh preview handling so body and banner UV overlays stay matched to their own texture surfaces.
- Polished the Layer Studio shortcuts modal for the expanded editing workflow.

## v0.99.93
- Improved Backup & Transfer for full workspace moves, including Layer Studio projects/assets and larger transfer bundles.
- Expanded Layer Studio 3D preview controls with UV mesh, scene options, texture reload and synchronized Paint Finish saving.
- Fixed texture-size handling for generated project PNGs so cars with non-4096 textures activate correctly.
- Improved AC EVO restore cleanup and clarified which extracted game resource folders can be manually removed afterwards.
- Cleaned up Setup by removing the confusing Prepare Update action.
- Added clearer `.cardesign` variant/trim information in Livery Creator.
- Refined Ferrari F2004 livery/sponsor preview handling.

## v0.99.9
- Fixed long Windows path failures during livery activation by moving texture conversion work files into short LiveryLab-managed temp folders.
- Shortened exported ZIP and package staging names for skins, drivers, tyre brands, numberplates and custom grids while keeping full metadata in package manifests.
- Improved tyre brand, driver and Backup & Transfer package import flows so confirmation dialogs, progress bars and success messages appear at the correct time.
- Added tyre brand template download support, editable driver profile details, clearer driver livery selection labels and a Start Game action for Custom Grids.
- Simplified Custom Grid activation by installing or updating the game bridge automatically when a grid is activated, with cleanup handled during deactivation.
- Polished Setup with visible Storage Health warnings, session-only hidden setup bypasses and less blocking behavior around guarded game-write workflows.
- Updated installer assets, installer update/uninstall guidance and synchronized runtime files for the hotfix.

## v0.99.8
- Fixed Setup Game Resources with a confirmation step and clearer guidance for long-running package extraction.
- Added an AC EVO update preparation workflow that removes LiveryLab-managed game installs before re-extracting game resources.
- Tightened end-user file browsing and texture converter input handling so normal workflows stay focused on supported car livery folders.
- Improved package import validation, Backup & Transfer import checks and package error messaging.
- Polished Livery Import, Numberplate Studio, startup guidance, success modals, package README wording and generated livery asset handling.
- Rebuilt and synchronized the release folder with the hotfix changes and version metadata.

## v0.99.7
- Fixed the Custom Grids bridge install/remove flow so the AI name marker cleanup hook is installed with the bridge and removed cleanly with bridge cleanup.
- Restyled the in-game Custom Grids bridge button with uppercase text, green background, AC EVO-style spacing and improved vertical alignment.
- Added a Custom Grids bridge guide modal with a screenshot, persistent `settings.json` dismissal and a clear pointer to the in-game Load LiveryLab Grid button.
- Simplified Setup Game Resources by removing the selected-path extraction controls and keeping the setup workflow focused on Extract all.
- Cleaned up My Liveries activation success modals so only the summary line is shown directly while the action list stays inside Details.
- Rebuilt and synchronized the release folder with the bridge, setup and modal polish fixes and version metadata.

## v0.99.6
- Fixed AC EVO updated `content.kspkg` extraction by supporting the newer package table layout while preserving the previous package format.
- Restored custom livery creation and activation for the new car-local `content/cars/<car>/presets` visual preset and car final state structure.
- Fixed My Liveries update, deactivate, remove and Back to Default cleanup so LiveryLab-managed car-local final states, generated thumbnails, actor references and mechanical preset references are removed or rebuilt correctly.
- Added manifest-backed `content.kspkg` disable/restore tracking with a legacy fallback for earlier LiveryLab-disabled package names.
- Rebuilt and synchronized the release folder with the AC EVO update compatibility fixes and version metadata.

## v0.99.5
- Fixed My Liveries trash handling so project folders with extra source files are preserved unless the user explicitly confirms moving the full LiveryProject folder to trash.
- Improved Custom Grids bridge safety by blocking game activation until the bridge is installed, refreshing bridge state after install, pulsing available activate/update actions and moving advanced cleanup tools into dev mode.
- Clarified Custom Grids activation modals by treating Endurance AI spec handling as an informational note and showing required preflight fixes directly in the error modal.
- Added optional Custom Grid team metadata to local grid entries and bridge payloads, while keeping Driver name required before saving or exporting a grid.
- Updated Setup guidance, Help Guide visibility, project README notes, Livery Import layout cleanup and release metadata.

## v0.99.4
- Fixed startup routing so incomplete setup opens the Setup screen while completed setup opens My Liveries after the splash screen.
- Improved My Liveries editing and export flows with inline name saving, clearer AC EVO thumbnail overwrite confirmation and a blocking package-export busy state before the success modal.
- Cleaned up Livery Import by removing the separate manifest check and output panel, keeping ZIP selection and import on one compact row.
- Added clearer Setup Help Guide and project README guidance, plus automatic Driver Project `README.txt` generation that explains editable PNGs and UV helper files.
- Added `PROJECT.md` as the repository project overview and refreshed the release folder, version metadata and landing page changelog.

## v0.99.3
- Fixed 3D Livery Preview wheel placement so opening an existing preview rebuilds wheel and tyre transforms from the current per-car calibration data instead of reusing stale project metadata.
- Fixed Wheel Calibration saving so existing per-car wheel override axes are preserved when a debug tuning pass saves updated values.
- Updated the wheel calibration data for the completed car set, including corrected Volkswagen Golf GTI Mk8 wheel and tyre offsets.
- Fixed the artificial 3D preview floor height so it follows the lower tyre edge for each calibrated car.
- Rebuilt and synchronized the release folder with the wheel calibration fixes and version metadata.

## v0.99.2
- Fixed Paint-only livery upgrades so generated skin materials read the target car AO texture from the original source material, including car-specific texture folders such as the Volkswagen Golf GTI Mk8 `textures/gti` layout.
- Fixed the existing Volkswagen Golf GTI Mk8 generated skin material and 3D preview AO export so the app and in-game result use the correct car AO instead of the Audi template AO.
- Added a combined final-release-plus-installer batch workflow with `build_final_release_with_installer.bat`.
- Rebuilt and synchronized the release folder with the AO fix, combined packaging helper and version metadata.

## v0.99.1
- Fixed the mandatory LiveryLab Safety setup guard so required game resources are installed and repaired automatically during Step 02 without adding another setup step.
- Fixed local livery create, import, activation and removal workflows so the generated safety index refreshes in the background whenever the library changes.
- Fixed generic localized game UI messaging for guarded custom-livery states without exposing technical details.
- Updated Step 02 wording to Game Resources and kept app-facing safety copy generic as LiveryLab Safety.
- Rebuilt and synchronized the release folder with the safety guard fixes and version metadata.

## v0.99.0
- Added the Settings Restore AC Evo to default workflow with a two-step danger confirmation and explicit warnings for permanent game-file and user garage SavedCar deletion.
- Added modular Back to Default backend cleanup for LiveryLab-managed skins, Custom Grid Bridge hooks, AI name cleanup, AI grid specs, custom tyre brand game files, driver assets, actor/mechanical references and `.loc` entries.
- Added targeted SavedCars cleanup based on concrete LiveryLab-managed references from the custom skin library while leaving unrelated user garage cars untouched.
- Added Livery Creator car-analysis status legend, button icon refinements and Settings layout updates including a full-height Backup & Transfer panel.
- Rebuilt and synchronized the release folder with the restore workflow, UI fixes and version metadata.

## v0.98.0
- Added Tutorial Mode as a toggleable in-app guidance layer with persistent user settings, reusable tooltip targets and focused hover styling.
- Added first tutorial guidance across Setup, My Liveries/Skin Detail, Livery Creator, Numberplate Studio, Custom Grids and Settings, including notes for Steam launch requirements, AC EVO thumbnails and `.cardesign` workflow basics.
- Added automatic `README.txt` generation for LiveryProjects skin folders with a fixed workflow guide for livery PNGs, optional editor source files, material maps and project metadata.
- Updated LiveryProjects and release README wording so editor source files are optional and exported PNG textures remain the workflow source of truth.
- Rebuilt and synchronized the release folder with the tutorial guidance and project README workflow.

## v0.97.1
- Fixed Backup & Transfer import review so the final import action stays blocked until package analysis has completed and users get progress feedback during long-running transfer imports.
- Added setup completion gating so the main navigation stays locked until Document Root, package state, storage health and external tools are ready, with clearer completed-step styling and saved storage health state.
- Tightened Document Root validation to accept only usable AC EVO roots with `content/cars` or `content.kspkg` while keeping write-access issues as warnings instead of hard blockers.
- Documented the Back to Vanilla smoke-test findings, including the confirmed AC EVO crash risk when user SavedCars reference missing LiveryLab content.
- Rebuilt and synchronized the release folder with the setup gate, Backup & Transfer and documentation fixes.

## v0.97.0
- Added read-only handling for installed livery packages so downloaded skins keep creator-authored metadata, tyres, driver, numberplate and package state locked after import.
- Split My Liveries policy between editable created/project skins and installed package skins, including backend permission guards for metadata, preview images, tyres, drivers, numberplates, material finish, package export and editable 3D preview tools.
- Updated the 3D Livery Preview for read-only installed skins to use a library preview cache, show only the view/reload workflow and avoid creating or depending on editable LiveryProjects data.
- Kept Backup & Transfer as a full workspace migration path so transferred project skins remain editable while imported package skins keep their read-only policy.
- Excluded preview-cache runtime data from update backups, transfer bundles, release syncs and final/beta package audits.
- Rebuilt and synchronized the release, final release and installer packages with the read-only installed-livery workflow.

## v0.96.2
- Cleaned livery, driver, tyre brand, numberplate, custom grid and Backup & Transfer package handling so exported ZIPs avoid retired Porsche window-overlay, light-test and baked-numberplate artifacts.
- Added missing ZIP package export/import coverage for Numberplate templates and Custom Grid presets, including enabled Custom Grid package buttons in the UI.
- Removed obsolete Numberplate startup template loading and logs while keeping the PNG-only Numberplate Studio workflow available.
- Fixed the 3D Preview startup flow so the app no longer reports a hidden canvas as not ready during normal launch while preserving the visible preview load checks.
- Improved final-release startup diagnostics for blocked downloaded ZIPs and added a separate Inno Setup installer build workflow.
- Rebuilt and synchronized the release, final release and installer packages with the export, startup and packaging fixes.

## v0.96.1
- Restored custom EXT_BANNER activation so skin banner textures are copied and bound through skin-local materials again, including cars whose source skins use custom banner material names.
- Fixed EXT_BANNER design and finalstate syncing to keep one clean banner slot without cloning experimental light or window-overlay data.
- Fixed Porsche 992 Cup local skin creation so driver folders are no longer generated unless the car supports the Driver Profile workflow.
- Cleaned up the retired Porsche window-overlay workflow from the normal app path while preserving the existing 3D Preview and texture workflows.
- Rebuilt and synchronized the release folder with the banner, local-skin and cleanup fixes.

## v0.96.0
- Disabled the experimental window-overlay game-part workflow by default and kept its creator toggle behind advanced debug tools.
- Removed automatic EXT_BANNER game-slot syncing while cleaning stale EXT_BANNER design, visual preset and finalstate entries during skin creation and updates.
- Improved new-skin mechanical variant selection by preferring standard AC EVO presets over generated LiveryLab-managed presets for availability checks and matrix creation.
- Refined My Liveries editing with a combined Tyres & Driver panel, tighter preview/edit layout and responsive single-column fallback.
- Simplified Numberplate Studio and Tyre Brand template management by moving New, Import, Export and Delete actions into clearer tool areas and removing duplicate-template actions.
- Documented the Porsche 992 Cup headlight DRL research, including the confirmed C238-C245 mesh components and the remaining VehicleLight customization constraints.
- Rebuilt and synchronized the release folder with the workflow gating, library UI and research documentation updates.

## v0.95.0
- Added category-specific app background images with reusable rotation across the main app areas.
- Restored transparent 3D Preview window material behavior and fixed material-mask texture slot switching for EXT_SKIN map previews.
- Added the EXT_Skin_D splat-mask legend, hid the inactive EXT_WINDOWS_C texture slot and improved material-map preview display for grayscale slots.
- Preserved original EXT_Skin_D splat maps for Ready cars while keeping neutralized splat maps for Generated Ready cars.
- Added a collapsible 3D Preview status output and a warning confirmation before saving Paint Finish changes that may overwrite material-map textures.
- Rebuilt and synchronized the release folder with the background, 3D Preview, Ready skin and material-save workflow updates.

## v0.94.0
- Reworked Backup & Transfer to export one portable v2 transfer ZIP instead of a transfer folder with nested category ZIPs.
- Updated transfer import to accept the v2 ZIP directly, inspect importable categories and continue blocking imports until a document root is selected.
- Added automatic transfer dependency inclusion for selected My Liveries so required local Tyre Brands and Driver Profiles are exported even when the user only selects the skin.
- Preserved the disabled Numberplate integration by keeping old Numberplate template/package references out of transfer exports while retaining `No numberplate` metadata.
- Shortened transfer naming and path handling, excluded generated thumbnails from portable exports, and kept required local skin files such as `carfinalstate` in the package.
- Rebuilt and synchronized the release and final release package with the Backup & Transfer v2 workflow and updated landing page version display.

## v0.93.5
- Fixed Backup & Transfer package imports so bundled local-skin dependencies such as `carfinalstate` and generated thumbnails are hydrated from the game folder when needed.
- Fixed package exports for local skins so required game-selectable skin data is included while preserving skin-local driver references where the game expects them.
- Changed Activate in Game to rebuild existing project PNG textures into local `.texturemips` files every time, including skin banners when present, so restored or older source PNGs cannot leave stale default textures in-game.
- Rebuilt and synchronized the release and final release package with the transfer, package export and activation workflow fixes.

## v0.93.4
- Fixed final release packaging so the bundled pywebview WebView2 dependencies under `_internal/webview` are preserved.
- Rebuilt and synchronized the release and final release package so fresh test machines can start the app without missing `Microsoft.Web.WebView2.Core.dll`.

## v0.93.3
- Expanded the standalone landing page with responsive hero artwork, mobile hero spacing, section background lazy loading and polished screenshot assets.
- Added thumbnail-based screenshot rail loading and improved the lightbox image sizing, navigation animation and caption updates.
- Updated source version metadata and the landing page version display for this landing page-only update without changing the desktop app runtime.

## v0.93.2
- Refreshed the landing page with the updated hero artwork, loader treatment, active navigation behavior and current version display.
- Polished the app UI styling across the shared shell, overview, My Liveries, Driver Profiles, Numberplate Studio, Tyre Brands and Custom Grids views.
- Updated the Trust and Safety notes with the current release, local storage, package, Backup & Transfer and game-write workflows.
- Updated the release build, final release package and version metadata with the landing page, UI and trust documentation updates.

## v0.93.1
- Removed the retired Inspect search navigation buttons from the UI and startup binding logic so the app no longer aborts while loading saved settings.
- Rebuilt and synchronized the release folder with the startup fix.
- Included the current landing page updates in source control.

## v0.93.0
- Added a clean final release packaging workflow with `build_final_release.bat` and `tools/build_final_release.py`.
- Added automatic final release folder and ZIP generation from the current release build without local settings, user projects, custom liveries, driver profiles, tyre brands, numberplates or backups.
- Copied `beta_instructions.txt` into the final release as the initial top-level `README.txt` template for later final-release wording.
- Ignored generated final release folders and ZIP archives so public package output does not pollute source control.
- Updated the release build and version metadata with the final release packaging workflow.

## v0.92.1
- Aligned the remaining My Liveries, Driver Profiles, Numberplate Studio and Tyre Brands panel heights with the shared work-area layout so views use the available space consistently.
- Improved My Liveries game-update notices by tracking and listing all pending local changes, such as tyre brand, driver profile, numberplate, texture and material updates, instead of showing only the latest reason.
- Updated the release folder README files for LiveryLibrary, LiveryLibrary/Converted, LiveryPackageExport and LiveryProjects to document the current library, project, package export, conversion and Backup & Transfer workflows.
- Updated release README generation so known legacy generated texts are refreshed while custom user README content is preserved.
- Updated the release build and version metadata with the layout, My Liveries sync notice and release documentation fixes.

## v0.92.0
- Limited the experimental Porsche window-overlay workflow toggle to Porsche 992 Cup cardesigns, kept it off by default and labeled it as experimental.
- Added skin-template support analysis for cardesigns missing core skin data, including Setup Step 3 progress reporting, file-browser warnings and creation blocking for unsupported templates.
- Added status-aware modal accent colors and primary button colors for info, success, warning and error states, with better warning-button contrast.
- Improved My Liveries by de-duplicating delayed thumbnail preview loading and giving the list/detail area more usable height above the output log.
- Improved Custom Grids with clearer action icons, bridge install/remove icons, a stronger detail title, hidden duplicate action, renamed Add to Grid action and corrected panel height handling.
- Improved Driver Profiles with list/detail preview sizing fixes, square preview/logo boxes and icon-enhanced New/Import actions.
- Updated the release build and version metadata with the template preflight, modal, thumbnail, Custom Grid and Driver Profile UI updates.

## v0.91.0
- Added ZIP-based package import/export for My Liveries, Driver Profiles, Tyre Brands and Numberplate template packages.
- Added the Settings Backup & Transfer workflow with export/import tabs, category selection, per-item My Liveries/Driver/Tyre selection and separate ZIP packages inside a transfer folder.
- Added transfer bundle inspection/import with automatic import backups under `UserData/transfer_import_backups`.
- Added transfer export progress with spinner feedback, file-level progress events and the current packed file path.
- Fixed My Liveries transfer discovery for the current `my_skins.json` registry format and prevented empty `local_root` values from being treated as the project folder.
- Improved Ferrari F2004 driver/local skin export handling so driver material references are synced into local visual, mechanical and car final state data.
- Cleaned up Settings by moving legacy setup tools off the page and making Backup & Transfer the central backup workflow.
- Refreshed the About feature cards for Custom Liveries, Custom Drivers, Custom Tyre Brands, Custom Grids, Numberplate Generator and Texture Converter.
- Updated the release build and version metadata with the transfer, ZIP package and F2004 driver workflow updates.

## v0.90.0
- Added Driver Profile package export and import, including embedded driver projects and Driver Profile dependencies in livery packages.
- Improved Driver Profile selection, loading and package dependency handling in My Liveries so supported cars resolve and install custom drivers cleanly.
- Limited custom Driver Profile creation and activation to Ferrari SF25 and Ferrari F2004 while the workflow is validated for those driver layouts.
- Fixed SF25 PNG-only driver activation by preserving the source driver mesh logic, neutralizing inherited helmet mask/detail layers and forcing local helmet material overrides so carbon and flake textures no longer bleed through custom helmets.
- Improved driver project synchronization with source-accurate suit, gloves, visor and helmet assets, black neutral masks and local/game mirror cleanup for stale helmet assets.
- Updated the release build and version metadata with the Driver Profile export/import and SF25 helmet workflow fixes.

## v0.89.0
- Added per-entry Custom Grid AI vehicle specs with Standard and Endurance choices so exported grids can request endurance equipment without changing every skin for the car.
- Added generated LiveryLab endurance mechanical presets and AI final states that preserve existing car mechanical variants while enabling Lumirank and endurance/front bumper parts where supported.
- Improved the AC EVO Custom Grid bridge with mechanical preset overrides for loaded AI entries, bridge-managed grid thumbnails and a fallback placeholder for the grid edit view.
- Added Custom Grid export cleanup for generated AI vehicle specs and refreshed the app/release status messages for exported AI specs and thumbnails.
- Documented the Custom Grid and AI Endurance Spec beta workflow and updated the release build and version metadata.

## v0.88.0
- Added the Porsche 992 Cup window-overlay workflow, including generated skin-local overlay parts, overlay mesh templates, matching mechanical presets, alpha-mask conversion and localization entries for supported car languages.
- Added an explicit Livery Creator option for normal skins versus custom window-overlay skins so `EXT_WINDOWS_C.png` export, window UV generation and overlay game patching only run when the workflow is enabled.
- Improved generated overlay mechanical presets with readable display names and kept window overlay metadata in skin package export/import manifests.
- Added `EXT_WINDOWS` UV template generation for enabled overlay skins and kept normal livery projects free of window UV artifacts.
- Updated the release build and version metadata with the window-overlay workflow changes.

## v0.87.0
- Added skin-local `EXT_BANNER` syncing so custom banner textures are written as skin-owned materials, registered in `.design`, `.visualcarpreset` and matching `.carfinalstate` files, and kept separate from the `EXT_WINDOWS` workflow.
- Improved `EXT_WINDOWS_C.png` game export by flattening transparent artwork to an opaque game texture while keeping the 3D Preview glass overlay readable.
- Cleaned up the My Liveries detail layout by moving Local Preview into Edit, adding section icons and making Tyres and Driver controls full width.
- Documented the Porsche 992 Cup window-overlay smoke-test findings and ignored local backup folders from Git.
- Updated the release build and version metadata with the banner, window and My Liveries workflow updates.

## v0.86.0
- Added `EXT_WINDOWS_C.png` LiveryProjects export support so Porsche-style window textures are converted to skin-local `.texturemips`, bound through a D7-compatible `EXT_WINDOWS.material` base-color state and synced during Activate/Update in Game.
- Added `EXT_WINDOWS_C.png` support to the 3D Livery Preview and made generated `EXT_WINDOWS.material` base-color opacity fully opaque.
- Added skin-local Porsche-style `EXT_WINDOWS` syncing so managed window materials are registered in `.design`, `.visualcarpreset` and all matching `.carfinalstate` snapshots during create and Activate/Update in Game.
- Updated the release build and version metadata with the EXT_WINDOWS livery workflow.

## v0.85.0
- Added AC EVO SavedCars snapshot thumbnail detection for My Liveries, including automatic list previews from `%USERPROFILE%\\Saved Games\\ACE\\SavedCars\\Thumbnails`.
- Added a My Liveries workflow to replace the current preview image with the AC EVO snapshot while keeping manual preview uploads available as an override.
- Added direct syncing from AC EVO snapshot previews into the game-generated `content/cars/<car>/generated/thumbnails` texture files used by Vehicle Hub, car selection and Custom Grids.
- Removed the old 3D Preview thumbnail-generation workflow, including the Thumbnail Scene, EVO Thumb camera preset, Preview Image menu action and related dev calibration UI.
- Improved My Liveries thumbnail loading with indexed SavedCars scans and visible loading states for delayed AC EVO preview hydration.
- Improved Custom Grids with a native in-game Load LiveryLab Grid button, active-grid status, stale-grid update detection and clearer game update actions.
- Updated the release build and version metadata with the AC EVO snapshot preview and Custom Grid workflow updates.

## v0.84.0
- Added Skin Detail start-number editing for `No numberplate` skins, storing the number in the native visual car preset field used by AC EVO.
- Allowed cars without default numberplate definitions to select `No numberplate` and save a start number without requiring a cloned numberplate actor.
- Added Custom Grid start-number propagation so exported AI entries can carry each skin's configured start number through the bridge workflow.
- Improved Custom Grid preset UI with square preset previews, livery thumbnails in grid entries, clearer left-rail actions and icon-enhanced entry controls.
- Added F2004 wheel preview calibration data and tightened backup-ignore rules for LiveryLab-managed game-file backup folders.
- Updated the release build and version metadata with the start-number, Custom Grid UI and wheel calibration updates.

## v0.83.0
- Added square Custom Grid preset previews stored in `LiveryLibrary/GridPresets/previews`, with list/detail rendering, duplicate/delete handling and release API support.
- Improved the Custom Grids workflow with background preflight checks, duplicate-livery blocking, livery thumbnails in grid entries and a cleaner entry layout with icon actions.
- Moved Custom Grid library and bridge controls into the left rail, prepared disabled preset import/export actions and kept grid-specific actions in the detail header.
- Improved `No numberplate` handling by creating or reusing hidden local numberplate variants, updating the visual selector and syncing owned numberplate variants during activation.
- Updated the release build and version metadata with the Custom Grid preview/layout and hidden numberplate workflow updates.

## v0.82.2
- Added packed-content safety checks so Custom Grid UI hooks are blocked while `content.kspkg` is active and LiveryLab UI hook backups are quarantined outside the AC EVO load path.
- Moved Custom Grid bridge backups into LiveryLab-managed backup storage and added cleanup support for removing all experimental Custom Grid UI hooks.
- Fixed package extraction setup so a fresh ACE root can extract `content.kspkg` even when extracted top-level folders such as `content`, `system` and `uiresources` do not exist yet.
- Added a dedicated Package Extractor progress modal with percent, current file, file/folder counters and cooperative cancel support.
- Ignored local ACE grid cache backup output so runtime restore data is not picked up by Git.
- Updated the release build and version metadata with the package extraction and Custom Grid safety fixes.

## v0.82.1
- Added a separate AI name marker cleanup hook for AC EVO HUD, ingame and driver-label displays so leading AI marker bullets are stripped without changing the custom-grid bridge itself.
- Added Custom Grids cleanup controls for installing/removing the AI name cleanup and for resetting/restoring AC EVO quick-race grid cache backups.
- Improved Custom Grid bridge cleanup, driver-label restoration and bridge status detection after removing experimental hooks.
- Improved the AC EVO bridge panel reload feedback and scaled the smoke-test panel for easier in-game testing.
- Updated the release build and version metadata with the Custom Grids cleanup fixes.

## v0.82.0
- Added Custom Grids as a LiveryLab app area for creating named AC EVO grid presets with car, skin and driver-name entries stored in `LiveryLibrary/GridPresets`.
- Added AC EVO custom-grid bridge install, remove and export actions with backup-protected writes into the game UI resources.
- Added a smoke-tested Quick Race custom-grid workflow that exports selected LiveryLab grid presets into AC EVO custom grid parameters.
- Added bridge-side diagnostics, static current-grid loading and status feedback for preset reload/apply actions.
- Added an experimental UI-level driver-name override for AC EVO leaderboard, timetable and driver-label displays.
- Updated the Numberplate Studio PNG-only export workflow with default LiveryLibrary output handling and a first-open feature notice.
- Updated the release build and version metadata with the Custom Grids and PNG-only numberplate workflow.

## v0.81.0
- Added default racing driver support so racing cars without skin-local driver assets can use the Driver Profile workflow.
- Changed Driver Profile projects to a PNG-only texture workflow by removing suit appearance color controls and neutralizing driver material color layers.
- Added driver UV template PNG export for helmet, suit and gloves sources, including non-square helmet texture support.
- Improved Driver Profile source detection, preview reloading and linked My Skin update-state tracking when driver PNGs change.
- Fixed Driver Profile deletion so generated project PNGs, UV templates, previews and preview caches are removed while user-authored files in the project folder are preserved.
- Updated the release build and version metadata with the expanded PNG-only Driver Profile workflow.

## v0.80.2
- Fixed Ferrari F2004 Driver Profile projects so BAR helmet and visor textures are exposed as single `helmet.png` and `visor.png` sources while syncing them to all required in-game texture targets.
- Added automatic F2004 helmet mask neutralization so `Helmet_2_D` layer masks no longer force the original red helmet paint over custom PNG textures.
- Fixed Driver Profile activation for already-localized F2004 helmet meshes by skipping same-file copies instead of failing during `Update in Game`.
- Updated the release build and version metadata with the F2004 helmet texture workflow fix.

## v0.80.1
- Fixed Ferrari F2004 Driver Profile activation so legacy skin-root driver final state and material mirrors are refreshed from the patched Driver Profile assets.
- Improved F2004 helmet PNG-first handling by keeping stale root helmet material layers from overriding the skin-local driver material.
- Updated the release build and version metadata with the F2004 driver activation fix.

## v0.80.0
- Added a dedicated fullscreen Driver 3D Preview for Driver Profiles with separate Helmet, Suit and Gloves model views.
- Added live PNG reload support for driver preview source textures without using the livery preview viewer.
- Added in-preview Suit Appearance controls with save support for linked Driver Profile material colors.
- Added Ferrari F1 suit layer preview rendering with `SpatMap` mask support so base and accent colors match the in-game material logic.
- Improved the Driver Profile detail workflow by making the 3D Preview action primary and suppressing the prepare-success status modal.
- Updated the release build and version metadata with the Driver 3D Preview workflow.

## v0.79.0
- Added PNG-first Driver Profile source workspaces with automatic project-to-library conversion for helmet, gloves, suit and visor assets.
- Added Driver Profile appearance controls for Ferrari F1 suit material base and accent colors, including linked My Skin update-state tracking.
- Added Team Logo preview uploads for Driver Profiles with square PNG validation and list/detail fallback icons.
- Improved the Drivers view with Source PNG previews, streamlined status pills, delete handling and a Skin-detail-style workflow layout.
- Fixed Driver tab layout containment and excluded `preview.png` from driver texture source previews.
- Updated the release build and version metadata with the expanded Driver Profile workflow.

## v0.78.0
- Added reusable Driver Profiles for driver-specific helmet, suit, gloves and visor assets, including a dedicated Drivers library view.
- Added `LiveryProjects/Drivers` workspaces and `LiveryLibrary/Drivers` profile storage so driver assets follow the same project-to-library-to-game sync model as liveries.
- Added My Skin driver profile selection with automatic car-specific profile loading, saved driver selections and `Update in Game` activation syncing.
- Added driver asset materialization into skin-local game files with backup-protected writes, reference patching and project-to-profile synchronization before game activation.
- Added Driver Profile usage tracking and delete protection so profiles in use by My Skins cannot be removed accidentally.
- Updated release metadata, backup ignore rules and the bundled EXE with the new Driver Profile workflow.

## v0.77.0
- Changed Numberplate Studio into a PNG generator workflow for manual placement on livery textures instead of writing custom numberplate assets into AC EVO game files.
- Disabled the 3D Preview numberplate overlay/editor UI and the skin-specific LiveryLab numberplate template game-export path while keeping the underlying code available for future work.
- Kept Skin Edit numberplate selection focused on `AC EVO default numberplate` and `No numberplate`, with updated guidance for texture-based custom numberplates.
- Fixed `No numberplate` activation so AC EVO numberplate backgrounds are removed from the game actor, while default numberplate font/background data can be restored from the local actor.
- Improved hidden/default numberplate publishing by neutralizing stale LiveryLab-baked actor entries without deleting actor records or shifting indices.
- Updated the release build and version metadata with the revised numberplate generator and visibility workflow.

## v0.76.0
- Added multi-mechanical local skin support so cars whose compatible vehicle presets share the same visual preset receive matching local car final state entries for each supported mechanical preset.
- Added package/import/export metadata for multi-mechanical skins, including mechanical preset, car final state and generated thumbnail lists while preserving older single-entry fields.
- Added activation dependency validation for managed local skins so missing skin-local material/content references block activation instead of risking AC EVO crashes.
- Fixed additional EXT_SKIN material localization so copied Porsche-style material variants keep valid source parent material references instead of being retargeted to missing local files.
- Improved Livery Creator template auto-fill by clearing dependent advanced template fields on `.cardesign` changes and ignoring stale async auto-fill results.
- Updated the release build and version metadata with the mechanical preset matrix and activation safety workflow.

## v0.75.0
- Added a shared studio-style 3D Preview lighting and reflection pipeline for Light, Dark and Thumbnail scenes while preserving each scene's background and floor colors.
- Added procedural studio environment reflections, rect-area studio lights, real shadows and scene material-look controls for paint finish preview realism.
- Changed the 3D Preview default render mode to Material View and simplified the end-user render-mode menu to Material View, Livery + AO and Material Mask.
- Improved wheel and tyre preview materials by removing tyre reflections in studio lighting while keeping rim and paint reflections active.
- Hid the standalone Studio Scene from the end-user View menu while keeping it available through Dev Scene Settings.
- Updated the release build and version metadata with the refreshed 3D Preview scene and render-mode workflow.

## v0.74.0
- Added automatic EXT_SKIN material localization and finish binding across all EXT_SKIN design slots so paint finish saves update multi-material liveries correctly.
- Fixed AC EVO paint override handling by preserving neutral design customization blocks while removing OEM paint color references from managed EXT_SKIN controls.
- Added automatic black `EXT_Skin_D` neutralization for newly created copied-source skins so copied splat maps do not hide the custom `EXT_Skin_C` livery.
- Improved 3D Preview Paint Finish saving with busy feedback, a success modal, full-width action buttons and automatic hidden EVO paint override handling.
- Changed the 3D Preview default scene to Dark Scene and refreshed the bundled Windows app icon assets.
- Updated the release build and version metadata with the material finish, EXT_SKIN and app icon updates.

## v0.73.0
- Added an end-to-end editable EXT_SKIN material map workflow for livery projects, including `EXT_Skin_M`, `EXT_Skin_R`, `EXT_Skin_CC` and `EXT_Skin_CR` project PNG import/export.
- Added AC EVO material binding support for metalness, roughness, clearcoat and clearcoat roughness maps, including nested texture-slot values and required Field21/Field22 activation flags.
- Added local skin material map synchronization so managed skins can seed missing material map texture pairs from the installed skin before project editing or game updates.
- Added 3D Preview material finish quick-fill support for writing solid BC4 material map values while keeping project PNGs visible to users.
- Updated the release build and version metadata with the material finish and editable material map workflow.

## v0.72.1
- Fixed EXT_SKIN material map conversion so `EXT_Skin_M`, `EXT_Skin_R`, `EXT_Skin_CC` and `EXT_Skin_CR` are encoded as BC4 single-channel tiled texturemips.
- Added material-slot aware format detection for metalness, roughness, clearcoat and clearcoat roughness maps when AC EVO stores them under shared EXT_SKIN texture names.
- Updated paint-only neutral material map generation to write BC4-compatible solid blocks for material maps while keeping color maps on BC1.
- Updated the release build and version metadata with the corrected material map conversion pipeline.

## v0.72.0
- Added LiveryLab-owned hood numberplate generation for template skins whose source car only ships door numberplate placements.
- Added safer owned numberplate cleanup and AC EVO fallback handling when switching skins back to stock or hidden numberplate variants.
- Added 3D Preview actor ghost tuning and diagnostics for comparing saved preview placements against projected actor placements during calibration.
- Improved hood placement export so calibrated fixed actor rotation axes are restored while editable hood rotation can map to the correct actor axis.
- Added BMW M4 GT3 hood/door numberplate calibration, including rotation-y based hood export for in-game alignment.
- Updated the release build with the generated hood numberplate workflow and BMW M4 GT3 calibration fixes.

## v0.71.0
- Added default 3D Livery Preview startup in `Livery + AO` mode and reordered the render-mode menu around the AO workflow.
- Added source-skin numberplate support detection so unsupported cars disable Numberplate Variant controls and 3D Preview numberplate actions outside Dev Mode.
- Added a `No numberplate` Numberplate type for supported skins, hiding selected AC EVO numberplates by writing actor background opacity and text alpha to zero.
- Added hidden-numberplate state handling so switching back to AC EVO or LiveryLab template numberplates restores actor visibility before applying new variants.
- Added rim ambient-occlusion map support in the 3D Preview wheel material pipeline, including UV fallback handling and detail-map reporting.
- Updated the release build with the 3D Preview AO, numberplate support and no-numberplate workflows.

## v0.70.1
- Fixed numberplate preview-to-actor apply for hood placements so source actor baselines are used instead of already-modified custom placement values.
- Improved hood placement export safety by skipping missing actor axes instead of creating new position or rotation fields on cars such as the Porsche 718 Cayman GT4.
- Prevented generated hood preview rotation from being written to an uncalibrated actor rotation axis, avoiding incorrect hood plate pitch changes.
- Updated the release build and version metadata with the safer numberplate placement apply workflow.

## v0.70.0
- Added a dedicated Numberplate Dev panel with calibration fit controls, placement diagnostics, actor nudge tools and preview-vs-actor ghost overlays.
- Added actor projection offset controls for comparing 3D Preview placement against AC EVO actor placement during numberplate fitting.
- Fixed numberplate placement safety so raw actor/game coordinates cannot be saved or applied as 3D Preview transforms, including backend guards and non-editable actor ghost plates.
- Updated Ferrari 296 GT3 door numberplate export calibration and recovered the Kondo Racing #45 placement baseline after in-game fitting.
- Updated release metadata and rebuilt the bundled EXE with the numberplate calibration workflow and Ferrari 296 GT3 placement fixes.

## v0.69.0
- Added a View menu toggle for showing or hiding the 3D Preview floor, including floor lighting and contact shadow elements.
- Fixed 3D Livery Preview load races by isolating the livery viewer from generic preview auto-loads and treating superseded loads as stale work.
- Improved Numberplate Placement Editor numeric inputs so focused fields are not overwritten by gizmo sync while typing partial values.
- Added Porsche 992 GT3 R Rennsport wheel calibration offsets for the 3D Preview wheel placement workflow.
- Updated release metadata and rebuilt the bundled EXE with the 3D Preview floor toggle, load-race guard and input handling fixes.

## v0.68.0
- Added LiveryLab-managed skin registration and My Liveries filtering so stock AC EVO designs stay out of the default livery list.
- Reworked the My Liveries skin detail toolbar, removal workflow, package export modal and four-column edit layout for cleaner day-to-day editing.
- Added Start Game feedback that keeps the launch button busy briefly after a successful launch request to prevent duplicate clicks.
- Added global UI polish with bold default body font mapping, shared border-width tokens and refreshed skin detail card alignment.
- Added Ferrari 296 GT3 numberplate export calibration updates and refreshed the release build with the My Liveries workflow changes.

## v0.67.1
- Added skin-specific numberplate preview placement overrides with editable transform fields, proportional scaling and saved hood/door placement application from the 3D Preview workflow.
- Fixed generated door numberplate placement export by preserving source placement metadata, using a stable generated preview baseline and mapping saved preview rotation back to the original actor source baseline.
- Added visible Apply Diagnostics for numberplate placement export so preview baselines, actor targets and source placement mapping can be inspected while calibrating skins.
- Updated the release build with the numberplate placement override workflow and stable generated-door game export.

## v0.67.0
- Renamed the old Paint-only compatibility bucket to Generated Ready and separated generated skin-ready cars from native Ready cars in the car compatibility analysis.
- Moved Texture Converter into the Liveries menu and hid Mesh Converter, 3D Inspect, UV Inspect and Material Viewer behind Dev Mode to simplify the end-user navigation.
- Hardened 3D Livery Preview startup with stricter canvas readiness checks, a real viewer health check, hard retry cleanup and delayed numberplate/watcher startup until the model is confirmed loaded.
- Updated the release build with the Generated Ready compatibility category, simplified navigation and stronger 3D Preview loading guard.

## v0.66.0
- Added dynamic EXT_SKIN texture discovery in 3D Livery Preview so available livery, mask, metalness, roughness, clearcoat, clearcoat roughness, AO and related maps can be inspected from the Texture menu.
- Added selectable 3D Preview render modes for Livery Only, Texture Inspect, Livery + AO, EVO Approx and Material Mask workflows.
- Added project-local AO import and display support so new and existing skins can keep `ext_skin_ao` beside the editable livery project and use it in preview modes.
- Fixed Paint-only livery generation to neutralize `ext_skin_d` alongside the auxiliary material maps so custom `ext_skin_c` liveries remain visible on paint-only cars.
- Updated the release build with the expanded 3D Preview texture workflow, AO handling and paint-only neutral map fallback.

## v0.65.0
- Added actor-based numberplate fit controls for 3D Preview calibration, including signed fit values, debug labels, copyable fit payloads and per-car built-in fit loading.
- Added Door Pitch, Door Yaw, Door Roll and Door Mode controls so mirrored door rotation and fallback placement can be tuned for special actor layouts.
- Reworked mapped numberplate preview cleanup and request cancellation so repeated overlay refreshes do not leave duplicate plate sets behind.
- Added shared numberplate fit calibrations for Porsche 718 Cayman GT4, Porsche 992 Cup, Ford Mustang GT3, Ferrari 488 Challenge Evo, BMW M2 CS Racing, BMW M4 GT3 and Maserati MC20 GT2.
- Updated the release build with the numberplate fit workflow, Door Mode fallback and calibrated preview placements.

## v0.64.1
- Fixed My Liveries deactivation and deletion cleanup so skin visual presets are removed from all matching mechanical presets and generated matrix files instead of leaving stale AC EVO references.
- Fixed My Liveries file-reference normalization for multi-entry mechanical, carfinalstate and thumbnail lists.
- Fixed local livery thumbnail refresh after creating, activating, deactivating or deleting skins with reused skin IDs.
- Improved 3D Livery Preview startup reliability by cancelling stale viewer loads, clearing the Three.js model state on close and waiting for stable canvas sizing before loading the car model.
- Updated the release build with the deletion cleanup, thumbnail refresh and 3D preview loading stability fixes.

## v0.64.0
- Added material-driven EXT_SKIN map discovery so additional material textures such as `EXT_SKIN_D`, `EXT_SKIN_R`, `EXT_SKIN_CC`, `EXT_SKIN_CR`, `EXT_SKIN_M`, `EXT_SKIN_S` and drift maps are copied into local skin projects and synced back on Activate in Game.
- Added skin-local external EXT_SKIN material localization for Porsche 992 Cup-style templates, with neutral generated fallback textures instead of reusing generic placeholder graphics.
- Fixed generated `EXT_SKIN_UV.png` orientation by vertically flipping the exported UV overlay before saving.
- Added safer game activation for cars with variant-specific MechanicalPresets, limiting custom skins to the matching source vehicle preset and cleaning up incompatible mechanical matrix files.
- Added Create Skin and Activate in Game notices that show which vehicle preset a livery will be available for.
- Updated the release build with the expanded material-map workflow, UV export fix and variant-safe mechanical preset activation.

## v0.63.0
- Added portable `UserData` storage so settings and WebView runtime state stay inside the LiveryLab release folder instead of AppData.
- Added Update Backup export/import for moving settings, installed local skins, numberplates, tyre brands and managed project files into newer LiveryLab versions.
- Added local storage cleanup for stale `_acevo_backups` and orphan `LocalSkins` folders, moving old data into reversible cleanup backups under `UserData`.
- Stopped local app workflows from creating or copying `_acevo_backups`, while keeping game-file safety backups for real AC EVO writes.
- Improved release sync and update backups so trash folders, runtime backups and editable work files are excluded from shipped/update packages.
- Fixed car analysis for Ferrari 296 GT3 and Ford Mustang GT3 variants whose generated material detection used case-sensitive filename matching.
- Updated the release build with the portable storage, update backup and local cleanup workflow changes.

## v0.62.1
- Reframed source build instructions as maintainer/reviewer notes instead of a normal release-folder feature.
- Added `TRUST.md` with end-user safety, local-only behavior, game-write and code-signing notes.
- Added release `TRUST.txt` generation for key release files.
- Updated the release build with the trust notes.

## v0.62.0
- Added `BUILD.md` with source-build requirements, manual build steps and trust notes for users who want to build LiveryLab themselves.
- Added `build_from_source.bat` to create a local venv, install dependencies, build web assets, run PyInstaller and sync the release folder.
- Updated the release build and version metadata for the self-build workflow documentation release.

## v0.61.1
- Hid backend tracebacks and internal exception details from the normal end-user UI while keeping them available in Dev Mode.
- Split status modal details into user-facing context and Dev Mode-only technical diagnostics.
- Moved My Liveries technical file/dependency details behind Dev Mode to reduce end-user noise.
- Updated the release build with the end-user error hardening changes.

## v0.61.0
- Improved My Liveries, Livery Import, UV Inspect, Numberplates and Tyre Brands responsive desktop layouts with cleaner scrolling, panel sizing and summary areas.
- Added shared button working states with spinner feedback for longer actions such as numberplate saves, tyre brand saves, livery import checks/imports, 3D Preview opening and game launch.
- Added SCSS source map generation so DevTools inspection can point back to the original SCSS module files.
- Moved shared empty-state styling into a dedicated SCSS component for easier UI maintenance.
- Updated the release build with the responsive UI polish, working states and SCSS source maps.

## v0.60.0
- Added dependency-aware custom skin package export/import for custom tyre brands, embedding missing brand assets while preserving existing local templates on import.
- Added baked numberplate dependency packaging so imported skins remain usable without importing full Numberplate Studio templates.
- Added edit locking and status messaging for imported baked-only numberplates when the original template is not installed.
- Added activation dependency checks to block skins with critical missing package assets before syncing them into AC EVO.
- Updated the release build with the skin package dependency workflow and My Liveries dependency warnings.

## v0.59.0
- Added skin-local EXT_SKIN upgrade support for cars that already have usable EXT_SKIN UVs but need generated local BaseColor material assets.
- Added automatic `EXT_SKIN_UV.png` generation in new LiveryProjects using the UV Inspect EXT_SKIN mesh filtering logic.
- Improved generated livery defaults by preserving original `EXT_Skin_D.texturemips` detail masks when available instead of replacing them with a black fallback.
- Added My Liveries project-folder access and moved the optional project-trash checkbox into the delete confirmation modal.
- Added a My Liveries `Start game` action that launches `AssettoCorsaEVO.exe` from the configured game root and avoids duplicate launches when the game is already running.
- Updated the release build with the livery upgrade, project workspace, and game launcher workflow changes.

## v0.58.0
- Added optional square PNG brand marks for custom racing tyre brand templates, including list previews, package import/export support, and fallback initials when no mark is selected.
- Improved Tyre Brands source handling by preserving the originally selected slick, blur, and brand mark PNG paths while keeping exported packages portable.
- Added drag-and-drop PNG path support for Tyre Brands source inputs and automatic brand ID generation from the template name.
- Renamed Package Import to Livery Import and refreshed the Inspect, Tyre Brands, import, and export button icons.
- Changed UV Inspect so `Major groups only` defaults to off for more reliable EXT_SKIN mesh filtering.
- Updated the release workflow instructions and release build with the Tyre Brands and UV Inspect changes.

## v0.57.1
- Fixed the startup notice `Do not show again` option by persisting the dismissed notice id in LiveryLab backend settings instead of relying only on WebView localStorage.
- Updated the release build with the startup notice persistence fix.

## v0.57.0
- Added paint-only livery upgrade support for cars whose EXT_SKIN material is defined at car level, generating skin-local livery material and texture assets.
- Fixed paint-only livery material generation by disabling base metalness, roughness, clearcoat, and clearcoat roughness map flags so custom EXT_SKIN_C textures render without the subtle auxiliary-map pattern.
- Improved paint-only car analysis and skin creation so supported paint-only cars can be treated as livery-capable templates.
- Updated the release build with the paint-only livery upgrade workflow and cleanup fixes.

## v0.56.0
- Added generated base numberplate calibration entries for nine additional AC EVO cars, using actor baselines from the original game placements.
- Added default door export factors for the new base calibrations so preview-tuned door placement and rotation can be applied in game.
- Added hood base calibration support for the Ferrari F40 LM using the Mustang-derived hood rotation axis as the current default.
- Synced the release asset bundle with the expanded numberplate calibration database.

## v0.55.0
- Added calibrated numberplate placements for the Ford Mustang GT3, covering hood and left/right door surfaces.
- Added preview-to-actor rotation export for Mustang numberplates so tuned door and hood rotation from 3D Preview is applied in game.
- Fixed numberplate viewer calibration priority so saved per-actor placements override their source placement calibration.
- Improved numberplate Apply Placement diagnostics and UI text to report the actor rotation axes written for hood and door placements.
- Updated the release build with the Mustang GT3 numberplate calibration workflow.

## v0.54.0
- Improved UV Inspect with material-aware UV grouping so EXT_SKIN, decals, glass, lights, wheels, and other mesh areas can be filtered directly.
- Added automatic EXT_SKIN selection and an EXT_SKIN only shortcut for faster Photoshop overlay preparation.
- Added a Photoshop overlay export mode that writes transparent UV line PNGs at texture size or 4096px fallback when no background image is loaded.
- Fixed UV canvas refresh behavior so clearing or changing group selections immediately updates the preview.
- Fixed UV preset persistence for texture visibility, major-group filtering, triangle threshold, and overlay export settings.
- Updated the release build with the UV Inspect workflow refinements.

## v0.53.0
- Reworked Tyre Brands into a Numberplate Studio-style template workflow with a template rail, Slick/Blur preview canvases, and an editor for new and existing racing tyre brands.
- Added Tyre Brand template editing so existing local brands can replace their Slick and Blur PNG sources and regenerate the local AC EVO texture files.
- Added Tyre Brand duplicate, delete, import, and export actions, including portable packages with source PNGs for later editing.
- Added usage checks and safe delete fallback so skins using a deleted Tyre Brand are reset to default tyres and marked for Update in Game.
- Updated the release build with the Tyre Brand Studio workflow and preview fixes.

## v0.52.0
- Added racing tyre brand support for My Liveries, including automatic detection of supported tyre families per car and clear unsupported states when a tyre setup cannot be changed.
- Added a Tyre Brands workspace for creating local custom racing tyre brands from template slick and blur PNG textures.
- Added custom tyre brand syncing so local brand assets stay in LiveryLibrary first and are copied into AC EVO only during Activate/Update In Game.
- Fixed racing custom tyre selection by writing the required slick, wet, and generic fallback tyre texture references used by AC EVO.
- Updated the release build with the racing tyre brand workflow and custom tyre brand creation tools.

## v0.51.0
- Added a dedicated Thumbnail Scene for 3D Preview image generation so exports can use their own lighting, shadows, material look, and numberplate visibility without changing the normal Light/Dark preview views.
- Added dev-mode Thumbnail Camera calibration helpers, including Free Cam capture, copyable preset values, and the calibrated EVO thumbnail camera preset.
- Added dev-mode scene controls for soft shadow visibility, Three.js contact shadows, shadow-map tuning, and key/fill/rim light positions.
- Updated 3D Preview thumbnail export to use the Thumbnail Scene, hide numberplates for generated initial thumbnails, and restore the user's previous preview scene afterward.
- Improved preview material and shadow handling so livery materials, rims, and numberplates can participate in the scene lighting/shadow workflow.
- Added the latest saved Thumbnail Scene settings and wheel calibration entries to the release build.

## v0.50.3
- Added 3D Preview thumbnail creation from the fixed EVO camera preset, saving generated preview images back into LiveryProjects and LocalSkins before game sync.
- Refined the 3D Preview menu for end users with Skin, View, Texture, Preview Image, and Numberplate groups while moving advanced tools behind dev mode.
- Reworked texture slot switching with explicit `EXT_SKIN_C` and `EXT_Skin_D` buttons, added an EVO Approx toggle, and kept game updates centralized in My Liveries.
- Improved custom preview thumbnail activation by skipping unusable AC EVO thumbnail templates instead of failing the full Activate in Game workflow.
- Moved numberplate preview cache PNGs into `preview_assets/numberplates` and added a visible error modal when LiveryLab templates are saved without a start number.
- Updated the release build with the thumbnail, 3D Preview, and numberplate workflow refinements.

## v0.50.2
- Added source-skin thumbnail import for new local liveries so the initial `livery_thumbnail.png` is generated from the original AC EVO livery preview instead of the generic placeholder when available.
- Kept the existing My Liveries preview edit workflow intact: custom preview images still update LiveryProjects and LocalSkins first, while game thumbnail `.texture/.texturemips` writes remain deferred until Activate in Game.
- Updated the release build with the local source-thumbnail default for Livery Creator.

## v0.50.1
- Added filename-only status lines to the Texture Converter path fields so the active source and target files stay visible when full paths are clipped.
- Fixed Texture Converter path derivation so `.texture`, `.texturemips`, PNG and DDS targets update together when a new source texture is selected.
- Updated the release build with the Texture Converter path visibility and auto-update fixes.

## v0.50.0
- Simplified Livery Creator skin identity input to a single `Livery name` field with a live generated Skin ID preview and a dev-mode-only override.
- Fixed Activate in Game for skins with edited `LiveryProjects` textures by treating the `LiveryProjects` to `LocalSkins` texture sync as a local app write before the guarded game-folder sync.
- Clarified that My Liveries Skin IDs remain unique per car via the internal `car_model:skin_id` key.
- Updated the release build with the Livery Creator identity workflow and LocalSkins activation fix.

## v0.49.0
- Added 3D Livery Preview body base color support for EVO Approx materials, including color picking, derived defaults from `EXT_SKIN_C`/`EXT_Skin_D`, and per-project saving.
- Fixed local skin editing so preview image and metadata changes stay in `LiveryLibrary/LocalSkins` until the user explicitly activates the skin in game.
- Improved Activate in Game by syncing current `LiveryProjects` texture PNGs into LocalSkins before game sync, so existing project work is reflected in AC EVO.
- Added async loading states to confirmation/status modals, including blocked close controls during livery creation and spinner feedback for long-running conversion, export, and game-write actions.
- Clarified the Livery Creator workflow when an existing `LiveryProjects` workspace is reused, while preserving project files.
- Made `LiveryProjects/<car>/<skin>/livery_thumbnail.png` the source of truth for skin previews, with placeholder creation, LocalSkins sync, and generated AC EVO thumbnail `.texture/.texturemips` output on activation.
- Updated release build syncing to preserve runtime user folders such as `LiveryLab_Trash`.

## v0.48.0
- Refined the Numberplate Studio workflow with template thumbnails, placeholder previews, pending PNG selections, clearer per-field validation/status, and save-time local asset creation.
- Improved Numberplate Studio package export/import with the `LiveryPackageExport/Numberplates` default folder, exported template previews, import preview restore, and success modals with Open Folder access.
- Added safer Numberplate Studio deletion with template usage checks, affected-skin warnings, and retained shared background/font assets.
- Improved skin numberplate editing with clearer saved-state feedback and success modals that explain when Update in Game is required.
- Added setup support for disabling or renaming `content.kspkg`, plus Livery Creator browser guidance and content/cars workflow highlighting.
- Updated the release build with the Numberplate Studio, package workflow, setup, and skin numberplate refinements.

## v0.47.0
- Extended the Texture Converter with PNG-to-.texturemips import support, clearer PNG/DDS source grouping, separated output actions, and Open Folder access from successful export modals.
- Refined the main shell and file browser with Setup navigation, removed redundant overview pages, responsive browser/log sizing, dev-mode-only quick selection, and livery-workflow info/lock indicators.
- Simplified Livery Creator by hiding technical options, removing preview image selection at creation time, moving overwrite into the skin ID conflict confirmation, and cleaning up the progress steps.
- Added hidden Windows CLI execution for texconv through a new `liverylab_core.process` helper to avoid flashing console windows during conversions.
- Updated the release build with the current Texture Converter, browser, Livery Creator, and CLI-process refinements.

## v0.46.0
- Added direct 3D Preview numberplate selection with hover feedback so plates can be edited from the model without using the placement selector.
- Kept other mapped numberplates visible while editing one plate and added direct switching between plates with unsaved-change confirmation.
- Added numberplate edit workflow safeguards, including deselect, discard/save choice handling, clearer saved-vs-applied status, and a last-change undo stack.
- Simplified the Numberplate Placement Editor panel with selected-plate status, dedicated Move/Rotate/Scale tool buttons, clearer action ordering, and hidden technical calibration fields outside dev mode.
- Updated the release build with the improved numberplate placement workflow and UI refinements.

## v0.45.0
- Added the project `AGENTS.md` and release audit documentation to version control for future project workflow and safety reviews.
- Extended 3D Preview numberplate placement export from door-only handling to include 992 Cup hood placement writes.
- Added hood placement export calibration support for position, scale, and rotation experiments while preserving EVO actor field safety by not creating missing rotation fields.
- Marked actor nudge placement edits as game-sync-required so changed local skins show the update-needed state in My Liveries.
- Improved 3D Preview numberplate rendering so saved custom hood tuner values are mapped consistently between the startup mapped preview and the single-placement editor.
- Updated the release build with the hood placement workflow changes. Hood rotation axis calibration remains open after testing showed the expected in-game rotation did not yet respond.

## v0.44.0
- Simplified My Liveries cards and skin detail badges around active/inactive and update-needed states while keeping the skin ID visible.
- Added a clearer Settings gear icon in the main navigation.
- Changed the Home car analysis status to a green `Analyzed` badge once cached analysis data is available.
- Clarified the Program Files write warning with direct guidance to restart LiveryLab as administrator if writes fail.
- Removed the hashed LocalSkins storage level for new skins and added migration from legacy hash-based skin folders to `LocalSkins/<car>/<skin>`.
- Updated the release build with the latest Home, My Liveries, and LocalSkins storage refinements.

## v0.43.0
- Reworked the Home page into a clear four-step setup flow for Document Root, package extraction, car analysis, and storage health.
- Added persisted car compatibility analysis caching in `LiveryLibrary/Settings` with update-needed detection when the AC EVO car list changes.
- Added Home step statuses, larger step numbers, always-visible car analysis legend, and aligned the output log to the bottom of the app workspace.
- Matched Home setup action buttons with primary icon styling, including refresh icons for cached car re-analysis.
- Updated package extraction status to detect an already extracted AC EVO package when the selected root contains a `content` folder.
- Refined Numberplate Studio with dirty-save pulsing, a full-width Publish to Game action, and simultaneous left door, right door, and hood previews.
- Updated the release build with the Home setup workflow and Numberplate Studio refinements.

## v0.42.0
- Simplified Numberplate Studio template creation so choosing PNGs automatically creates the required local assets with hidden AC EVO technical bases.
- Added AC EVO font selection as a baked number font source for LiveryLab templates while keeping local font PNG support.
- Moved manual AC EVO basis selection for Numberplate Studio assets into dev-mode-only advanced options.
- Widened the Numberplate Studio template list and refreshed the release build.

## v0.41.0
- Added the local Numberplate Studio asset workflow with local-only template saving, per-surface PNG/font imports, and explicit publish-to-game handling.
- Added My Liveries numberplate type selection that separates native AC EVO numberplates from baked LiveryLab templates.
- Kept AC EVO numberplate editing game-native by showing only original game fonts/backgrounds and removing custom template color/alpha controls from that mode.
- Restored visible game font alpha when switching a skin from a baked LiveryLab template back to an AC EVO numberplate.
- Fixed custom baked numberplate publishing so local base templates, baked font layers, 3D Preview display, and Activate in Game use the correct resources.
- Repaired stale actor numberplate resource references during publish/activation so old missing custom plate paths no longer crash AC EVO when selecting a skin.
- Bundled the current N24H 2026 local Numberplate Studio template assets, scene settings, and updated release build.

## v0.40.0
- Added Numberplate Studio template package export and import using portable folder packages with manifests, template data, custom backgrounds, and custom fonts.
- Added package inspection and import confirmation for Numberplate Studio packages, with same-id imports safely renamed by default.
- Hardened Numberplate Studio package paths against `..`, absolute Windows paths, and absolute slash/UNC-style paths.
- Removed machine-specific absolute paths from exported skin package manifests, release build metadata, published Numberplate Studio font metadata, baked numberplate metadata, and stored 3D Preview project/cache metadata.
- Hardened skin package import paths against traversal and absolute-path entries.
- Updated the release build with the Numberplate Studio package workflow and portable-path fixes.

## v0.39.0
- Added per-scene 3D Preview settings for Light and Dark scenes with live editing and local JSON persistence.
- Added dev-mode-only Scene Settings access so normal users only see the Light Scene and Dark Scene choices.
- Added EVO Approx material look controls for paint, carbon, matte surfaces, glass, lights, rims, and tyres.
- Fixed EVO Approx material toggling so stale async material updates cannot leave the approximation view active after disabling it.
- Improved EVO Approx livery color handling with neutral paint controls and Three.js output color-space conversion.
- Bundled tuned Light/Dark scene defaults and updated wheel calibration data for shipped preview placement.
- Updated the release build with the Scene Settings and EVO Approx tuning workflow.

## v0.38.0
- Changed app modals to slide in from the top edge instead of opening centered, and removed the red modal top border.
- Added My Liveries game-sync tracking so active skins show an `Update in Game` prompt after local numberplate or placement changes.
- Added pulsing `Update in Game` action states and detail notices for skins whose local files are newer than the active in-game copy.
- Rebaked affected local skins automatically when Numberplate Studio templates are saved and marked those skins for in-game update.
- Fixed 3D Preview mapped numberplates to prefer local baked numberplate surfaces before the skin has been synced back into the game.
- Hardened Numberplate Studio template baking so missing fonts or failed text rendering no longer overwrite plates with background-only output.
- Added the project `AGENTS.md` instructions to version control and updated the release build with the modal and game-sync workflow changes.

## v0.37.0
- Added baked skin-specific numberplate texture preparation for Edit Skin template/start-number updates and reused those prepared PNGs in 3D Preview without preview-time generation.
- Added preview wheel/rim cache warming during skin creation so first 3D Preview opens with prepared auxiliary model and tyre texture assets when possible.
- Fixed new skin banner preview fallback to copy the source skin banner or car-level `ext_banner_c` texture instead of showing the placeholder.
- Cleaned up the Create Skin workflow by removing the legacy independent numberplate option from the normal UI.
- Refined the 3D Preview Numberplate Placement panel with clearer labels, a restored preview placement save action, and advanced restore controls.
- Reworked the My Liveries Edit Skin detail view with top-level action buttons, hidden technical details, clearer numberplate editing, and polished button/layout styling.
- Updated the release build with the preview cache, banner fallback, numberplate placement, and My Liveries UI refinements.

## v0.36.0
- Added skin-specific baked Numberplate Studio output so custom templates render the final number directly into local livery textures.
- Added Edit Skin start number storage for baked templates and reused the prepared PNGs in 3D Preview without preview-time numberplate conversion.
- Updated Activate in Game sync so baked numberplate `.texture` and `.texturemips` files are published only when the skin is activated.
- Cleaned up the 3D Preview Numberplate panel with default mapped plate visibility, a right-side full-height placement panel, and removed legacy text/font controls.
- Renamed generated baked numberplate textures after their template id to avoid source-background filename confusion.
- Updated the release build with the baked numberplate workflow and 3D Preview panel refinements.

## v0.35.0
- Added the end-user Numberplate Studio template workflow with separate hood, left door, and right door backgrounds plus a shared font setup.
- Added template-based numberplate selection when creating and editing My Liveries skins, including hood-aware application for cars without a hood numberplate.
- Added template text color, alpha, text positioning, scale, and spacing storage for 3D Preview numberplate rendering.
- Preserved selected numberplate template metadata when My Liveries refreshes actor/visual inspection data.
- Fixed newly created skins so the created livery opens selected in My Liveries with its chosen numberplate template visible.
- Fixed LiveryLab-owned numberplate placements so cloned door/hood actor placements use available car calibration baselines instead of inheriting offset positions from the source skin.
- Updated the release build with the Numberplate Studio template workflow and calibrated custom numberplate placement fixes.

## v0.34.0
- Enabled the 3D Preview Numberplate gizmo controls in the normal app mode.
- Moved `Tune Selected` into the regular Numberplate Placement panel while keeping diagnostics, roundtrip inspection, calibration copy, and actor nudge tools in dev mode.
- Updated the release build with the normal-mode numberplate placement tuning workflow.

## v0.33.0
- Added separate DDS and PNG export targets/actions to the Texture Converter so PNG preview exports no longer leave a permanent DDS sidecar.
- Added cleanup for empty temporary preview import folders after PNG texture conversion.
- Added configurable 3D Preview scene presets with Light and Dark scene buttons in the `Scene` menu.
- Added JSON-driven 3D scene settings for background, floor, lighting, contact shadow, and local floor light tuning.
- Removed the 3D Preview grid floor and added a larger local floor light/contact shadow setup for cleaner studio-style previews.
- Updated the release build with the texture export and 3D Preview scene refinements.

## v0.32.0
- Added car-wide AO texture support for the 3D Livery Preview using `ext_skin_ao.png` alongside the live skin texture.
- Added a `Use AO texture` toggle and `Generate Car AO Texture` action in the 3D Preview `Textures` menu.
- Added PNG-only AO generation from AC EVO car texture files into `LiveryLibrary/Converted/Textures/<car_id>/ext_skin_ao.png` for reuse across skins.
- Added automatic AO lookup when opening the 3D Preview if a matching car AO PNG already exists in the local library.
- Updated the release build with the AO preview workflow and cache-busted 3D viewer assets.

## v0.31.0
- Added hood-aware My Liveries numberplate selection with `Same for all` and `Separated for all` modes that only expose hood controls when the car actor has a hood surface.
- Added custom numberplate management for local backgrounds and fonts, including PNG previews, replaceable source PNGs, game activation toggles, and safe fallback handling for assets used by active skins.
- Added square PNG validation and 512x512 normalization for custom numberplate backgrounds before `.texture/.texturemips` generation.
- Added safer delete/deactivation warnings that list skins using a custom background or font.
- Documented smoke-test findings for synthetic hood triplets and hidden door placement activation on cars that ship without visible stock numberplates.
- Updated the release build with the modular Numberplates workflow and hood/surface UI refinements.

## v0.30.0
- Added the end-user Numberplates library for managing custom numberplate backgrounds and fonts separately from AC EVO built-in assets.
- Added local custom background/font creation from PNG files under `LiveryLibrary/Numberplates`, with activation into AC EVO only through explicit `Activate in Game`.
- Added custom font activation with textured digit atlas support, color-aware 3D Preview rendering, and safe deactivation fallback to the saved AC EVO base font.
- Added custom background activation with square PNG validation, automatic 512x512 normalization, and matching `.texture/.texturemips` generation.
- Added custom asset previews, usage-aware deactivation warnings listing affected My Liveries skins, and `Replace PNG` with optional refresh for active assets.
- Fixed custom numberplate deactivation so active LiveryLab-managed skins are switched back to their base assets before game files are removed.
- Fixed custom background activation path handling after descriptor/mip preparation and updated the release build with the modular Numberplates workflow.

## v0.29.1
- Added a 3D Preview Numberplate dropdown with a panel shortcut and a toggle for registered mapped numberplates.
- Fixed open 3D Preview refreshes after My Liveries numberplate changes so visible overlays update without reopening the preview.
- Documented the actor numberplate RGBA tint field used for textured numberplate font color.
- Updated the release build with the numberplate preview UI refinement.

## v0.29.0
- Added textured numberplate font rendering in the 3D Preview using AC EVO digit atlases.
- Added per-numberplate text layer controls for X/Y offset, proportional scale, and digit spacing.
- Added reusable text layer defaults in `numberplate_calibrations.json` with local preview overrides.
- Added actor-based numberplate text color rendering from the numberplate overlay RGBA field.
- Added My Liveries numberplate color editing with an RGB color picker and manual alpha input.
- Fixed local-only numberplate variant creation so dev-mode skins receive their selected font/background variant.
- Updated cache busting and the release build with the complete numberplate font/color preview workflow.

## v0.28.0
- Added automatic local owned numberplate placement variants when applying placement changes to source-based skins.
- Added source calibration keys so cloned numberplate placements keep their original Porsche preview calibration after editing and reopening.
- Fixed Apply Placement persistence so same-plate and split left/right numberplate workflows publish skin-specific actor changes correctly.
- Calibrated Porsche 992 GT3 Cup door numberplate export factors for left and right door placement tests.
- Verified same-plate, split-plate, reset selected, preview reopen, and Activate in Game workflows for Porsche numberplate placement.
- Updated the release build with the stabilized numberplate placement workflow.

## v0.27.0
- Added source-skin metadata for newly created local liveries so numberplate resets can restore the original AC EVO skin placements.
- Moved the My Liveries registry into `LiveryLibrary` and kept app settings separate in the user settings file.
- Added local-first numberplate actor and visual writes so placement edits stay skin-specific until Activate in Game.
- Added source-based restore actions for selected and all numberplate placements, including cleanup of matching preview overlays.
- Added publishing of local numberplate variants into the game actor during Activate in Game while only touching LiveryLab-owned placements.
- Fixed Porsche 992 GT3 Cup left/right door mapping and calibrated original door placements with baseline fallback for split numberplates.
- Cleaned up the 3D Preview numberplate controls so normal actions stay visible and calibration/debug tools stay behind debug mode.
- Updated the release build with the local placement, reset, calibration, and storage workflow.

## v0.26.0
- Added Numberplate 3D Preview tuning with gizmo-based move, rotate, and proportional scale controls.
- Added preview-to-actor roundtrip diagnostics for calibrated door numberplate placements.
- Added Porsche 992 GT3 Cup door numberplate preview calibrations, including actor baselines for safe local placement writes.
- Added Apply Placement to Skin so tuned door numberplate positions are written to local LiveryLab skin files before Activate in Game.
- Fixed split left/right numberplate preview loading so LiveryLab-owned split variants keep their selected door placements.
- Fixed per-placement numberplate PNG caching so left and right doors do not reuse the wrong generated preview image.
- Improved Apply Placement feedback and error reporting so failed writes are visible in the UI.
- Updated the release build with the numberplate preview tuning and local placement workflow.

## v0.25.0
- Added split left/right numberplate variants for My Liveries so door backgrounds can differ per side.
- Added My Liveries UI controls for same-side vs separate left/right numberplate modes.
- Added backend inspection for split numberplate state, including left/right backgrounds and selected actor indices.
- Fixed My Liveries reloads so active numberplate state is inspected from paired actor/visual files in the same root.
- Added split numberplate cleanup so Move Livery to Trash removes both owned actor definitions and placements safely.
- Ignored temporary gamefile POC test artifacts and updated the release build with the split numberplate workflow.

## v0.24.0
- Added local-first Material Viewer defaults for reports and referenced texture exports under `LiveryLibrary/Converted/Textures/<car_id>`.
- Added backend fallbacks so Material Viewer reports and texture exports stay in local converted storage when output fields are empty.
- Clarified Package Import wording so imported packages land in My Liveries as local inactive liveries and are not activated automatically.
- Clarified My Liveries storage labels to distinguish the local library source from the ACE game root.
- Unified game-write warning language for Activate in Game, Remove from Game, Package Extractor, and manual converter outputs inside the ACE root.
- Updated the release build with the local material-output workflow and clearer game-write UI copy.

## v0.23.0
- Added `LiveryLibrary/Converted` with tracked `Textures`, `Meshes`, and `UV` folders for converted app outputs.
- Added car-id based converted output paths so Texture Converter, Mesh Converter, and UV Inspect default to `LiveryLibrary/Converted/<type>/<car_id>`.
- Kept converted output contents ignored while preserving the release folder structure.
- Added Converted storage paths to Settings and Storage Health diagnostics.
- Updated converter output hints and game-write warning logic so LiveryLab app storage is not treated as an ACE game-folder write.
- Moved Car Livery Compatibility from About to Settings below the Package Extractor.
- Renamed visible UV Creator labels to UV Inspect and reordered the Livery sidebar tools.
- Updated the release build with the converted-output workflow and Settings UI changes.

## v0.22.0
- Renamed the finished package export folder to `LiveryPackageExport` and migrated legacy package export folders.
- Added `LiveryLibrary/LocalSkins` as the local My Liveries source of truth, with migration from the old `LiveryProjects/LocalSkins` location.
- Changed package import to import into the local library as inactive liveries instead of writing directly into ACE game folders.
- Improved protected-root handling so local skin creation works without admin rights while game activation still requires game-folder write access.
- Added clearer game-write permission messaging for Program Files and access-denied roots.
- Made 3D Preview texture import local-library-first and added automatic placeholder PNGs when fresh skins do not yet have preview textures.
- Made wheel preview cardesign resolution local-first and surfaced wheel calibration source/status in the 3D Preview.
- Added progressive 3D Preview loading/watcher status messages with a loading animation for model, wheel, texture, and watcher work.
- Updated the release build with the local-library, package-import, permission, preview, and wheel-preview fixes.

## v0.21.0
- Moved new skin creation to local LiveryLab storage so protected ACE roots are not written until explicit activation.
- Added Activate in Game synchronization from local My Liveries entries into the ACE game folder with write preflight checks and backups.
- Added Deactivate in Game, Remove from Game, and Move Livery to Trash as distinct My Liveries actions with clearer UI wording.
- Added cleanup for legacy local-path actor and mechanical references created during earlier activation tests.
- Added My Liveries storage diagnostics for local storage paths, game roots, active state, and sync output.
- Migrated additional My Liveries, numberplate, package install, and skin update write paths onto the GameFileWriter.
- Updated the release build with the local-livery and game-activation workflow.

## v0.20.3
- Added the first shared GameFileWriter module with structured write plans and write results.
- Migrated game texture `.texturemips` updates to the GameFileWriter.
- Migrated compatiblerim test patching and compatiblerim backup restore writes to the GameFileWriter.
- Updated the release build with the new writer-backed game-file write paths.

## v0.20.2
- Added UI preflight summaries before game-file write actions, including root status, planned writes, backup notes, and write checks.
- Guarded free output workflows when their target is inside the selected ACE root while keeping normal exports outside the game root unchanged.
- Removed rename and delete actions from the file browser.
- Moved game texture update temp files and custom rim quarantine data out of ACE game folders.
- Updated the release build with the new write-safety UI and storage behavior.

## v0.20.1
- Added root writeability checks on the Home and Settings screens.
- Added a shared game-file write guard for skin creation, skin updates, package installs, texture writes, numberplate actor edits, and rim tools.
- Improved permission failures for protected ACE roots so game-file writes stop early with a clear message instead of failing midway.
- Updated the release build with the new preflight and guard behavior.

## v0.20.0
- Added transform gizmos for visual wheel/rim calibration, unsaved-change feedback, and protected calibration saving.
- Added release/source mirroring for wheel calibration saves so maintainer calibrations survive rebuilds.
- Added a visible DEV TOOLS indicator and green debug accent theme when debug tools are enabled.
- Hid wheel diagnostics and placement override controls from the normal user view.

## v0.19.0
- Added car livery compatibility analysis with full, paint-only, and unsupported classifications.
- Added compatibility status indicators in the file browser and livery workflows.
- Added quick car analysis controls and a detailed About-page analysis report.

## v0.18.0
- Added wheel and tyre auxiliary models to the 3D Livery Preview.
- Added wheel placement overrides and calibrated wheel stand handling for tested cars.
- Added default wheel/tyre material preview with neutral rim shading and tyre sidewall textures.
- Added persistent cached PNG conversion for wheel/tyre `.texture` previews with 1024px downsampling.
- Added tyre texture detection for Pirelli GT/SRO and Michelin Cup tyres.
- Improved default 3D preview texture accuracy by rendering `EXT_SKIN_C` as a flat, non-tonemapped preview material.
- Improved 3D preview load stability by applying wheel materials after the exterior model render.

## v0.17.0
- Added 3D Preview material inspection sidebar with filtering and EXT_SKIN channel analysis.
- Added debug Material Overlay for EXT_Skin_D mask validation.
- Added Approx Materials mode with EXT_SKIN_C paint, carbon preview, and matte black mask handling.
- Added carbon preview texture asset for approximate material rendering.
- Improved material preview reload handling so active material modes survive texture reloads and watcher updates.
- Moved material mode controls into the Material Inspector sidebar.

## v0.16.0
- Added calibrated numberplate placement workflow.
- Added protected actor cleanup for deleted custom skins.
- Added numberplate calibration data for Ferrari 488 Challenge Evo and Porsche 718 Cayman GT4.
- Added diagnostics and nudge tooling for numberplate placement validation.
- Added VERSION-based app versioning and sidebar version display.
