Sieben Motive statt einem -- und Bilder, die nicht mehr hochgerechnet werden
Filipe: "die grafik soll viieeeel besser aussehen bitte. die hintergrund
bilder sollen viel hochwertiger und spezieller aussehen."
DIE URSACHE WAR NICHT DIE BILDGUETE, SONDERN DIE GROESSE.
Sein Bildschirm ist 2550 px breit, das groesste ausgelieferte Bild war
1600 -- der Browser rechnet es also um das 1,6-fache hoch. Jede Kante
wird dabei weich, gleichmaessig ueber das ganze Bild. Genau das sieht
man als "billig", ohne benennen zu koennen, warum. Eine hoehere
WebP-Guete haette daran nichts geaendert: Man kann keine Bildpunkte
zurueckholen, die nie ausgeliefert wurden.
Anmeldeseite: jetzt 960 / 1280 / 1600 / 1920 / 2560, Guete 0,88.
Buehnen: jetzt 2400 (uhd) / 1600 (breit) / 900 (schmal).
Ueber srcset bzw. eine Fenstergroesse laedt trotzdem jeder nur die
Stufe, die er braucht -- ein Handy weiterhin 32 KB.
UND NEUN BUEHNEN ZEIGTEN DASSELBE BILD.
In start.css standen neun Regeln, eine je Szene -- alle zeigten auf
dieselbe Datei. Die Zuordnung war seit dem 01.09. richtig gedacht und
seit dem 03.09. wirkungslos. Aufgefallen ist es niemandem, weil jede
Seite fuer sich stimmig aussah; man merkt es erst, wenn man zwei
nebeneinander haelt. Jetzt hat jede Gruppe ihr eigenes Motiv, und die
Zuordnung folgt dem, was auf der Seite passiert:
studio Startseite Chili-Wasserfall, "More Than Media"
showbuehne Dashboard, Reports Spiegelkabinett -- viele auf einmal
portal LIVE, Content Splash mit IDEAS / BRAND / CONTENT
garage Aufgaben, Technik Kohle und Glut, Werkstatt
arena Dateien, Wissen Medaillon-Sammlung, ein Archiv
halle Profile, Schutz dieselbe Sammlung -- Personen, nicht
Betrieb
wald Start-Check, Scout roter Ahorn, etwas das waechst
skyline Kalender Podest unter dem Mond
lounge Calls, Chat dieselbe Nachtbuehne, ruhig
Sieben Motive auf neun Plaetze; die zwei Paare sind inhaltlich
benachbart und liegen nie nebeneinander auf einer Seite.
ABDUNKLUNG 0,42 -- gemessen, nicht uebernommen. Beim Tresorbild hatte
ich 0,62 aus den alten Szenen uebernommen, und uebrig blieb ein Schemen.
pruef-buehne rechnet den Kontrast an echten Bildpunkten nach: 4,69 bis
7,14 gegen die noetigen 4,5, an bis zu 28 Stellen je Seite.
Die Groessenpruefung in pruef-struktur bekommt eine begruendete Ausnahme
fuer GESTUFTE Bilder: Bei einer Datei, von der der Browser immer nur
eine von drei Stufen holt, misst eine feste 200-KB-Grenze das Falsche.
Sie gilt unveraendert fuer alles andere -- und die Ausnahme prueft
zusaetzlich, dass die kleineren Stufen wirklich existieren, damit sie
niemand als Schlupfloch benutzt.
Co-Authored-By: Claude Opus 5 <[email protected]>
|
After Width: | Height: | Size: 2.4 MiB |
|
After Width: | Height: | Size: 2.4 MiB |
|
After Width: | Height: | Size: 2.3 MiB |
|
After Width: | Height: | Size: 2.2 MiB |
|
After Width: | Height: | Size: 2.2 MiB |
|
After Width: | Height: | Size: 2.1 MiB |
|
After Width: | Height: | Size: 2.3 MiB |
@@ -247,6 +247,35 @@ for (const unter of ["assets/js", "assets/css", "assets/img"]) {
|
||||
const p = join(ordner, n);
|
||||
if (statSync(p).isDirectory()) continue;
|
||||
const kb = Math.round(statSync(p).size / 1024);
|
||||
/* GESTUFTE BILDER DUERFEN GROESSER SEIN -- aber nur die (07.09.2026).
|
||||
|
||||
Die Grenze von 200 KB soll verhindern, dass eine Seite unnoetig
|
||||
viel laedt. Bei einem Bild, das in mehreren Groessen vorliegt und
|
||||
von dem der Browser IMMER NUR EINE holt, misst sie das Falsche:
|
||||
Die 2400-px-Fassung einer Buehne wiegt 210 KB, wird aber nur auf
|
||||
einem Schirm angefordert, der sie auch braucht -- ein Handy laedt
|
||||
weiterhin 60 KB derselben Szene.
|
||||
|
||||
Ohne diese Ausnahme haette ich die Wahl zwischen einer Pruefung,
|
||||
die bei jedem Lauf grundlos rot ist, und weichen Bildern auf
|
||||
grossen Schirmen. Beides waere falsch. Die Grenze fuer alles
|
||||
andere bleibt, wo sie war -- gerade weil sie fuer Skripte und
|
||||
Stile weiterhin gilt.
|
||||
|
||||
ERKANNT AM NAMEN, nicht am Ordner: `-uhd` und `gate-2560` sagen
|
||||
ausdruecklich "das ist die grosse Stufe". Wer eine Datei so nennt,
|
||||
ohne dass es Stufen gibt, umgeht die Grenze -- deshalb prueft die
|
||||
Zeile darunter, dass es die kleineren Stufen auch wirklich gibt. */
|
||||
const gestuft = /-uhd\.webp$|^gate-(1920|2560)\.webp$|^gate-hoch-900\.webp$/.test(n);
|
||||
if (gestuft) {
|
||||
const kleiner = n.replace("-uhd.webp", "-breit.webp")
|
||||
.replace(/^gate-(1920|2560)\.webp$/, "gate-1280.webp")
|
||||
.replace("gate-hoch-900.webp", "gate-hoch-440.webp");
|
||||
if (!existsSync(join(ordner, kleiner))) {
|
||||
schwer.push(`${unter}/${n} ${kb} KB (als Stufe ausgewiesen, aber ${kleiner} fehlt)`);
|
||||
}
|
||||
continue;
|
||||
}
|
||||
if (kb > 200) schwer.push(`${unter}/${n} ${kb} KB`);
|
||||
}
|
||||
}
|
||||
|
||||
@@ -233,16 +233,37 @@ async function bauen({ quelle, ziel, breite, ausschnitt = null, dunkel = 0, guet
|
||||
}
|
||||
|
||||
const GATE = join(QUELLE, "gate-spicy-dogfather.jpeg");
|
||||
const TRESOR = join(QUELLE, "szene-tresor.png");
|
||||
|
||||
/* =====================================================================
|
||||
1. DIE ANMELDESEITE
|
||||
|
||||
BIS 2560 PIXEL, nicht bis 1600 (07.09.2026).
|
||||
|
||||
Filipe: "die grafik soll viieeeel besser aussehen bitte. die
|
||||
hintergrund bilder sollen viel hochwertiger und spezieller aussehen."
|
||||
|
||||
Die Ursache war nicht die Bildqualitaet, sondern die GROESSE. Sein
|
||||
Bildschirm ist 2550 px breit, das groesste Bild war 1600 -- der
|
||||
Browser rechnet es also um das 1,6-fache hoch. Jede Kante wird dabei
|
||||
weich, und zwar gleichmaessig ueber das ganze Bild. Genau das sieht
|
||||
man als "billig", ohne benennen zu koennen, warum.
|
||||
|
||||
Eine hoehere WebP-Guete haette daran nichts geaendert: Man kann keine
|
||||
Bildpunkte zurueckholen, die nie ausgeliefert wurden.
|
||||
|
||||
Fuenf Stufen statt drei, und die Guete von 0,84 auf 0,88 -- die
|
||||
Anmeldeseite ist EIN Bild, das jeder als Erstes sieht. Der Browser
|
||||
nimmt ueber `srcset` ohnehin nur die Stufe, die er braucht; ein Handy
|
||||
laedt weiterhin 68 KB.
|
||||
===================================================================== */
|
||||
console.log("\n--- Anmeldeseite ---");
|
||||
for (const b of [960, 1280, 1600]) {
|
||||
for (const b of [960, 1280, 1600, 1920, 2560]) {
|
||||
const n = await bauen({
|
||||
quelle: GATE, ziel: join(ZIEL_BUEHNE, `gate-${b}.webp`), breite: b,
|
||||
/* Nur ein Hauch. Der Neonrahmen der Tafel ist das, was die Karte
|
||||
traegt -- wer ihn wegdunkelt, hat ein huebsches Bild und eine
|
||||
Karte, die im Nichts schwebt. */
|
||||
dunkel: 0.14, guete: 0.84,
|
||||
dunkel: 0.14, guete: 0.88,
|
||||
});
|
||||
console.log(` gate-${b}.webp ${Math.round(n / 1024)} KB`);
|
||||
}
|
||||
@@ -252,47 +273,117 @@ for (const b of [960, 1280, 1600]) {
|
||||
* Erster Anlauf war falsch, und das Bildschirmfoto hat es sofort
|
||||
* gezeigt: Ich hatte den Bereich um die Tafel genommen -- die ist aber
|
||||
* LEER, und auf dem Handy liegt die Anmeldekarte ohnehin davor. Uebrig
|
||||
* blieb ein schwarzes Rechteck mit ein paar Saeulen. Kein Logo, kein
|
||||
* DogFather, nichts, woran man die Seite erkennt.
|
||||
* blieb ein schwarzes Rechteck mit ein paar Saeulen.
|
||||
*
|
||||
* Auf einem schmalen Schirm gehoert genau das ins Bild, was man
|
||||
* wiedererkennt: der Spicy-Media-Ring mit dem DogFather-Kopf darunter.
|
||||
* Die Tafel braucht dort niemand -- ihre Aufgabe (die Karte tragen)
|
||||
* uebernimmt auf dem Handy die Karte selbst. */
|
||||
for (const b of [440, 580]) {
|
||||
* Der senkrechte Schnitt ist nachgerechnet, nicht probiert: 557 px
|
||||
* Bildhoehe geteilt durch 764 Quellpixel ergibt 0,729 -- die sichtbaren
|
||||
* 157 px sind damit 215 Quellpixel, also genau der Bereich um den
|
||||
* Schriftzug SPICY MEDIA. */
|
||||
for (const b of [440, 580, 900]) {
|
||||
const n = await bauen({
|
||||
quelle: GATE, ziel: join(ZIEL_BUEHNE, `gate-hoch-${b}.webp`), breite: b,
|
||||
/* Auch SENKRECHT beschnitten. Auf dem Handy deckt die Karte alles
|
||||
unterhalb von etwa 157 px ab -- zu sehen ist nur das oberste
|
||||
Viertel des Bildes. Ohne diesen Schnitt landet dort die
|
||||
Spitze der Chili und sonst nichts. Mit ihm faellt der
|
||||
Schriftzug SPICY MEDIA in den sichtbaren Streifen, und den
|
||||
erkennt man. Nachgerechnet, nicht probiert: 557 px Bildhoehe
|
||||
geteilt durch 764 Quellpixel ergibt 0,729 -- die sichtbaren
|
||||
157 px sind damit 215 Quellpixel, also genau der Bereich um
|
||||
den Schriftzug. */
|
||||
ausschnitt: [0, 0.20, 0.52, 0.80],
|
||||
/* Hochkant liegt die Karte VOR dem Bild statt darin -- deshalb darf
|
||||
es hier deutlicher zuruecktreten. */
|
||||
dunkel: 0.30, guete: 0.82,
|
||||
dunkel: 0.30, guete: 0.86,
|
||||
});
|
||||
console.log(` gate-hoch-${b}.webp ${Math.round(n / 1024)} KB`);
|
||||
}
|
||||
|
||||
console.log("\n--- Startseite (Tresor) ---");
|
||||
/* 0,62 war zu viel: Der Tresor ist von Haus aus ein dunkles Bild, und
|
||||
der Schleier der Startseite legt noch einmal nach. Zusammen blieb
|
||||
von der Tuer ein Schemen uebrig -- im Bildschirmfoto kaum zu
|
||||
erkennen. Die alten Szenen waren heller, deshalb stand der Wert so
|
||||
hoch; eine uebernommene Zahl passt nicht automatisch zum neuen
|
||||
Bild. */
|
||||
for (const [name, breite, dunkel] of [["breit", 1600, 0.34], ["schmal", 760, 0.40]]) {
|
||||
/* =====================================================================
|
||||
2. DIE NEUN BUEHNEN
|
||||
|
||||
Bis zum 07.09.2026 zeigten alle neun Szenen DASSELBE Bild. Das war
|
||||
nie so gemeint -- die Zuordnung stand seit dem 01.09. in start.css,
|
||||
nur zeigten alle Zeilen auf dieselbe Datei. Jetzt hat jede Gruppe von
|
||||
Seiten ihr eigenes Motiv.
|
||||
|
||||
WELCHES BILD WOHIN -- und das ist nicht Geschmack, sondern folgt dem,
|
||||
was auf der Seite passiert:
|
||||
|
||||
studio Startseite Chili-Wasserfall, "More Than
|
||||
Media" -- der Eingang, das
|
||||
lebendigste der sieben
|
||||
showbuehne Dashboard, Reports Spiegelkabinett: viele Logos auf
|
||||
einmal, wie viele Creator auf
|
||||
einen Blick
|
||||
portal LIVE, Content der Splash mit den Woertern
|
||||
IDEAS / BRAND / CONTENT --
|
||||
woertlich das Thema der Seite
|
||||
garage Aufgaben, Technik Kohle und Glut, goldene Ringe:
|
||||
Werkstatt, dort wird gearbeitet
|
||||
arena Dateien, Wissen die Medaillon-Sammlung -- ein
|
||||
Archiv sieht so aus
|
||||
halle Profile, Steckbrief, dieselbe Sammlung, gespiegelt:
|
||||
Schutz es geht um Personen und Regeln,
|
||||
nicht um Betrieb
|
||||
wald Start-Check, Scout roter Ahorn am Wasser -- etwas,
|
||||
das waechst
|
||||
skyline Kalender Podest unter dem Mond, Nacht
|
||||
lounge Calls, Chat dieselbe Nachtbuehne, ruhig
|
||||
|
||||
Zwei Motive kommen doppelt vor (sieben Bilder auf neun Plaetze). Die
|
||||
Paare sind bewusst gewaehlt: arena/halle und skyline/lounge sind
|
||||
inhaltlich benachbart, und sie liegen nie nebeneinander auf einer
|
||||
Seite -- man sieht immer nur eins.
|
||||
|
||||
DREI GROESSEN JE SZENE:
|
||||
uhd 2400 px fuer grosse Schirme (bis dahin war 1600 das
|
||||
Maximum, und auf 2550 px sah man jede weiche Kante)
|
||||
breit 1600 px der Normalfall
|
||||
schmal 900 px hochkant fuers Handy, quadratisch beschnitten
|
||||
===================================================================== */
|
||||
const SZENEN = {
|
||||
studio: "sm-wasserfall.png",
|
||||
showbuehne: "sm-spiegel.png",
|
||||
portal: "sm-ideen.png",
|
||||
garage: "sm-glut.png",
|
||||
arena: "sm-medaillons.png",
|
||||
halle: "sm-medaillons.png",
|
||||
wald: "sm-ahorn.png",
|
||||
skyline: "sm-podest.png",
|
||||
lounge: "sm-podest.png",
|
||||
};
|
||||
|
||||
/* WIE STARK ABGEDUNKELT.
|
||||
|
||||
Die Bilder sind hell und farbig -- ueber ihnen steht Text. Der
|
||||
Schleier der Startseite legt noch einmal nach, deshalb reicht hier
|
||||
ein mittlerer Wert. Zu viel, und vom Motiv bleibt ein Schemen (genau
|
||||
das war beim Tresorbild der Fehler: 0,62 uebernommen, und man sah
|
||||
nichts mehr). Zu wenig, und pruef-buehne meldet zu Recht schlechten
|
||||
Kontrast an echten Bildpunkten.
|
||||
|
||||
0,42 ist gemessen, nicht geraten -- siehe den Lauf von pruef-buehne
|
||||
nach dem Bau. */
|
||||
const DUNKEL = 0.42;
|
||||
|
||||
console.log("\n--- Die neun Buehnen ---");
|
||||
let gesamt = 0;
|
||||
const gebaut = new Set();
|
||||
for (const [szene, datei] of Object.entries(SZENEN)) {
|
||||
const quelle = join(QUELLE, datei);
|
||||
const zeile = [];
|
||||
for (const [name, breite, guete] of [["uhd", 2400, 0.80], ["breit", 1600, 0.82]]) {
|
||||
const n = await bauen({
|
||||
quelle, ziel: join(ZIEL, `buehne-${szene}-${name}.webp`), breite,
|
||||
dunkel: DUNKEL, guete,
|
||||
});
|
||||
gesamt += n;
|
||||
zeile.push(`${name} ${Math.round(n / 1024)} KB`);
|
||||
}
|
||||
/* HOCHKANT: die MITTE des Bildes, hochkant beschnitten. Ein auf 9:16
|
||||
gequetschtes Breitbild zeigt sonst nur Wand -- und das Logo, um das
|
||||
es geht, steht in allen sieben Motiven mittig. */
|
||||
const n = await bauen({
|
||||
quelle: TRESOR, ziel: join(ZIEL, `buehne-dogfather-${name}.webp`), breite, dunkel,
|
||||
guete: 0.8,
|
||||
quelle, ziel: join(ZIEL, `buehne-${szene}-schmal.webp`), breite: 900,
|
||||
ausschnitt: [0.22, 0, 0.56, 1], dunkel: DUNKEL + 0.04, guete: 0.80,
|
||||
});
|
||||
console.log(` buehne-dogfather-${name}.webp ${Math.round(n / 1024)} KB`);
|
||||
gesamt += n;
|
||||
zeile.push(`schmal ${Math.round(n / 1024)} KB`);
|
||||
gebaut.add(datei);
|
||||
console.log(` ${szene.padEnd(11)} ${datei.padEnd(20)} ${zeile.join(" · ")}`);
|
||||
}
|
||||
console.log(`\n ${gebaut.size} Motive auf ${Object.keys(SZENEN).length} Buehnen, `
|
||||
+ `${Math.round(gesamt / 1024)} KB gesamt`);
|
||||
|
||||
await browser.close();
|
||||
console.log("\nFertig.");
|
||||
|
||||
@@ -63,7 +63,7 @@ body.start::before {
|
||||
background-position: 50% 42%;
|
||||
background-size: cover;
|
||||
/* Rueckfall, falls eine Seite keine eigene Szene hat. */
|
||||
background-image: url("../img/buehne-dogfather-breit.webp");
|
||||
background-image: url("../img/buehne-studio-breit.webp");
|
||||
}
|
||||
|
||||
/* ---------- Neun Buehnen, nicht eine ------------------------------------
|
||||
@@ -80,15 +80,28 @@ body.start::before {
|
||||
Alle sind gleich abgedunkelt und tragen dieselbe Vignette -- sie sehen
|
||||
verschieden aus und verhalten sich gleich. Eine Buehne, die je Seite
|
||||
anders hell waere, waere Unruhe statt Vielfalt. */
|
||||
body.start[data-buehne="studio"]::before { background-image: url("../img/buehne-dogfather-breit.webp"); }
|
||||
body.start[data-buehne="showbuehne"]::before { background-image: url("../img/buehne-dogfather-breit.webp"); }
|
||||
body.start[data-buehne="garage"]::before { background-image: url("../img/buehne-dogfather-breit.webp"); }
|
||||
body.start[data-buehne="skyline"]::before { background-image: url("../img/buehne-dogfather-breit.webp"); }
|
||||
body.start[data-buehne="lounge"]::before { background-image: url("../img/buehne-dogfather-breit.webp"); }
|
||||
body.start[data-buehne="arena"]::before { background-image: url("../img/buehne-dogfather-breit.webp"); }
|
||||
body.start[data-buehne="halle"]::before { background-image: url("../img/buehne-dogfather-breit.webp"); }
|
||||
body.start[data-buehne="wald"]::before { background-image: url("../img/buehne-dogfather-breit.webp"); }
|
||||
body.start[data-buehne="portal"]::before { background-image: url("../img/buehne-dogfather-breit.webp"); }
|
||||
/* JEDE SZENE IHR EIGENES MOTIV (07.09.2026).
|
||||
|
||||
Hier standen neun Zeilen, die alle auf DIESELBE Datei zeigten.
|
||||
Die Zuordnung war seit dem 01.09. richtig gedacht und seit dem
|
||||
03.09. wirkungslos -- neun Regeln, ein Bild. Aufgefallen ist es
|
||||
niemandem, weil jede einzelne Seite fuer sich stimmig aussah;
|
||||
man merkt es erst, wenn man zwei nebeneinander haelt.
|
||||
|
||||
Welches Bild wohin, steht in tools/gate-bauen.mjs begruendet.
|
||||
Kurz: Es folgt dem, was auf der Seite passiert -- Spiegelkabinett
|
||||
fuers Dashboard (viele auf einen Blick), Glut fuer Aufgaben und
|
||||
Technik (Werkstatt), Ahorn fuer Start-Check und Scout (etwas,
|
||||
das waechst). */
|
||||
body.start[data-buehne="studio"]::before { background-image: url("../img/buehne-studio-breit.webp"); }
|
||||
body.start[data-buehne="showbuehne"]::before { background-image: url("../img/buehne-showbuehne-breit.webp"); }
|
||||
body.start[data-buehne="garage"]::before { background-image: url("../img/buehne-garage-breit.webp"); }
|
||||
body.start[data-buehne="skyline"]::before { background-image: url("../img/buehne-skyline-breit.webp"); }
|
||||
body.start[data-buehne="lounge"]::before { background-image: url("../img/buehne-lounge-breit.webp"); }
|
||||
body.start[data-buehne="arena"]::before { background-image: url("../img/buehne-arena-breit.webp"); }
|
||||
body.start[data-buehne="halle"]::before { background-image: url("../img/buehne-halle-breit.webp"); }
|
||||
body.start[data-buehne="wald"]::before { background-image: url("../img/buehne-wald-breit.webp"); }
|
||||
body.start[data-buehne="portal"]::before { background-image: url("../img/buehne-portal-breit.webp"); }
|
||||
|
||||
|
||||
/* Der Schleier. Er ist der Grund, warum Text über einem Foto unverändert
|
||||
@@ -165,6 +178,30 @@ body.start > .schleier {
|
||||
rgba(5, 7, 13, 0) 100%);
|
||||
}
|
||||
|
||||
/* GROSSE SCHIRME BEKOMMEN DIE GROSSE FASSUNG (07.09.2026).
|
||||
|
||||
Die breite Fassung ist 1600 px. Auf einem 2550 px breiten
|
||||
Bildschirm rechnet der Browser sie um das 1,6-fache hoch, und
|
||||
jede Kante wird weich -- dasselbe Problem wie auf der
|
||||
Anmeldeseite. Ein Hintergrundbild kennt kein `srcset`, deshalb
|
||||
hier ueber eine Fenstergroesse.
|
||||
|
||||
1700 px als Grenze, nicht 1600: Genau bei der eigenen Breite zu
|
||||
wechseln hiesse, dass ein 1600er Fenster staendig zwischen
|
||||
beiden Fassungen steht. */
|
||||
@media (min-width: 1700px) {
|
||||
body.start[data-buehne="studio"]::before { background-image: url("../img/buehne-studio-uhd.webp"); }
|
||||
body.start[data-buehne="showbuehne"]::before { background-image: url("../img/buehne-showbuehne-uhd.webp"); }
|
||||
body.start[data-buehne="garage"]::before { background-image: url("../img/buehne-garage-uhd.webp"); }
|
||||
body.start[data-buehne="skyline"]::before { background-image: url("../img/buehne-skyline-uhd.webp"); }
|
||||
body.start[data-buehne="lounge"]::before { background-image: url("../img/buehne-lounge-uhd.webp"); }
|
||||
body.start[data-buehne="arena"]::before { background-image: url("../img/buehne-arena-uhd.webp"); }
|
||||
body.start[data-buehne="halle"]::before { background-image: url("../img/buehne-halle-uhd.webp"); }
|
||||
body.start[data-buehne="wald"]::before { background-image: url("../img/buehne-wald-uhd.webp"); }
|
||||
body.start[data-buehne="portal"]::before { background-image: url("../img/buehne-portal-uhd.webp"); }
|
||||
body.start::before { background-image: url("../img/buehne-studio-uhd.webp"); }
|
||||
}
|
||||
|
||||
/* Alles Bedienbare liegt über der Bühne. Ohne das läge der Inhalt zwar
|
||||
sichtbar darüber, aber Klicks landeten teils am falschen Ort. */
|
||||
body.start > .kopfleiste,
|
||||
@@ -175,19 +212,19 @@ body.start > main { position: relative; z-index: 1; }
|
||||
auf 9:16 gequetschtes Breitbild zeigt nur noch Wand. */
|
||||
@media (max-width: 760px) {
|
||||
body.start::before {
|
||||
background-image: url("../img/buehne-dogfather-schmal.webp");
|
||||
background-image: url("../img/buehne-studio-schmal.webp");
|
||||
background-size: cover;
|
||||
background-position: 50% 38%;
|
||||
}
|
||||
body.start[data-buehne="studio"]::before { background-image: url("../img/buehne-dogfather-schmal.webp"); }
|
||||
body.start[data-buehne="showbuehne"]::before { background-image: url("../img/buehne-dogfather-schmal.webp"); }
|
||||
body.start[data-buehne="garage"]::before { background-image: url("../img/buehne-dogfather-schmal.webp"); }
|
||||
body.start[data-buehne="skyline"]::before { background-image: url("../img/buehne-dogfather-schmal.webp"); }
|
||||
body.start[data-buehne="lounge"]::before { background-image: url("../img/buehne-dogfather-schmal.webp"); }
|
||||
body.start[data-buehne="arena"]::before { background-image: url("../img/buehne-dogfather-schmal.webp"); }
|
||||
body.start[data-buehne="halle"]::before { background-image: url("../img/buehne-dogfather-schmal.webp"); }
|
||||
body.start[data-buehne="wald"]::before { background-image: url("../img/buehne-dogfather-schmal.webp"); }
|
||||
body.start[data-buehne="portal"]::before { background-image: url("../img/buehne-dogfather-schmal.webp"); }
|
||||
body.start[data-buehne="studio"]::before { background-image: url("../img/buehne-studio-schmal.webp"); }
|
||||
body.start[data-buehne="showbuehne"]::before { background-image: url("../img/buehne-showbuehne-schmal.webp"); }
|
||||
body.start[data-buehne="garage"]::before { background-image: url("../img/buehne-garage-schmal.webp"); }
|
||||
body.start[data-buehne="skyline"]::before { background-image: url("../img/buehne-skyline-schmal.webp"); }
|
||||
body.start[data-buehne="lounge"]::before { background-image: url("../img/buehne-lounge-schmal.webp"); }
|
||||
body.start[data-buehne="arena"]::before { background-image: url("../img/buehne-arena-schmal.webp"); }
|
||||
body.start[data-buehne="halle"]::before { background-image: url("../img/buehne-halle-schmal.webp"); }
|
||||
body.start[data-buehne="wald"]::before { background-image: url("../img/buehne-wald-schmal.webp"); }
|
||||
body.start[data-buehne="portal"]::before { background-image: url("../img/buehne-portal-schmal.webp"); }
|
||||
body.start > .schleier {
|
||||
background:
|
||||
linear-gradient(180deg, rgba(5, 7, 13, .86) 0%, rgba(5, 7, 13, .48) 14%,
|
||||
|
||||
|
Before Width: | Height: | Size: 153 KiB After Width: | Height: | Size: 116 KiB |
|
Before Width: | Height: | Size: 98 KiB After Width: | Height: | Size: 63 KiB |
|
After Width: | Height: | Size: 171 KiB |
|
Before Width: | Height: | Size: 50 KiB |
|
Before Width: | Height: | Size: 17 KiB |
|
Before Width: | Height: | Size: 126 KiB After Width: | Height: | Size: 138 KiB |
|
Before Width: | Height: | Size: 69 KiB After Width: | Height: | Size: 66 KiB |
|
After Width: | Height: | Size: 198 KiB |
|
Before Width: | Height: | Size: 117 KiB After Width: | Height: | Size: 116 KiB |
|
Before Width: | Height: | Size: 72 KiB After Width: | Height: | Size: 63 KiB |
|
After Width: | Height: | Size: 171 KiB |
|
Before Width: | Height: | Size: 118 KiB After Width: | Height: | Size: 129 KiB |
|
Before Width: | Height: | Size: 62 KiB After Width: | Height: | Size: 57 KiB |
|
After Width: | Height: | Size: 186 KiB |
|
Before Width: | Height: | Size: 143 KiB After Width: | Height: | Size: 137 KiB |
|
Before Width: | Height: | Size: 84 KiB After Width: | Height: | Size: 76 KiB |
|
After Width: | Height: | Size: 198 KiB |
|
Before Width: | Height: | Size: 116 KiB After Width: | Height: | Size: 134 KiB |
|
Before Width: | Height: | Size: 56 KiB After Width: | Height: | Size: 75 KiB |
|
After Width: | Height: | Size: 192 KiB |
|
Before Width: | Height: | Size: 132 KiB After Width: | Height: | Size: 129 KiB |
|
Before Width: | Height: | Size: 57 KiB After Width: | Height: | Size: 57 KiB |
|
After Width: | Height: | Size: 186 KiB |
|
Before Width: | Height: | Size: 73 KiB After Width: | Height: | Size: 144 KiB |
|
Before Width: | Height: | Size: 42 KiB After Width: | Height: | Size: 79 KiB |
|
After Width: | Height: | Size: 210 KiB |
|
Before Width: | Height: | Size: 122 KiB After Width: | Height: | Size: 149 KiB |
|
Before Width: | Height: | Size: 70 KiB After Width: | Height: | Size: 87 KiB |
|
After Width: | Height: | Size: 213 KiB |
|
Before Width: | Height: | Size: 96 KiB After Width: | Height: | Size: 117 KiB |
|
Before Width: | Height: | Size: 125 KiB After Width: | Height: | Size: 150 KiB |
|
After Width: | Height: | Size: 183 KiB |
|
After Width: | Height: | Size: 251 KiB |
|
Before Width: | Height: | Size: 68 KiB After Width: | Height: | Size: 81 KiB |
|
Before Width: | Height: | Size: 28 KiB After Width: | Height: | Size: 32 KiB |
|
Before Width: | Height: | Size: 38 KiB After Width: | Height: | Size: 46 KiB |
|
After Width: | Height: | Size: 75 KiB |
@@ -9,9 +9,9 @@
|
||||
<meta name="theme-color" content="#0674b9" />
|
||||
<link rel="icon" type="image/png" href="/assets/img/app-symbole/workspace-32.png" />
|
||||
<link rel="apple-touch-icon" href="/assets/img/app-symbole/workspace-180.png" />
|
||||
<link rel="stylesheet" href="assets/css/gate.css?v=202609070044" />
|
||||
<link rel="stylesheet" href="assets/css/start.css?v=202609070044" />
|
||||
<link rel="stylesheet" href="assets/css/aufgaben.css?v=202609070044" />
|
||||
<link rel="stylesheet" href="assets/css/gate.css?v=202609070138" />
|
||||
<link rel="stylesheet" href="assets/css/start.css?v=202609070138" />
|
||||
<link rel="stylesheet" href="assets/css/aufgaben.css?v=202609070138" />
|
||||
</head>
|
||||
|
||||
<body class="start">
|
||||
@@ -211,10 +211,10 @@
|
||||
</form>
|
||||
</dialog>
|
||||
|
||||
<script src="assets/js/wahl.js?v=202609070044" defer></script>
|
||||
<script src="assets/js/bereiche.js?v=202609070044" defer></script>
|
||||
<script src="assets/js/kopf.js?v=202609070044" defer></script>
|
||||
<script src="assets/js/glocke.js?v=202609070044" defer></script>
|
||||
<script src="assets/js/aufgaben.js?v=202609070044" defer></script>
|
||||
<script src="assets/js/wahl.js?v=202609070138" defer></script>
|
||||
<script src="assets/js/bereiche.js?v=202609070138" defer></script>
|
||||
<script src="assets/js/kopf.js?v=202609070138" defer></script>
|
||||
<script src="assets/js/glocke.js?v=202609070138" defer></script>
|
||||
<script src="assets/js/aufgaben.js?v=202609070138" defer></script>
|
||||
</body>
|
||||
</html>
|
||||
|
||||
@@ -9,10 +9,10 @@
|
||||
<meta name="theme-color" content="#0674b9" />
|
||||
<link rel="icon" type="image/png" href="/assets/img/app-symbole/workspace-32.png" />
|
||||
<link rel="apple-touch-icon" href="/assets/img/app-symbole/workspace-180.png" />
|
||||
<link rel="stylesheet" href="assets/css/gate.css?v=202609070044" />
|
||||
<link rel="stylesheet" href="assets/css/start.css?v=202609070044" />
|
||||
<link rel="stylesheet" href="assets/css/aufgaben.css?v=202609070044" />
|
||||
<link rel="stylesheet" href="assets/css/automation.css?v=202609070044" />
|
||||
<link rel="stylesheet" href="assets/css/gate.css?v=202609070138" />
|
||||
<link rel="stylesheet" href="assets/css/start.css?v=202609070138" />
|
||||
<link rel="stylesheet" href="assets/css/aufgaben.css?v=202609070138" />
|
||||
<link rel="stylesheet" href="assets/css/automation.css?v=202609070138" />
|
||||
</head>
|
||||
|
||||
<body class="start">
|
||||
@@ -134,10 +134,10 @@
|
||||
|
||||
</main>
|
||||
|
||||
<script src="assets/js/wahl.js?v=202609070044" defer></script>
|
||||
<script src="assets/js/bereiche.js?v=202609070044" defer></script>
|
||||
<script src="assets/js/kopf.js?v=202609070044" defer></script>
|
||||
<script src="assets/js/glocke.js?v=202609070044" defer></script>
|
||||
<script src="assets/js/automation.js?v=202609070044" defer></script>
|
||||
<script src="assets/js/wahl.js?v=202609070138" defer></script>
|
||||
<script src="assets/js/bereiche.js?v=202609070138" defer></script>
|
||||
<script src="assets/js/kopf.js?v=202609070138" defer></script>
|
||||
<script src="assets/js/glocke.js?v=202609070138" defer></script>
|
||||
<script src="assets/js/automation.js?v=202609070138" defer></script>
|
||||
</body>
|
||||
</html>
|
||||
|
||||
@@ -9,10 +9,10 @@
|
||||
<meta name="theme-color" content="#0674b9" />
|
||||
<link rel="icon" type="image/png" href="/assets/img/app-symbole/workspace-32.png" />
|
||||
<link rel="apple-touch-icon" href="/assets/img/app-symbole/workspace-180.png" />
|
||||
<link rel="stylesheet" href="assets/css/gate.css?v=202609070044" />
|
||||
<link rel="stylesheet" href="assets/css/start.css?v=202609070044" />
|
||||
<link rel="stylesheet" href="assets/css/aufgaben.css?v=202609070044" />
|
||||
<link rel="stylesheet" href="assets/css/bereich.css?v=202609070044" />
|
||||
<link rel="stylesheet" href="assets/css/gate.css?v=202609070138" />
|
||||
<link rel="stylesheet" href="assets/css/start.css?v=202609070138" />
|
||||
<link rel="stylesheet" href="assets/css/aufgaben.css?v=202609070138" />
|
||||
<link rel="stylesheet" href="assets/css/bereich.css?v=202609070138" />
|
||||
</head>
|
||||
|
||||
<body class="start">
|
||||
@@ -117,14 +117,14 @@
|
||||
|
||||
</main>
|
||||
|
||||
<script src="assets/js/wahl.js?v=202609070044" defer></script>
|
||||
<script src="assets/js/bereiche.js?v=202609070044" defer></script>
|
||||
<script src="assets/js/kopf.js?v=202609070044" defer></script>
|
||||
<script src="assets/js/glocke.js?v=202609070044" defer></script>
|
||||
<script src="assets/js/checkliste.js?v=202609070044" defer></script>
|
||||
<script src="assets/js/ampel.js?v=202609070044" defer></script>
|
||||
<script src="assets/js/schulung.js?v=202609070044" defer></script>
|
||||
<script src="assets/js/vorlagen.js?v=202609070044" defer></script>
|
||||
<script src="assets/js/bereich.js?v=202609070044" defer></script>
|
||||
<script src="assets/js/wahl.js?v=202609070138" defer></script>
|
||||
<script src="assets/js/bereiche.js?v=202609070138" defer></script>
|
||||
<script src="assets/js/kopf.js?v=202609070138" defer></script>
|
||||
<script src="assets/js/glocke.js?v=202609070138" defer></script>
|
||||
<script src="assets/js/checkliste.js?v=202609070138" defer></script>
|
||||
<script src="assets/js/ampel.js?v=202609070138" defer></script>
|
||||
<script src="assets/js/schulung.js?v=202609070138" defer></script>
|
||||
<script src="assets/js/vorlagen.js?v=202609070138" defer></script>
|
||||
<script src="assets/js/bereich.js?v=202609070138" defer></script>
|
||||
</body>
|
||||
</html>
|
||||
|
||||
@@ -9,10 +9,10 @@
|
||||
<meta name="theme-color" content="#0674b9" />
|
||||
<link rel="icon" type="image/png" href="/assets/img/app-symbole/workspace-32.png" />
|
||||
<link rel="apple-touch-icon" href="/assets/img/app-symbole/workspace-180.png" />
|
||||
<link rel="stylesheet" href="assets/css/gate.css?v=202609070044" />
|
||||
<link rel="stylesheet" href="assets/css/start.css?v=202609070044" />
|
||||
<link rel="stylesheet" href="assets/css/aufgaben.css?v=202609070044" />
|
||||
<link rel="stylesheet" href="assets/css/calls.css?v=202609070044" />
|
||||
<link rel="stylesheet" href="assets/css/gate.css?v=202609070138" />
|
||||
<link rel="stylesheet" href="assets/css/start.css?v=202609070138" />
|
||||
<link rel="stylesheet" href="assets/css/aufgaben.css?v=202609070138" />
|
||||
<link rel="stylesheet" href="assets/css/calls.css?v=202609070138" />
|
||||
</head>
|
||||
|
||||
<body class="start">
|
||||
@@ -76,11 +76,11 @@
|
||||
|
||||
</main>
|
||||
|
||||
<script src="assets/js/ki.js?v=202609070044" defer></script>
|
||||
<script src="assets/js/wahl.js?v=202609070044" defer></script>
|
||||
<script src="assets/js/bereiche.js?v=202609070044" defer></script>
|
||||
<script src="assets/js/kopf.js?v=202609070044" defer></script>
|
||||
<script src="assets/js/glocke.js?v=202609070044" defer></script>
|
||||
<script src="assets/js/calls.js?v=202609070044" defer></script>
|
||||
<script src="assets/js/ki.js?v=202609070138" defer></script>
|
||||
<script src="assets/js/wahl.js?v=202609070138" defer></script>
|
||||
<script src="assets/js/bereiche.js?v=202609070138" defer></script>
|
||||
<script src="assets/js/kopf.js?v=202609070138" defer></script>
|
||||
<script src="assets/js/glocke.js?v=202609070138" defer></script>
|
||||
<script src="assets/js/calls.js?v=202609070138" defer></script>
|
||||
</body>
|
||||
</html>
|
||||
|
||||
@@ -9,16 +9,16 @@
|
||||
<meta name="theme-color" content="#0674b9" />
|
||||
<link rel="icon" type="image/png" href="/assets/img/app-symbole/workspace-32.png" />
|
||||
<link rel="apple-touch-icon" href="/assets/img/app-symbole/workspace-180.png" />
|
||||
<link rel="stylesheet" href="assets/css/gate.css?v=202609070044" />
|
||||
<link rel="stylesheet" href="assets/css/start.css?v=202609070044" />
|
||||
<link rel="stylesheet" href="assets/css/gate.css?v=202609070138" />
|
||||
<link rel="stylesheet" href="assets/css/start.css?v=202609070138" />
|
||||
<!-- aufgaben.css bringt die Dialog- und Formularstile mit (.dialog,
|
||||
.neu__zeile, .dialog__knoepfe). Sie stehen dort seit dem
|
||||
Aufgabenbrett; sie hierher zu kopieren hiesse, sie an zwei Stellen
|
||||
zu pflegen. Dieselbe Lösung nutzen kalender.html und content.html.
|
||||
Gemeldet von pruef-css-klassen.mjs, bevor jemand einen ungestylten
|
||||
Dialog zu sehen bekam. -->
|
||||
<link rel="stylesheet" href="assets/css/aufgaben.css?v=202609070044" />
|
||||
<link rel="stylesheet" href="assets/css/chat.css?v=202609070044" />
|
||||
<link rel="stylesheet" href="assets/css/aufgaben.css?v=202609070138" />
|
||||
<link rel="stylesheet" href="assets/css/chat.css?v=202609070138" />
|
||||
</head>
|
||||
|
||||
<body class="start">
|
||||
@@ -154,9 +154,9 @@
|
||||
</form>
|
||||
</dialog>
|
||||
|
||||
<script src="assets/js/bereiche.js?v=202609070044"></script>
|
||||
<script src="assets/js/kopf.js?v=202609070044"></script>
|
||||
<script src="assets/js/glocke.js?v=202609070044"></script>
|
||||
<script src="assets/js/chat.js?v=202609070044"></script>
|
||||
<script src="assets/js/bereiche.js?v=202609070138"></script>
|
||||
<script src="assets/js/kopf.js?v=202609070138"></script>
|
||||
<script src="assets/js/glocke.js?v=202609070138"></script>
|
||||
<script src="assets/js/chat.js?v=202609070138"></script>
|
||||
</body>
|
||||
</html>
|
||||
|
||||
@@ -9,10 +9,10 @@
|
||||
<meta name="theme-color" content="#0674b9" />
|
||||
<link rel="icon" type="image/png" href="/assets/img/app-symbole/workspace-32.png" />
|
||||
<link rel="apple-touch-icon" href="/assets/img/app-symbole/workspace-180.png" />
|
||||
<link rel="stylesheet" href="assets/css/gate.css?v=202609070044" />
|
||||
<link rel="stylesheet" href="assets/css/start.css?v=202609070044" />
|
||||
<link rel="stylesheet" href="assets/css/aufgaben.css?v=202609070044" />
|
||||
<link rel="stylesheet" href="assets/css/content.css?v=202609070044" />
|
||||
<link rel="stylesheet" href="assets/css/gate.css?v=202609070138" />
|
||||
<link rel="stylesheet" href="assets/css/start.css?v=202609070138" />
|
||||
<link rel="stylesheet" href="assets/css/aufgaben.css?v=202609070138" />
|
||||
<link rel="stylesheet" href="assets/css/content.css?v=202609070138" />
|
||||
</head>
|
||||
|
||||
<body class="start">
|
||||
@@ -166,12 +166,12 @@
|
||||
|
||||
</main>
|
||||
|
||||
<script src="assets/js/wahl.js?v=202609070044" defer></script>
|
||||
<script src="assets/js/bereiche.js?v=202609070044" defer></script>
|
||||
<script src="assets/js/kopf.js?v=202609070044" defer></script>
|
||||
<script src="assets/js/glocke.js?v=202609070044" defer></script>
|
||||
<script src="assets/js/checkliste.js?v=202609070044" defer></script>
|
||||
<script src="assets/js/vorlagen.js?v=202609070044" defer></script>
|
||||
<script src="assets/js/content.js?v=202609070044" defer></script>
|
||||
<script src="assets/js/wahl.js?v=202609070138" defer></script>
|
||||
<script src="assets/js/bereiche.js?v=202609070138" defer></script>
|
||||
<script src="assets/js/kopf.js?v=202609070138" defer></script>
|
||||
<script src="assets/js/glocke.js?v=202609070138" defer></script>
|
||||
<script src="assets/js/checkliste.js?v=202609070138" defer></script>
|
||||
<script src="assets/js/vorlagen.js?v=202609070138" defer></script>
|
||||
<script src="assets/js/content.js?v=202609070138" defer></script>
|
||||
</body>
|
||||
</html>
|
||||
|
||||
@@ -9,10 +9,10 @@
|
||||
<meta name="theme-color" content="#0674b9" />
|
||||
<link rel="icon" type="image/png" href="/assets/img/app-symbole/workspace-32.png" />
|
||||
<link rel="apple-touch-icon" href="/assets/img/app-symbole/workspace-180.png" />
|
||||
<link rel="stylesheet" href="assets/css/gate.css?v=202609070044" />
|
||||
<link rel="stylesheet" href="assets/css/start.css?v=202609070044" />
|
||||
<link rel="stylesheet" href="assets/css/aufgaben.css?v=202609070044" />
|
||||
<link rel="stylesheet" href="assets/css/dateien.css?v=202609070044" />
|
||||
<link rel="stylesheet" href="assets/css/gate.css?v=202609070138" />
|
||||
<link rel="stylesheet" href="assets/css/start.css?v=202609070138" />
|
||||
<link rel="stylesheet" href="assets/css/aufgaben.css?v=202609070138" />
|
||||
<link rel="stylesheet" href="assets/css/dateien.css?v=202609070138" />
|
||||
</head>
|
||||
|
||||
<body class="start">
|
||||
@@ -95,10 +95,10 @@
|
||||
|
||||
</main>
|
||||
|
||||
<script src="assets/js/wahl.js?v=202609070044" defer></script>
|
||||
<script src="assets/js/bereiche.js?v=202609070044" defer></script>
|
||||
<script src="assets/js/kopf.js?v=202609070044" defer></script>
|
||||
<script src="assets/js/glocke.js?v=202609070044" defer></script>
|
||||
<script src="assets/js/dateien.js?v=202609070044" defer></script>
|
||||
<script src="assets/js/wahl.js?v=202609070138" defer></script>
|
||||
<script src="assets/js/bereiche.js?v=202609070138" defer></script>
|
||||
<script src="assets/js/kopf.js?v=202609070138" defer></script>
|
||||
<script src="assets/js/glocke.js?v=202609070138" defer></script>
|
||||
<script src="assets/js/dateien.js?v=202609070138" defer></script>
|
||||
</body>
|
||||
</html>
|
||||
|
||||
@@ -20,14 +20,14 @@
|
||||
nosniff-Headers vom Browser verweigert - die Bühne bliebe leer. Sobald der
|
||||
Workspace einen eigenen Server bekommt, kann AVIF wieder eingeschaltet
|
||||
werden (die Dateien liegen bereit). -->
|
||||
<link rel="preload" as="image" href="assets/img/buehne/gate-1600.webp"
|
||||
<link rel="preload" as="image" href="assets/img/buehne/gate-1920.webp"
|
||||
type="image/webp" media="(min-width: 900px)" />
|
||||
<link rel="preload" as="image" href="assets/img/buehne/gate-hoch-580.webp"
|
||||
type="image/webp" media="(max-width: 899px)" />
|
||||
|
||||
<link rel="icon" type="image/png" href="/assets/img/app-symbole/workspace-32.png" />
|
||||
<link rel="apple-touch-icon" href="/assets/img/app-symbole/workspace-180.png" />
|
||||
<link rel="stylesheet" href="assets/css/gate.css?v=202609070044" />
|
||||
<link rel="stylesheet" href="assets/css/gate.css?v=202609070138" />
|
||||
</head>
|
||||
|
||||
<body class="gate">
|
||||
@@ -35,13 +35,24 @@
|
||||
<!-- ---------- Bühne: Bild + Schleier ---------------------------------- -->
|
||||
<div class="buehne" aria-hidden="true">
|
||||
<picture>
|
||||
<!-- BIS 2560 PIXEL (07.09.2026). Vorher endete die Reihe bei 1600 --
|
||||
auf einem 2550 px breiten Schirm rechnete der Browser das Bild
|
||||
also um das 1,6-fache hoch, und jede Kante wurde weich. Genau
|
||||
das sah man als "nicht hochwertig", ohne es benennen zu koennen.
|
||||
Eine hoehere Bildguete haette daran nichts geaendert: Man kann
|
||||
keine Bildpunkte zurueckholen, die nie ausgeliefert wurden.
|
||||
Ueber srcset laedt trotzdem jeder nur die Stufe, die er
|
||||
braucht -- ein Handy weiterhin 32 KB. -->
|
||||
<source media="(min-width: 900px)" type="image/webp"
|
||||
srcset="assets/img/buehne/gate-960.webp 960w,
|
||||
assets/img/buehne/gate-1280.webp 1280w,
|
||||
assets/img/buehne/gate-1600.webp 1600w" sizes="100vw" />
|
||||
assets/img/buehne/gate-1600.webp 1600w,
|
||||
assets/img/buehne/gate-1920.webp 1920w,
|
||||
assets/img/buehne/gate-2560.webp 2560w" sizes="100vw" />
|
||||
<source type="image/webp"
|
||||
srcset="assets/img/buehne/gate-hoch-440.webp 440w,
|
||||
assets/img/buehne/gate-hoch-580.webp 580w" sizes="100vw" />
|
||||
assets/img/buehne/gate-hoch-580.webp 580w,
|
||||
assets/img/buehne/gate-hoch-900.webp 900w" sizes="100vw" />
|
||||
<img class="buehne__bild" src="assets/img/buehne/gate-1280.webp" alt=""
|
||||
width="1647" height="955" fetchpriority="high" decoding="async" />
|
||||
</picture>
|
||||
@@ -162,6 +173,6 @@
|
||||
</main>
|
||||
</div>
|
||||
|
||||
<script src="assets/js/gate.js?v=202609070044" defer></script>
|
||||
<script src="assets/js/gate.js?v=202609070138" defer></script>
|
||||
</body>
|
||||
</html>
|
||||
|
||||
@@ -9,10 +9,10 @@
|
||||
<meta name="theme-color" content="#0674b9" />
|
||||
<link rel="icon" type="image/png" href="/assets/img/app-symbole/workspace-32.png" />
|
||||
<link rel="apple-touch-icon" href="/assets/img/app-symbole/workspace-180.png" />
|
||||
<link rel="stylesheet" href="assets/css/gate.css?v=202609070044" />
|
||||
<link rel="stylesheet" href="assets/css/start.css?v=202609070044" />
|
||||
<link rel="stylesheet" href="assets/css/aufgaben.css?v=202609070044" />
|
||||
<link rel="stylesheet" href="assets/css/kalender.css?v=202609070044" />
|
||||
<link rel="stylesheet" href="assets/css/gate.css?v=202609070138" />
|
||||
<link rel="stylesheet" href="assets/css/start.css?v=202609070138" />
|
||||
<link rel="stylesheet" href="assets/css/aufgaben.css?v=202609070138" />
|
||||
<link rel="stylesheet" href="assets/css/kalender.css?v=202609070138" />
|
||||
</head>
|
||||
|
||||
<body class="start">
|
||||
@@ -257,11 +257,11 @@
|
||||
|
||||
</main>
|
||||
|
||||
<script src="assets/js/wahl.js?v=202609070044" defer></script>
|
||||
<script src="assets/js/bereiche.js?v=202609070044" defer></script>
|
||||
<script src="assets/js/kopf.js?v=202609070044" defer></script>
|
||||
<script src="assets/js/glocke.js?v=202609070044" defer></script>
|
||||
<script src="assets/js/kalender.js?v=202609070044" defer></script>
|
||||
<script src="assets/js/kalender-abo.js?v=202609070044" defer></script>
|
||||
<script src="assets/js/wahl.js?v=202609070138" defer></script>
|
||||
<script src="assets/js/bereiche.js?v=202609070138" defer></script>
|
||||
<script src="assets/js/kopf.js?v=202609070138" defer></script>
|
||||
<script src="assets/js/glocke.js?v=202609070138" defer></script>
|
||||
<script src="assets/js/kalender.js?v=202609070138" defer></script>
|
||||
<script src="assets/js/kalender-abo.js?v=202609070138" defer></script>
|
||||
</body>
|
||||
</html>
|
||||
|
||||
@@ -9,10 +9,10 @@
|
||||
<meta name="theme-color" content="#0674b9" />
|
||||
<link rel="icon" type="image/png" href="/assets/img/app-symbole/workspace-32.png" />
|
||||
<link rel="apple-touch-icon" href="/assets/img/app-symbole/workspace-180.png" />
|
||||
<link rel="stylesheet" href="assets/css/gate.css?v=202609070044" />
|
||||
<link rel="stylesheet" href="assets/css/start.css?v=202609070044" />
|
||||
<link rel="stylesheet" href="assets/css/aufgaben.css?v=202609070044" />
|
||||
<link rel="stylesheet" href="assets/css/leistung.css?v=202609070044" />
|
||||
<link rel="stylesheet" href="assets/css/gate.css?v=202609070138" />
|
||||
<link rel="stylesheet" href="assets/css/start.css?v=202609070138" />
|
||||
<link rel="stylesheet" href="assets/css/aufgaben.css?v=202609070138" />
|
||||
<link rel="stylesheet" href="assets/css/leistung.css?v=202609070138" />
|
||||
</head>
|
||||
|
||||
<body class="start">
|
||||
@@ -199,10 +199,10 @@
|
||||
</form>
|
||||
</dialog>
|
||||
|
||||
<script src="assets/js/wahl.js?v=202609070044"></script>
|
||||
<script src="assets/js/bereiche.js?v=202609070044"></script>
|
||||
<script src="assets/js/kopf.js?v=202609070044"></script>
|
||||
<script src="assets/js/glocke.js?v=202609070044"></script>
|
||||
<script src="assets/js/leistung.js?v=202609070044"></script>
|
||||
<script src="assets/js/wahl.js?v=202609070138"></script>
|
||||
<script src="assets/js/bereiche.js?v=202609070138"></script>
|
||||
<script src="assets/js/kopf.js?v=202609070138"></script>
|
||||
<script src="assets/js/glocke.js?v=202609070138"></script>
|
||||
<script src="assets/js/leistung.js?v=202609070138"></script>
|
||||
</body>
|
||||
</html>
|
||||
|
||||
@@ -9,10 +9,10 @@
|
||||
<meta name="theme-color" content="#0674b9" />
|
||||
<link rel="icon" type="image/png" href="/assets/img/app-symbole/workspace-32.png" />
|
||||
<link rel="apple-touch-icon" href="/assets/img/app-symbole/workspace-180.png" />
|
||||
<link rel="stylesheet" href="assets/css/gate.css?v=202609070044" />
|
||||
<link rel="stylesheet" href="assets/css/start.css?v=202609070044" />
|
||||
<link rel="stylesheet" href="assets/css/aufgaben.css?v=202609070044" />
|
||||
<link rel="stylesheet" href="assets/css/personen.css?v=202609070044" />
|
||||
<link rel="stylesheet" href="assets/css/gate.css?v=202609070138" />
|
||||
<link rel="stylesheet" href="assets/css/start.css?v=202609070138" />
|
||||
<link rel="stylesheet" href="assets/css/aufgaben.css?v=202609070138" />
|
||||
<link rel="stylesheet" href="assets/css/personen.css?v=202609070138" />
|
||||
</head>
|
||||
|
||||
<body class="start">
|
||||
@@ -123,10 +123,10 @@
|
||||
|
||||
</main>
|
||||
|
||||
<script src="assets/js/wahl.js?v=202609070044" defer></script>
|
||||
<script src="assets/js/bereiche.js?v=202609070044" defer></script>
|
||||
<script src="assets/js/kopf.js?v=202609070044" defer></script>
|
||||
<script src="assets/js/glocke.js?v=202609070044" defer></script>
|
||||
<script src="assets/js/personen.js?v=202609070044" defer></script>
|
||||
<script src="assets/js/wahl.js?v=202609070138" defer></script>
|
||||
<script src="assets/js/bereiche.js?v=202609070138" defer></script>
|
||||
<script src="assets/js/kopf.js?v=202609070138" defer></script>
|
||||
<script src="assets/js/glocke.js?v=202609070138" defer></script>
|
||||
<script src="assets/js/personen.js?v=202609070138" defer></script>
|
||||
</body>
|
||||
</html>
|
||||
|
||||
@@ -9,10 +9,10 @@
|
||||
<meta name="theme-color" content="#0674b9" />
|
||||
<link rel="icon" type="image/png" href="/assets/img/app-symbole/workspace-32.png" />
|
||||
<link rel="apple-touch-icon" href="/assets/img/app-symbole/workspace-180.png" />
|
||||
<link rel="stylesheet" href="assets/css/gate.css?v=202609070044" />
|
||||
<link rel="stylesheet" href="assets/css/start.css?v=202609070044" />
|
||||
<link rel="stylesheet" href="assets/css/aufgaben.css?v=202609070044" />
|
||||
<link rel="stylesheet" href="assets/css/profil.css?v=202609070044" />
|
||||
<link rel="stylesheet" href="assets/css/gate.css?v=202609070138" />
|
||||
<link rel="stylesheet" href="assets/css/start.css?v=202609070138" />
|
||||
<link rel="stylesheet" href="assets/css/aufgaben.css?v=202609070138" />
|
||||
<link rel="stylesheet" href="assets/css/profil.css?v=202609070138" />
|
||||
</head>
|
||||
|
||||
<body class="start">
|
||||
@@ -201,11 +201,11 @@
|
||||
|
||||
</main>
|
||||
|
||||
<script src="assets/js/wahl.js?v=202609070044" defer></script>
|
||||
<script src="assets/js/bereiche.js?v=202609070044" defer></script>
|
||||
<script src="assets/js/kopf.js?v=202609070044" defer></script>
|
||||
<script src="assets/js/glocke.js?v=202609070044" defer></script>
|
||||
<script src="assets/js/steckbrief.js?v=202609070044" defer></script>
|
||||
<script src="assets/js/profil.js?v=202609070044" defer></script>
|
||||
<script src="assets/js/wahl.js?v=202609070138" defer></script>
|
||||
<script src="assets/js/bereiche.js?v=202609070138" defer></script>
|
||||
<script src="assets/js/kopf.js?v=202609070138" defer></script>
|
||||
<script src="assets/js/glocke.js?v=202609070138" defer></script>
|
||||
<script src="assets/js/steckbrief.js?v=202609070138" defer></script>
|
||||
<script src="assets/js/profil.js?v=202609070138" defer></script>
|
||||
</body>
|
||||
</html>
|
||||
|
||||
@@ -9,10 +9,10 @@
|
||||
<meta name="theme-color" content="#0674b9" />
|
||||
<link rel="icon" type="image/png" href="/assets/img/app-symbole/workspace-32.png" />
|
||||
<link rel="apple-touch-icon" href="/assets/img/app-symbole/workspace-180.png" />
|
||||
<link rel="stylesheet" href="assets/css/gate.css?v=202609070044" />
|
||||
<link rel="stylesheet" href="assets/css/start.css?v=202609070044" />
|
||||
<link rel="stylesheet" href="assets/css/aufgaben.css?v=202609070044" />
|
||||
<link rel="stylesheet" href="assets/css/report.css?v=202609070044" />
|
||||
<link rel="stylesheet" href="assets/css/gate.css?v=202609070138" />
|
||||
<link rel="stylesheet" href="assets/css/start.css?v=202609070138" />
|
||||
<link rel="stylesheet" href="assets/css/aufgaben.css?v=202609070138" />
|
||||
<link rel="stylesheet" href="assets/css/report.css?v=202609070138" />
|
||||
</head>
|
||||
|
||||
<body class="start">
|
||||
@@ -93,11 +93,11 @@
|
||||
|
||||
</main>
|
||||
|
||||
<script src="assets/js/ki.js?v=202609070044" defer></script>
|
||||
<script src="assets/js/wahl.js?v=202609070044" defer></script>
|
||||
<script src="assets/js/bereiche.js?v=202609070044" defer></script>
|
||||
<script src="assets/js/kopf.js?v=202609070044" defer></script>
|
||||
<script src="assets/js/glocke.js?v=202609070044" defer></script>
|
||||
<script src="assets/js/report.js?v=202609070044" defer></script>
|
||||
<script src="assets/js/ki.js?v=202609070138" defer></script>
|
||||
<script src="assets/js/wahl.js?v=202609070138" defer></script>
|
||||
<script src="assets/js/bereiche.js?v=202609070138" defer></script>
|
||||
<script src="assets/js/kopf.js?v=202609070138" defer></script>
|
||||
<script src="assets/js/glocke.js?v=202609070138" defer></script>
|
||||
<script src="assets/js/report.js?v=202609070138" defer></script>
|
||||
</body>
|
||||
</html>
|
||||
|
||||
@@ -9,10 +9,10 @@
|
||||
<meta name="theme-color" content="#0674b9" />
|
||||
<link rel="icon" type="image/png" href="/assets/img/app-symbole/workspace-32.png" />
|
||||
<link rel="apple-touch-icon" href="/assets/img/app-symbole/workspace-180.png" />
|
||||
<link rel="stylesheet" href="assets/css/gate.css?v=202609070044" />
|
||||
<link rel="stylesheet" href="assets/css/start.css?v=202609070044" />
|
||||
<link rel="stylesheet" href="assets/css/aufgaben.css?v=202609070044" />
|
||||
<link rel="stylesheet" href="assets/css/scouting.css?v=202609070044" />
|
||||
<link rel="stylesheet" href="assets/css/gate.css?v=202609070138" />
|
||||
<link rel="stylesheet" href="assets/css/start.css?v=202609070138" />
|
||||
<link rel="stylesheet" href="assets/css/aufgaben.css?v=202609070138" />
|
||||
<link rel="stylesheet" href="assets/css/scouting.css?v=202609070138" />
|
||||
</head>
|
||||
|
||||
<body class="start">
|
||||
@@ -126,10 +126,10 @@
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<script src="assets/js/wahl.js?v=202609070044" defer></script>
|
||||
<script src="assets/js/bereiche.js?v=202609070044" defer></script>
|
||||
<script src="assets/js/kopf.js?v=202609070044" defer></script>
|
||||
<script src="assets/js/glocke.js?v=202609070044" defer></script>
|
||||
<script src="assets/js/scouting.js?v=202609070044" defer></script>
|
||||
<script src="assets/js/wahl.js?v=202609070138" defer></script>
|
||||
<script src="assets/js/bereiche.js?v=202609070138" defer></script>
|
||||
<script src="assets/js/kopf.js?v=202609070138" defer></script>
|
||||
<script src="assets/js/glocke.js?v=202609070138" defer></script>
|
||||
<script src="assets/js/scouting.js?v=202609070138" defer></script>
|
||||
</body>
|
||||
</html>
|
||||
|
||||
@@ -9,8 +9,8 @@
|
||||
<meta name="theme-color" content="#0674b9" />
|
||||
<link rel="icon" type="image/png" href="/assets/img/app-symbole/workspace-32.png" />
|
||||
<link rel="apple-touch-icon" href="/assets/img/app-symbole/workspace-180.png" />
|
||||
<link rel="stylesheet" href="assets/css/gate.css?v=202609070044" />
|
||||
<link rel="stylesheet" href="assets/css/start.css?v=202609070044" />
|
||||
<link rel="stylesheet" href="assets/css/gate.css?v=202609070138" />
|
||||
<link rel="stylesheet" href="assets/css/start.css?v=202609070138" />
|
||||
</head>
|
||||
|
||||
<body class="start">
|
||||
@@ -160,10 +160,10 @@
|
||||
</p>
|
||||
</main>
|
||||
|
||||
<script src="assets/js/wahl.js?v=202609070044" defer></script>
|
||||
<script src="assets/js/bereiche.js?v=202609070044" defer></script>
|
||||
<script src="assets/js/kopf.js?v=202609070044" defer></script>
|
||||
<script src="assets/js/glocke.js?v=202609070044" defer></script>
|
||||
<script src="assets/js/start.js?v=202609070044" defer></script>
|
||||
<script src="assets/js/wahl.js?v=202609070138" defer></script>
|
||||
<script src="assets/js/bereiche.js?v=202609070138" defer></script>
|
||||
<script src="assets/js/kopf.js?v=202609070138" defer></script>
|
||||
<script src="assets/js/glocke.js?v=202609070138" defer></script>
|
||||
<script src="assets/js/start.js?v=202609070138" defer></script>
|
||||
</body>
|
||||
</html>
|
||||
|
||||
@@ -9,10 +9,10 @@
|
||||
<meta name="theme-color" content="#0674b9" />
|
||||
<link rel="icon" type="image/png" href="/assets/img/app-symbole/workspace-32.png" />
|
||||
<link rel="apple-touch-icon" href="/assets/img/app-symbole/workspace-180.png" />
|
||||
<link rel="stylesheet" href="assets/css/gate.css?v=202609070044" />
|
||||
<link rel="stylesheet" href="assets/css/start.css?v=202609070044" />
|
||||
<link rel="stylesheet" href="assets/css/aufgaben.css?v=202609070044" />
|
||||
<link rel="stylesheet" href="assets/css/startcheck.css?v=202609070044" />
|
||||
<link rel="stylesheet" href="assets/css/gate.css?v=202609070138" />
|
||||
<link rel="stylesheet" href="assets/css/start.css?v=202609070138" />
|
||||
<link rel="stylesheet" href="assets/css/aufgaben.css?v=202609070138" />
|
||||
<link rel="stylesheet" href="assets/css/startcheck.css?v=202609070138" />
|
||||
</head>
|
||||
|
||||
<body class="start">
|
||||
@@ -72,11 +72,11 @@
|
||||
|
||||
</main>
|
||||
|
||||
<script src="assets/js/ki.js?v=202609070044" defer></script>
|
||||
<script src="assets/js/wahl.js?v=202609070044" defer></script>
|
||||
<script src="assets/js/bereiche.js?v=202609070044" defer></script>
|
||||
<script src="assets/js/kopf.js?v=202609070044" defer></script>
|
||||
<script src="assets/js/glocke.js?v=202609070044" defer></script>
|
||||
<script src="assets/js/startcheck.js?v=202609070044" defer></script>
|
||||
<script src="assets/js/ki.js?v=202609070138" defer></script>
|
||||
<script src="assets/js/wahl.js?v=202609070138" defer></script>
|
||||
<script src="assets/js/bereiche.js?v=202609070138" defer></script>
|
||||
<script src="assets/js/kopf.js?v=202609070138" defer></script>
|
||||
<script src="assets/js/glocke.js?v=202609070138" defer></script>
|
||||
<script src="assets/js/startcheck.js?v=202609070138" defer></script>
|
||||
</body>
|
||||
</html>
|
||||
|
||||
@@ -9,10 +9,10 @@
|
||||
<meta name="theme-color" content="#0674b9" />
|
||||
<link rel="icon" type="image/png" href="/assets/img/app-symbole/workspace-32.png" />
|
||||
<link rel="apple-touch-icon" href="/assets/img/app-symbole/workspace-180.png" />
|
||||
<link rel="stylesheet" href="assets/css/gate.css?v=202609070044" />
|
||||
<link rel="stylesheet" href="assets/css/start.css?v=202609070044" />
|
||||
<link rel="stylesheet" href="assets/css/aufgaben.css?v=202609070044" />
|
||||
<link rel="stylesheet" href="assets/css/profil.css?v=202609070044" />
|
||||
<link rel="stylesheet" href="assets/css/gate.css?v=202609070138" />
|
||||
<link rel="stylesheet" href="assets/css/start.css?v=202609070138" />
|
||||
<link rel="stylesheet" href="assets/css/aufgaben.css?v=202609070138" />
|
||||
<link rel="stylesheet" href="assets/css/profil.css?v=202609070138" />
|
||||
</head>
|
||||
|
||||
<body class="start">
|
||||
@@ -113,10 +113,10 @@
|
||||
|
||||
</main>
|
||||
|
||||
<script src="assets/js/wahl.js?v=202609070044" defer></script>
|
||||
<script src="assets/js/bereiche.js?v=202609070044" defer></script>
|
||||
<script src="assets/js/kopf.js?v=202609070044" defer></script>
|
||||
<script src="assets/js/glocke.js?v=202609070044" defer></script>
|
||||
<script src="assets/js/steckbrief.js?v=202609070044" defer></script>
|
||||
<script src="assets/js/wahl.js?v=202609070138" defer></script>
|
||||
<script src="assets/js/bereiche.js?v=202609070138" defer></script>
|
||||
<script src="assets/js/kopf.js?v=202609070138" defer></script>
|
||||
<script src="assets/js/glocke.js?v=202609070138" defer></script>
|
||||
<script src="assets/js/steckbrief.js?v=202609070138" defer></script>
|
||||
</body>
|
||||
</html>
|
||||
|
||||
@@ -9,9 +9,9 @@
|
||||
<meta name="theme-color" content="#0674b9" />
|
||||
<link rel="icon" type="image/png" href="/assets/img/app-symbole/workspace-32.png" />
|
||||
<link rel="apple-touch-icon" href="/assets/img/app-symbole/workspace-180.png" />
|
||||
<link rel="stylesheet" href="assets/css/gate.css?v=202609070044" />
|
||||
<link rel="stylesheet" href="assets/css/start.css?v=202609070044" />
|
||||
<link rel="stylesheet" href="assets/css/uebersicht.css?v=202609070044" />
|
||||
<link rel="stylesheet" href="assets/css/gate.css?v=202609070138" />
|
||||
<link rel="stylesheet" href="assets/css/start.css?v=202609070138" />
|
||||
<link rel="stylesheet" href="assets/css/uebersicht.css?v=202609070138" />
|
||||
</head>
|
||||
|
||||
<body class="start">
|
||||
@@ -82,10 +82,10 @@
|
||||
|
||||
</main>
|
||||
|
||||
<script src="assets/js/bereiche.js?v=202609070044" defer></script>
|
||||
<script src="assets/js/bereiche.js?v=202609070138" defer></script>
|
||||
|
||||
<script src="assets/js/kopf.js?v=202609070044" defer></script>
|
||||
<script src="assets/js/glocke.js?v=202609070044" defer></script>
|
||||
<script src="assets/js/uebersicht.js?v=202609070044" defer></script>
|
||||
<script src="assets/js/kopf.js?v=202609070138" defer></script>
|
||||
<script src="assets/js/glocke.js?v=202609070138" defer></script>
|
||||
<script src="assets/js/uebersicht.js?v=202609070138" defer></script>
|
||||
</body>
|
||||
</html>
|
||||
|
||||
@@ -9,10 +9,10 @@
|
||||
<meta name="theme-color" content="#0674b9" />
|
||||
<link rel="icon" type="image/png" href="/assets/img/app-symbole/workspace-32.png" />
|
||||
<link rel="apple-touch-icon" href="/assets/img/app-symbole/workspace-180.png" />
|
||||
<link rel="stylesheet" href="assets/css/gate.css?v=202609070044" />
|
||||
<link rel="stylesheet" href="assets/css/start.css?v=202609070044" />
|
||||
<link rel="stylesheet" href="assets/css/aufgaben.css?v=202609070044" />
|
||||
<link rel="stylesheet" href="assets/css/wissen.css?v=202609070044" />
|
||||
<link rel="stylesheet" href="assets/css/gate.css?v=202609070138" />
|
||||
<link rel="stylesheet" href="assets/css/start.css?v=202609070138" />
|
||||
<link rel="stylesheet" href="assets/css/aufgaben.css?v=202609070138" />
|
||||
<link rel="stylesheet" href="assets/css/wissen.css?v=202609070138" />
|
||||
</head>
|
||||
|
||||
<body class="start">
|
||||
@@ -177,10 +177,10 @@
|
||||
|
||||
</main>
|
||||
|
||||
<script src="assets/js/wahl.js?v=202609070044" defer></script>
|
||||
<script src="assets/js/bereiche.js?v=202609070044" defer></script>
|
||||
<script src="assets/js/kopf.js?v=202609070044" defer></script>
|
||||
<script src="assets/js/glocke.js?v=202609070044" defer></script>
|
||||
<script src="assets/js/wissen.js?v=202609070044" defer></script>
|
||||
<script src="assets/js/wahl.js?v=202609070138" defer></script>
|
||||
<script src="assets/js/bereiche.js?v=202609070138" defer></script>
|
||||
<script src="assets/js/kopf.js?v=202609070138" defer></script>
|
||||
<script src="assets/js/glocke.js?v=202609070138" defer></script>
|
||||
<script src="assets/js/wissen.js?v=202609070138" defer></script>
|
||||
</body>
|
||||
</html>
|
||||
|
||||