Privacy & Cookie Policy
This document outlines how Charlie-Lima Electronic Flight Bag ("Charlie-Lima", "we", "us") handles your data, ensures compliance with the General Data Protection Regulation (EU GDPR), ePrivacy Directive, and implements Google Consent Mode v2 for Google Tag Manager and advertising services.
Manage Your Cookie Settings
You can view, customize, or immediately revoke your consent at any time.
1. Data Controller Information
The data controller responsible for processing personal data on Charlie-Lima is:
2. Google Consent Mode v2 & Tag Manager Integration
Charlie-Lima strictly integrates Google Consent Mode v2 with Google Tag Manager (Container ID: GTM-WVT6H944).
Prior to user interaction with our Cookie Preferences banner, all four Google consent parameters are loaded in a default 'denied' state:
Controls cookies related to advertising. Only enabled if marketing consent is granted.
Controls analytics cookies (Google Analytics 4). Only enabled if analytics consent is granted.
Sets consent for sending user data to Google for advertising purposes (Google Ads / Conversions).
Sets consent for personalized advertising and audience remarketing.
When consent is denied, Google tags execute in cookieless mode, utilizing aggregate pings without persisting identifiers in your browser.
3. Detailed Cookie & Storage Catalog
Below is the full itemized catalog of cookies, local storage keys, and tracking technologies utilized within the Charlie-Lima application.
| Name / Key | Category | Provider | Purpose | Duration | Storage Type |
|---|---|---|---|---|---|
| sb-*-auth-token | Necessary | Supabase | Secure authentication tokens and session maintenance for pilot accounts. | Session / 1 year | Cookie / Storage |
| cl_last_aircraft | Necessary | Charlie-Lima | Stores the pilot's active aircraft model across sessions (e.g. B738, B744, A320) for routing. | 1 year | HTTP Cookie |
| cl_consent | Necessary | Charlie-Lima | First-party cookie indicating that user has submitted cookie preferences for SSR routing. | 1 year | HTTP Cookie |
| cf_clearance / __cf_bm | Security | Cloudflare | Anti-bot security verification for registration and bug report forms (Cloudflare Turnstile). | Session / 30 min | HTTP Cookie |
| cl_cookie_consent_v2 | Necessary | Charlie-Lima | Stores GDPR consent settings, granular choices, and immutable audit Consent UUID. | 1 year | LocalStorage |
| layout-storage | Functional | Charlie-Lima | Persists cockpit tab configurations, module placements, window splits, and custom workspace suites. | Persistent | LocalStorage |
| checklist-storage | Functional | Charlie-Lima | Persists active checklist progress, checked item states, active phase, and simplified SOP toggle. | Persistent | LocalStorage |
| cl-settings-storage | Functional | Charlie-Lima | Stores UI preferences (day/night mode, font sizes, custom hex accent colors, and audio volume levels). | Persistent | LocalStorage |
| tts-storage | Functional | Charlie-Lima | Stores synthetic virtual copilot voice model selection, speech rate, volume, and audio sink ID. | Persistent | LocalStorage |
| flight-data-storage | Functional | Charlie-Lima | Caches flight planning data, departure/arrival ICAO, runway headings, and SimBrief route fixes. | Persistent | LocalStorage |
| flight-session-storage | Functional | Charlie-Lima | Records active flight duration, start/end timestamps, and simulator flight time calculation. | Persistent | LocalStorage |
| cl-pdf-storage | Functional | Charlie-Lima | Caches SimBrief OFP operational flight plan PDF zoom levels, page position, and render settings. | Persistent | LocalStorage |
| charlie-lima-cabin-storage | Functional | Charlie-Lima | Maintains cabin announcement progression, boarding music sequence, and language filters. | Persistent | LocalStorage |
| cl_creator_draft_v4 | Functional | Charlie-Lima | Local autosave buffer in Checklist Creator to prevent accidental work loss before publishing. | Persistent | LocalStorage |
| cl_cockpit_device_id / cl_cockpit_device_name | Functional | Charlie-Lima | Unique cockpit device identifier to manage multi-screen sound routing and presence (PC vs mobile). | Persistent | LocalStorage |
| charlie_route_map_height / charlie_route_map_style | Functional | Charlie-Lima | Preserves interactive route map height and chosen map style (dark nav vs satellite). | Persistent | LocalStorage |
| guest_flight_hours / guest_completed_checklists | Functional | Charlie-Lima | Temporary flight time and completed checklist counter for guest pilots before registering. | Persistent | LocalStorage |
| _ga | Analytics | Google Analytics | Calculates visitor, session, and anonymized interaction data for simulation telemetry reports. | 2 years | HTTP Cookie |
| _ga_* (e.g. _ga_LE26QZ29ZF) | Analytics | Google Analytics 4 | Used by GA4 measurement stream to persist session state and correlate user interactions. | 2 years | HTTP Cookie |
4. Audit Trail & Proof of Consent (Article 7 GDPR)
In compliance with GDPR Article 7(1), the controller maintains an immutable audit log of consent transactions. When you grant, update, or revoke consent:
- A unique cryptographic UUID is generated and associated with your browser.
- Your exact decision timestamp and policy version (e.g.
v1.0) are registered in our secure database (consent_logs). - In compliance with data minimization, IP addresses are anonymized (truncating the final octet) prior to recording.
- You can provide your Consent ID from the banner footer to verify or review your recorded consent at any time.
5. Your Data Protection Rights
Under the EU General Data Protection Regulation, pilots and visitors possess the following rights:
Request a copy of personal information and profiles stored on our servers.
Request immediate permanent deletion of your account and related cockpit data ("Right to be Forgotten").
Withdraw cookie or analytics consent at any time with immediate effect.
Lodge a complaint with a competent European Data Protection Authority (e.g. Úrad na ochranu osobných údajov SR).
6. Contact & Inquiries
For inquiries regarding privacy, data protection, or exercising your GDPR rights, please contact: