Dieses Brandbook definiert, wie LX Virtual aussieht, klingt und auftritt. Es verbindet die edle, reduzierte Designsprache von SWISS mit dem alpinen Charme der Schweiz.
LX Virtual ist die virtuelle Airline für Freunde der Schweizer Luftfahrt — kostenlos, non-kommerziell, von der Community getragen. Wir bilden den Betrieb des präzisen, weltoffenen SWISS in der Flugsimulation nach.
Der Tail ist unser Markenzeichen — minimalistisch und einheitlich (tail_swiss.svg, PNG daneben): eine begradigte Livery auf sauberer Flossen-Silhouette, flache Farben auf den Design-Tokens, überall unbeschnitten und unbearbeitet einsetzen (Statement, Fleet, Kacheln). Das Zeichen selbst nie verändern.
Präzision.
Schweizer Genauigkeit — echte Flugpläne, echte Flottenzahlen, saubere Prozeduren. Was SWISS fliegt, fliegen wir.
Eleganz.
Reduziert, edel, ruhig. Viel Weißraum, ein präziser Rotton, keine laute Grafik. Weniger ist mehr.
Gastfreundschaft.
Vom Gelegenheitspiloten bis zum Vielflieger — jeder hat seinen Platz. Der Berg ruft für alle.
Wir schreiben wie eine Premium-Airline aus der Schweiz: ruhig, präzise, warm. Kurze, klare Sätze. Understatement statt Superlative. Ein Hauch alpiner Stolz, nie Angeberei. Auf Deutsch duzen wir, auf Englisch sind wir „you".
Zwei Register. Das oben gilt für Headlines auf den Grafiken und für Texte auf der Website. Social-Captions sind wärmer und offener — Emoji ja, Ausrufezeichen ja, offene Freude über die Flotte, Grüße und Dank an die Community. Eine Spur leiser als LH, aber nie distanziert. Verbindliche Referenz sind die captionExamples in design-tokens/lx.json — echte Captions, keine erfundenen.
Unser Logo verbindet das offizielle LX-Tail (Parallelogramm mit Schweizer Kreuz) mit der Wortmarke „LX VIRTUAL" in Versalien. Das LX-Tail ist die Marke — es ist der Absender auf Overlays, Serien und Wasserzeichen. Die SWR/EDW-Airline-Tails erzählen dagegen auf der Website, was wir fliegen.
Der Schutzraum entspricht der Breite des Tail-Zeichens (X) auf allen vier Seiten. Mindestbreite der Wortmarke: 130 px digital, 32 mm im Druck. Darunter nur das Tail-Bildzeichen verwenden.



Die Palette ist bewusst schmal und edel: ein präziser Rotton als einzige Leitfarbe, ein tiefer Alpen-Anthrazit für die dunkle Welt, viel Weiß dazwischen. Rot wird sparsam gesetzt — wie SWISS es tut.
1:1 aus dem echten SWISS-System übernommen (MAUI-Theme swiss.css auf swiss.com). Ohne diese Ebene wird Rot zum Lückenfüller: Alles, was auffallen soll, ohne Headline zu sein, landet sonst im Akzent.
SWISS ist scharfkantig: --maui-radii-default-radius: 0, und im gerenderten DOM stehen 228 von 247 gemessenen Elementen auf border-radius: 0. LX Virtual mildert das auf 2 px ab — SWISS' zweithäufigster Wert. Nie die 14 px aus dem LH-System: Die Rundung ist Lufthansa, nicht Schweiz.
Signatur der dunklen Welt: linear-gradient(172°, #323232 → #212121 → #121212) — kühles Alpengranit, von oben nach unten dunkler.
Rot bleibt unter ~10 % jeder Fläche — das ist die Schweizer Eleganz. Auf Rot steht immer Weiß (Kontrast 5,9:1), nie Anthrazit.
Wie die gesamte Lufthansa Group nutzt LX Virtual die Lufthansa-Schriften: Head für alles Laute, Text für alles Lesbare. Der elegante Ton entsteht durch großzügigen Light-Einsatz. Fallback: Segoe UI / Arial.
LX Virtual bildet den SWISS-Betrieb nach — mit echten Flugplänen, akkuraten SimBrief-Profilen und einer Community, die die Alpen liebt. Bold nur zur Betonung einzelner Begriffe.
| Ebene | Schnitt | Größe (Web) | Besonderheit |
|---|---|---|---|
| H1 / Hero | Head Light | 44–92 px | Letter-spacing −3 %, ein Wort in Bold erlaubt |
| H2 / Sektion | Head Bold | 30–44 px | Letter-spacing −2 % |
| Eyebrow | Head Bold | 13 px, +30 % LS | Versalien, rote 34-px-Linie davor |
| Body | Text Regular | 16–18 px | Zeilenhöhe 1,7, max. ~74 Zeichen |
| Caption/Meta | Text Regular | 12–14 px | Muted-Farben |
Fünf wiedererkennbare Elemente — konsequent eingesetzt statt jedes Mal neu erfunden.
Die rote Linie unterstreicht das wichtigste Wort oder markiert Kategorien. Stärke ~8 % der Versalhöhe, nie breiter als das Wort.
Rotes Label mit weißen Versalien für Inhaltstypen; das Schweizer Kreuz als kompaktes Absender-Zeichen (z. B. Avatar, Wasserzeichen-Ecke).
Das Swiss-Tail groß angeschnitten am Bildrand, 6–8 % Deckkraft — verleiht dunklen Flächen Tiefe. Nie über Flugzeug-Bemalungen oder Gesichtern.
Verlauf von rgba(18,18,18,0) zu rgba(18,18,18,.95) über dem unteren Bilddrittel — macht jeden Screenshot text-tauglich, ohne die Alpen zu verdecken.
Zwei überlagerte Berg-Silhouetten als Polygonzüge, Weiß mit 4–5 % Deckkraft — die stille Signatur der Marke auf dunklen Flächen (Brandbook-Cover, Overlay-Unterkante, Monats-Cover, Website-Footer). Immer am unteren Rand, Höhe 35–45 % der Fläche, unter den Texten, über Foto/Scrim. Spezifikation: Ebene 1 fill rgba(255,255,255,.05), Ebene 2 rgba(255,255,255,.04), Zackenhöhe unregelmäßig (keine Wiederholung), preserveAspectRatio="none" und width:100% — ein SVG ist ein ersetztes Element, left/right allein dehnen es nicht auf die volle Breite.
Unsere Bilder kommen aus dem Simulator — aber sie sollen aussehen wie von der Zuschauerterrasse in Kloten oder beim Sinkflug über die Alpen fotografiert.
Die Wortmarke zerfällt als Profilbild — bei 32 px ist „LX Virtual" ein unlesbarer Schmierstreifen. Es trägt stattdessen die Flosse: weiße Silhouette, negatives Kreuz, Swiss Red. Ein Bild für alle Kanäle: Discord, Instagram, Facebook, TikTok, YouTube, X.
| Plattform | Anzeige (⌀) | Form | Upload |
|---|---|---|---|
| Discord (Server-Icon & Profil) | 48–100 px | Kreis | 1000×1000 PNG |
| 320 px (Feed 32 px) | Kreis | 1000×1000 PNG | |
| Facebook (Seite) | 170 px | Kreis | 1000×1000 PNG |
| TikTok | 200 px | Kreis | 1000×1000 PNG |
| YouTube | 800 px | Kreis | 1000×1000 PNG |
| X / Twitter | 400 px (Timeline 48 px) | Kreis | 1000×1000 PNG |
Ein durchgehendes Bühnenbild — Anthrazit-Verlauf mit Flosse und Alpen-Polygonen — mit weißer Wortmarke, roter Akzentlinie und Tagline mittig. Ein Layout, in jedem Kanalformat ausgespielt.



| Format | Pixel | Sichere Zone | Einsatz |
|---|---|---|---|
| YouTube Channel Art | 2560×1440 | 1546×423 mittig | Kanal-Header — TV, Desktop und Mobil zeigen je mehr Rand, darum liegen Logo und Tagline in der Zone |
| Discord Server-Banner | 960×540 | vollflächig | Boost-Banner, Einladungs-Header |
| X / Header | 1500×500 | Ränder ~60 px, unten links Profilbild-Überlappung | Profil-Header |
Focus-Airport-Grafiken erzeugt der Event-Generator automatisch. Design „Horizon": Foto als Held, Alpine-Scrim, ICAO auf rotem Chip, Stadtname gefüllt Weiß, Tail-Wasserzeichen statt Logo.
| Variable | Beispiel | Regel |
|---|---|---|
| {CITY} | SION | Versalien, gefüllt Weiß. Auto-Fit: Breite ≤ Canvas − 2×Rand |
| {ICAO} | LSGS | 4 Zeichen, Versalien, zentriert auf dem Chip |
| {MONTH} {YEAR} | JULY 2026 | englisch, Versalien; auf dem Cover als Chip-Text |
| {PHOTO} | — | min. 2400 px, Motiv-Fokus mittig (übersteht 3:2- und 4:5-Crop) |
Export: PNG, sRGB. Canvas: Event-Banner 1800×1200 (3:2) und Instagram 1080×1350 (4:5). Foto Cover-Fit, Fokus zentriert.
| Ebene | 4:5 (1080×1350) | 3:2 (1800×1200) | Spezifikation |
|---|---|---|---|
| Scrim | volle Fläche | linear 180°: transparent bis 42 %, rgba(18,18,18,.55) @ 72 %, rgba(18,18,18,.95) @ 100 % | |
| LX-Tail-Wasserzeichen | unten rechts, angeschnitten | LX_Tail_solid.svg, Höhe 68 % der Bildhöhe, 7 % Deckkraft, je ~45 % aus dem Bild. Über Scrim, unter Texten. | |
| Rote Bar | x72 y72, 180×18 | x84 y84, 200×20 | #CC0000 |
| Eyebrow „FOCUS AIRPORT" | x72 y112 | x84 y128 | Head Bold 40/44 px, Versalien, LS +26 %, Weiß |
| {ICAO}-Chip | x72, Unterkante y1128 | x84, Unterkante y1000 | Head Bold 48 px Weiß auf #CC0000, Padding 10×22, Radius 6, Text zentriert |
| {MONTH} {YEAR} | rechts neben Chip, +24 px | dito | Head Bold 30 px, Weiß 75 %, LS +20 % |
| {CITY} | x64, Baseline y1268 | x76, Baseline y1116 | Head Bold max 170/200 px, gefüllt Weiß, Versalien, Auto-Fit |
| Ebene | Position (1080×1350) | Spezifikation |
|---|---|---|
| Hintergrund | volle Fläche | festes Markenmotiv cover-bg.jpg — das Weltkarten-Motiv der Gruppe als Swiss-Red-Duotone (aus dem LH-Cover abgeleitet) |
| Alpen-Polygone | unterste 40 % | 2 Ebenen, Weiß 5 %/4 % — über dem Hintergrund, unter den Texten |
| Balken + Eyebrow „LX VIRTUAL" | x72 y72 / y112 | rote Bar 180×18, Head Bold 40 px Versalien Weiß |
| „FOCUS" | x62, Oberkante y190, Versalhöhe 131 px | Head Bold, gefüllt Weiß — sitzt unter dem Eyebrow, keine Überlappung |
| „AIRPORTS" | Spalte x401–469, y372–1058 | Head Light, Weiß, aufrecht vertikal gestapelt, ≈ 86 px pro Buchstabe — beginnt immer unter „FOCUS", in jedem Format inklusive 1:1 |
| {MON}{YY}-Chip | rechte Kante x1053, Unterkante y1161 | Head Bold ~100 px Weiß auf #CC0000, Innenabstand 32 px, Radius 12 |
| LX-Tail (Marke) | x72, Unterkante y1278 | LX_Tail_solid.svg, Höhe 56 px — Absender unten links |
FOCUS_AIRPORT = {
"brand": "lxv", "design": "horizon",
"colors": { "accent": "#CC0000", "scrim_base": [14, 17, 22], "text": "#FFFFFF" },
"fonts": { "head": "LufthansaHead-Bold", "light": "LufthansaHead-Light" },
"canvas": { "feed": [1080, 1350], "banner": [1800, 1200] },
"layers": [
{ "id": "photo", "fit": "cover", "min_width": 2400, "focus": "center" },
{ "id": "scrim", "gradient": [[0.42, 0], [0.72, 0.55], [1.0, 0.95]] }, # transparent -> rgba(scrim_base, a)
{ "id": "peaks", "layers": [0.05, 0.04], "height_pct": 0.42, "anchor": "bottom", "full_width": true },
{ "id": "wm_tail", "asset": "LX_Tail_solid.svg", "height_pct": 0.68, "alpha": 0.07,
"x": "W - 0.55*w", "y": "H - 0.55*h" }, # komplette Flosse, Seitenverhaeltnis 1.056
{ "id": "bar", "feed": [72, 72, 180, 18], "banner": [84, 84, 200, 20], "fill": "accent" },
{ "id": "eyebrow", "text": "FOCUS AIRPORT", "feed": [72, 112], "banner": [84, 128],
"size": [40, 44], "tracking": 0.26, "fill": "#FFFFFF" },
{ "id": "chip", "text": "{ICAO}", "feed_bottom": [72, 1128], "banner_bottom": [84, 1000],
"size": 48, "pad": [10, 22], "radius": 6, "fill": "accent", "color": "#FFFFFF" },
{ "id": "month", "text": "{MONTH} {YEAR}", "pos": "right_of_chip+24", "size": 30,
"fill": "rgba(255,255,255,.75)", "tracking": 0.20 },
{ "id": "city", "text": "{CITY}", "feed_baseline": [64, 1268], "banner_baseline": [76, 1116],
"max_size": [170, 200], "fill": "#FFFFFF", "autofit": "width <= W - 2*margin" }
],
"export": { "format": "png", "colorspace": "sRGB" }
}
Discord ist nicht Instagram. Anhänge werden in der Timeline auf rund 550 px skaliert, und Hochformat wird im Raster beschnitten — vom 4:5-Cover blieb nur „AIRPORT" senkrecht stehen, und zehn Briefmarken tippt niemand einzeln an. Der Channel bekommt deshalb ein eigenes Format: eine Übersichtsgrafik im Querformat, 1600 × 1000.
| Wo | Der Discord-Channel der VA, gepostet vom VA-Bot — der Ziel-Channel steht einmalig in den Einstellungen des Event Studios. |
|---|---|
| Wann | Automatisch am Vorabend des Monats um 20:00, dazu der Knopf „③ Push → Discord" für den sofortigen, beliebig wiederholbaren Push (Test oder nach einer Änderung). |
| Aufbau | Kopfzeile mit Monat und den Landesflaggen in der Reihenfolge der Airports (feste 48 × 32-Box, alle gleich groß), Stadtfotos als Kacheln mit dem Category Tag, Radius 2 px für den ICAO, Alpen-Grat auf der Grundlinie als Absender-Zeichen, Website unten links. |
| Varianten | mosaic (Fotokacheln, Standard) · board (reine Liste) · split (Markenfläche plus Liste). Je Deployment umstellbar. |
Der Text ist für den Channel geschrieben, nicht aus Instagram kopiert: Überschrift, je Airport eine Zeile mit ICAO, Stadt und den Focus-Punkten sowie einer Begründung aus vier bis acht Wörtern. Diese Begründungen schreibt Mistral in einem Aufruf für den ganzen Monat — so unterscheiden sie sich voneinander, statt neunmal derselbe Satzbau zu sein; ICAO, Stadt, Punkte und Struktur bleiben in der Vorlage, das Modell kann also keine Fakten verbiegen. Ohne API-Key oder bei unbrauchbarer Antwort bleibt die schlichte Liste — der Beitrag geht immer raus. Keine Hashtags (im Channel wirkungslos), und der Link steht in spitzen Klammern, damit Discord keine zweite Vorschaukarte unter das Bild hängt.
vAMSYS ist die Plattform, auf der unser Betrieb läuft — Buchung, Dispatch, PIREPs, Ränge. Sie gehört uns nicht, wir richten sie nur ein. Dieses Kapitel hält fest, was sich dort einrichten lässt, mit welchen Mitteln, und wo die Plattform die Marke stoppt. Es ist das Gegenstück zu den Gestaltungskapiteln: dieselben Regeln, fremdes Markup.
Zwei Formulare in Orwell steuern alles: Settings → Design → Logo Settings (vier Logo-Slots plus Login-Hintergründe) und Style Settings (zwölf Farb-Paare plus ein eigenes Stylesheet). Ihre Reichweite ist begrenzt.
| Oberfläche | Farb-Paare | Eigenes CSS | Logos |
|---|---|---|---|
| Phoenix (Piloten) | ja | ja | ja |
| Orwell (Staff/HQ) | nein | nein | ja |
| Select-VA-Seite | teilweise | nein | ja |
| Pegasus ACARS | nein | nein | ja |
| Ausgehende E-Mails | nein | nein | ja |
| Hebel | Wo | Reichweite und Haltbarkeit |
|---|---|---|
| 1 · Die zwölf Farb-Paare | Style Settings, Formularfelder | Menü, Topbar, Body, Karten, Tabellenzeilen. Stabil — übersteht Plattform-Updates. |
| 2 · Die Variablen-Rampen | eigenes CSS, :root | Buttons, Badges, Links, Checkboxen, Ringe, Tabs, Panels, Icons — auf allen Seiten gleichzeitig. Ersetzt dutzende Einzel-Overrides. |
| 3 · Einzelne Selektoren | eigenes CSS | Der Rest: .dispatch-*, .map-loader-*, hart kodierte Farben in eigenen Bundles. Fragil — nach jedem Update nachprüfen. |
Von stabil nach fragil. Wer bei 3 anfängt, schreibt dutzende !important-Regeln für etwas, das eine Zeile in 2 erledigt hätte.
vAMSYS baut auf Filament auf, und Filament färbt alles über sechs CSS-Variablen-Rampen mit je elf Stufen, geschrieben als RGB-Tripel ohne rgb()-Wrapper — nur so funktionieren Tints wie rgba(var(--LXRed), .08). Filaments Konvention: 600 ist die Vollton-Fläche und die Textfarbe im Hellmodus, 700 der Hover, 400 Text und Ring im Dunkelmodus, 50/950 die Tint-Hintergründe.
| Rampe | Standard | LX Virtual | Begründung |
|---|---|---|---|
| --primary-* | Indigo #3E60D5 | 400 = #FF5C5C · 500 = #E60000 · 600 = #CC0000 · 700 = #990000 | Swiss Red führt. Weil Filament im Dunkelmodus von sich aus zur Stufe 400 greift, löst die korrekt gebaute Rampe das Kontrastproblem gleich mit. |
| --info-* | Cyan #16A7E9 | Graphit-Neutral, 400 = Mist #929292 | An --info hängen die großen Sekundär-CTAs (Booking Actions, SimBrief Actions). „Anthrazit trägt" — so werden sie ruhig, ohne Selektorenjagd. |
| --gray-* | blaustichig (900 = 29,31,45) | desaturiert bei nahezu gleicher Helligkeit, 700–950 auf Line dunkel / Anthrazit 1–3 | Der Blaustich war die Ursache des navy-blauen Schleiers auf Dispatch-Seiten, Tabellen und Inputs. |
| --success-* --warning-* --danger-* | Grün / Amber / Rot | unangetastet | Sie tragen Bedeutung quer durch Badges, PIREP-Status und Alerts. Markenreinheit darf Semantik nie überschreiben. |
Swiss Red #CC0000 auf Alpine Anthracite #212121 ergibt 2,74:1. WCAG AA verlangt 4,5:1. Betroffen waren die KPI-Zahlen auf Dashboard und Profil, Pilotenname und -ID, Textlinks und die aktiven Ladeschritte der Karte. Die Regel aus Kapitel 03 gilt in vAMSYS deshalb wortgleich: Auf dunklem Grund wird Rot als Text oder Icon im hellen Tint #FF5C5C gesetzt (5,2:1). Flächen bleiben Swiss Red — darauf steht weißer Text.
Tint auf Tint vermeiden. Farbiger Text auf einem Tint derselben Farbe trägt fast nie: Rot auf 12 % Rot ergab auf den Airport-Buttons der Buchungskarte 3,18:1.
Regel 1 — Fläche ODER Icon in der Markenfarbe, niemals beides.
Trägt der Hintergrund die Markenfarbe, ist das Icon weiß. Trägt das Icon sie, ist der Hintergrund transparent. Wer beides färbt, erzeugt einen einfarbigen Klotz: In v1.5.2 war das Drei-Punkte-Menü der Dispatch-Tabelle ein volles rotes Quadrat — die Punkte waren da, nur rot auf rot.
Regel 2 — custom nie hart färben.
In Filament ist custom kein Synonym für „primary", sondern der generische Platzhalter für jede Farbvariante; die echte Farbe kommt als Inline-Variable (--c-50 … --c-950) am Element an. Immer rgb(var(--c-600, var(--LXRed))) schreiben. Wer hart färbt, macht grüne „Accepted"-Badges rot — der Altfehler aus v1.1.0, behoben erst in v1.5.4.
| Klasse | Bedeutung | Färben? |
|---|---|---|
| .fi-btn | echter Button mit Fläche (Label, optional Icon) | ja — Fläche plus weißer Inhalt |
| .fi-icon-btn | reiner Icon-Button ohne Fläche, 36 × 36 px | nur color, nie background |
| .fi-color-primary | Farbvariante „primary" | nur zusammen mit :not(.fi-icon-btn) |
| .fi-color-custom | generischer Farbträger, echte Farbe steht in --c-* | nein — Variable lesen |
| .fi-ac-icon-btn-action | primäre Zeilenaktion in einer Tabelle (der Papierflieger) | ja — Markenfarbe, auf Dunkel der Dark-Tint |
| .fi-ac-icon-btn-group | Drei-Punkte-/Kebab-Trigger einer Aktionsgruppe | neutral (Anthrazit / Mist), Marke nur als 8-%-Hover-Tint |
| .dispatch-* · .map-loader-* · .step | eigene Bundles der Buchungsstrecke (Svelte, Dispatch-Bundle) | ja — aber einzeln; die Rampen greifen hier nicht |
Vier Slots, 1800 × 400 px PNG mit Transparenz (SVG wird abgelehnt). Slot 0/1 und 2/3 sind getrennte Uploads — wer nur Phoenix ändert, hat in E-Mails und Orwell weiterhin das alte Logo. Das ist hier der häufigste Fehler.
| Slot | Erscheint in | Variante |
|---|---|---|
| 0 | Phoenix (hell) | rote Wortmarke, Kreuz weiß gefüllt |
| 1 | Phoenix (dunkel) | weiße Wortmarke |
| 2 | Select-VA-Seite, Pegasus (hell), E-Mails, Orwell | rote Wortmarke, Kreuz weiß gefüllt |
| 3 | Select-VA-Seite, Pegasus (dunkel), Orwell (dunkel) | weiße Wortmarke |
| BG | Login-/Register-Hintergrund | 1706 × 1600 px, WebP; mehrere möglich, zufällige Auswahl |
Die Lufthansa-Familien bleiben im Font-Stack, die Fontdateien bleiben aus vAMSYS heraus. Das Rechtskapitel verbietet die Weitergabe, und ein Upload auf ein CDN ist eine Weitergabe. Wer die Schriften lokal hat, sieht sie; alle anderen den Fallback — genau dafür ist der Stack da. Kein @font-face im vAMSYS-Stylesheet.
:root {
--lx-font-head: "LHV Head", "Lufthansa Head", "Segoe UI", Arial, sans-serif;
--lx-font-text: "LHV Text", "Lufthansa Text", "Segoe UI", Arial, sans-serif;
}
Die Bergsilhouette aus Kapitel 05 gibt es auch in vAMSYS — als zwei geschichtete Polygonzüge in einer inline-SVG-Data-URL in einem ::after, ganz ohne Bild-Upload. Genau drei Stellen, alle in Phoenix verifiziert.
| Anker | Wo | Höhe | Deckkraft |
|---|---|---|---|
| .map-loader-modal::after | Karten-Ladekarte („Getting the Map Ready") | 92 px | dunkel 5,5 / 3,5 % · hell 7 / 6 % |
| .fi-ta-empty-state::after | leere Tabellen-Zustände | 60 % | wie oben |
| .page-content:has(.swiper)::after | Phoenix-Startseite | 22vh, position: fixed | dunkel 5,5 / 3,5 % · hell 4,5 / 3,5 % |
Drei Details, die Zeit gekostet haben: Die Startseite hat keine eigene Body-Klasse — :has(.swiper) trifft sie über das Event-Karussell, das nur dort vorkommt. z-index: -1, nicht 0, sonst legt sich das Motiv über die Tabellen; innerhalb einer Karte z-index: 0 plus .anker > * { position: relative; z-index: 1 }. Und im Hellmodus ist der Berg entsättigt — ein roter Berg wirkt dort als rosa Schleier. pointer-events: none ist Pflicht.
Ein CSS-File je VA; ein neuer Upload ersetzt das alte. Die Datei liegt unter https://cdn.vamsys.xyz/stylesheets/<ULID>.css, und der ULID wechselt bei jedem Speichern. Die alte Datei bleibt erreichbar — das, und nur das, ist der Weg zurück. Einen Undo-Knopf gibt es nicht: Ein Revert ist immer ein erneuter Upload.
LX Virtual, vAMSYS-Identifier SWR2594. Stylesheet v1.5.4, ULID 01KYMNN5CYMAFCJJZGDQ2CK78D (live seit 28.07.2026). Lokale Kopien und die vollständige technische Aufzeichnung — Befunde, Ursachen, Fixes, der wiederverwendbare markenunabhängige Leitfaden — liegen neben dem Stylesheet im LX-Arbeitsordner.
LX Virtual ist ein non-kommerzielles Fan- und Community-Projekt und steht in keiner Verbindung zu realen Fluggesellschaften oder Airline-Gruppen; es wird von diesen weder unterstützt noch autorisiert.
© 2026 LX-Virtual.com · Brandbook v1.4 · Fragen an das PR-Team im Discord.
Ein Overlay. Jede Plattform.
Das einheitliche Lower-Third-System für Screenshots auf Instagram, Facebook und in Reels: Scrim, rote Linie, Kategorie, Headline, Tail-Zeichen. Es skaliert über alle Formate und bleibt in den Safe Zones.
den Alpen
Tuesday
Aufbau des Lower Third (von unten nach oben)
Safe Zones (Stand 2026)