B1: Das Anschlagbrett haelt 24 Stunden -- und sieht aus wie ein Anschlagbrett

"die sachen sollen in der seite vom anschlagbrett immer automatisch
nach 24h von da verschwinden. weil alles hat seine kategorie und was
nicht ist auch nicht um ewig auf der seite zu bleiben fertig."

SEINE BEGRUENDUNG IST DIE REGEL. Ein Anschlagbrett sagt, was GERADE
gilt. Was laenger gilt, hat seinen eigenen Bereich -- Regeln stehen bei
den Regeln, Termine bei "Was ansteht". Eine Ansage vom letzten
Dienstag, die noch haengt, ist keine Ansage mehr, sondern Papier an der
Wand.

DIE DREI ENTSCHEIDUNGEN, DIE ICH TREFFEN MUSSTE -- und woran ich sie
festgemacht habe:

1. AB WANN LAUFEN DIE 24 STUNDEN? Ab `erstellt`, nicht ab `datum`.
   `datum` ist ein vom Team gesetztes Feld und kann in der Zukunft
   liegen (es traegt die Termine). Eine Ansage, die morgen gilt, soll
   morgen verschwinden und nicht uebermorgen.

2. VERSCHWINDET SIE GANZ? Nein. Er sagt "von DA verschwinden" -- von
   der Seite. Geloescht wird nichts: Wer eine Ansage geschrieben hat,
   soll sie wiederfinden. Sie kommt als `abgehaengt` mit und steht
   zugeklappt unter einer leisen Zeile "Abgehaengt (3)". Auf dem Brett
   selbst steht sie damit nicht mehr.

3. WER ENTSCHEIDET? Der Server. Die Stunden im Browser nachzurechnen
   waere eine zweite Fassung derselben Regel, und eine davon waere
   irgendwann aelter. Die Frist geht als Zahl mit der Antwort.

DAS AUSSEHEN ("viel besser gestaltet, übersichtlicher, moderner,
hochwertiger, professioneller"): Was haengt, sieht jetzt aus wie etwas,
das haengt -- kraeftiger Rand links in der Farbe seiner ART (Ansage
babyblau, Neue Regel gold, Hinweis lila, Danke gruen), ein Schein von
links, mehr Luft. Die Art stand bisher nur im Text; jetzt sieht man
sie. Abgehaengtes ist grau statt durchsichtig -- durchsichtig hiesse,
das Buehnenbild scheint durch, also Text auf einem Foto.

pruef-anschlagbrett.mjs (NEU, 12/0) misst beide Seiten der Grenze
(23 h haengt, 25 h nicht), rechnet relativ zur jetzigen Uhrzeit statt
mit einem festen Datum, und hat den Eintrag, an dem sich alles
entscheidet: alt aufgehaengt, Datum von heute. Wer nach `datum`
filtert, laesst ihn haengen. Dazu zwei Gegenproben: auf jedem anderen
Brett gibt es das Merkmal gar nicht, und wo die Grenze WIRKLICH liegt,
wird aus den Eintraegen nachgerechnet statt aus der Zahl im Modul.

NEBENBEFUND, den erst dieser Commit ausgeloest hat
---------------------------------------------------
pruef-bereiche-lesend stuerzte ab: "listen EACCES 127.0.0.1:5040".

Die Portnummern werden aus der Stelle im Alphabet abgeleitet -- heute
sind fuenf neue Pruefdateien dazugekommen, und dadurch ist diese
Pruefung auf die 5040 gerutscht. Die haelt auf diesem Rechner ein
Windows-Dienst (svchost, PID 7136).

`portMussFreiSein` kannte nur ZWEI Antworten: EADDRINUSE oder frei.
EACCES galt als frei -- die Pruefung lief weiter, bis der echte Server
auf demselben Port startete und mit einem unbehandelten Fehler
abstuerzte. Ein Stapelauszug aus node:net, der wie ein Fehler im Code
aussieht.

Jetzt drei Antworten. Und ein belegter Port wird anders behandelt als
ein gesperrter: Belegt geht vorbei (der andere Lauf hoert auf),
gesperrt nie. Abzubrechen hiesse, die Pruefung waere auf diesem Rechner
dauerhaft nicht ausfuehrbar -- die Sorte Warnung, die immer kommt und
deshalb weggeklickt wird. Ausgewichen wird um einen festen Betrag
(+4000), damit die Nummer abgeleitet und eindeutig bleibt.

Mitgelaufen und gruen: pruef-bereiche-lesend, pruef-css-klassen.

Co-Authored-By: Claude Opus 5 <[email protected]>
This commit is contained in:
2026-09-22 23:47:52 +02:00
co-authored by Claude Opus 5
parent 7c23913347
commit 189d0b3363
44 changed files with 1097 additions and 591 deletions
+68 -6
View File
@@ -34,16 +34,72 @@
import { createServer } from "node:net";
/** Wirft, wenn der Port belegt ist. Sonst gibt er ihn frei zurück. */
export async function portMussFreiSein(port, wer = "diese Pruefung") {
const belegt = await new Promise((fertig) => {
/** Was ist mit diesem Port los?
*
* DREI ANTWORTEN, NICHT ZWEI (22.09.2026) -- und die dritte hat
* heute gefehlt:
*
* null frei
* EADDRINUSE jemand hoert darauf (meist ein zweiter Prueflauf)
* EACCES das System gibt ihn nicht her -- dauerhaft
*
* Vorher wurde NUR auf EADDRINUSE geprueft; jeder andere Fehler galt
* als "frei". Auf diesem Rechner haelt ein Windows-Dienst (svchost,
* PID 7136) den Port 5040. `createServer().listen` scheiterte dort mit
* EACCES, die Antwort war trotzdem "frei", und die Pruefung lief
* weiter -- bis der ECHTE Server auf demselben Port startete und mit
* einem unbehandelten Fehler abstuerzte. Eine Meldung, die "belegt"
* heissen muesste, kam nie; stattdessen ein Stapelauszug aus
* node:net, der wie ein Fehler im Code aussieht.
*
* Aufgefallen ist es, weil die Nummern sich verschoben haben: Sie
* werden aus der Stelle im Alphabet abgeleitet, und heute sind fuenf
* neue Pruefdateien dazugekommen. Der Fall lag also seit Langem da
* und wartete nur darauf, dass jemand auf die 5040 rutscht. */
async function portLage(port) {
return new Promise((fertig) => {
const s = createServer();
s.once("error", (f) => fertig(f.code === "EADDRINUSE"));
s.once("listening", () => s.close(() => fertig(false)));
s.once("error", (f) => fertig(f.code || "FEHLER"));
s.once("listening", () => s.close(() => fertig(null)));
s.listen(port, "127.0.0.1");
});
}
if (belegt) {
/** Wirft, wenn der Port belegt ist. Sonst gibt er ihn frei zurück. */
export async function portMussFreiSein(port, wer = "diese Pruefung") {
const lage = await portLage(port);
/* DAUERHAFT GESPERRT -> AUSWEICHEN, NICHT ABBRECHEN.
------------------------------------------------------------------
Ein belegter Port ist ein Zustand, der vorbeigeht: Der andere Lauf
hoert auf, und danach geht es. Ein vom System reservierter Port
geht NIE. Abzubrechen hiesse, diese Pruefung waere auf diesem
Rechner dauerhaft nicht ausfuehrbar -- und das waere die Sorte
Warnung, die immer kommt und deshalb weggeklickt wird.
Ausgewichen wird um einen festen Betrag, nicht auf "den naechsten
freien": Damit bleibt die Nummer ABGELEITET und eindeutig. Zwei
Pruefungen, die beide ausweichen, landen auf zwei verschiedenen
Nummern, weil ihre Ausgangsnummern verschieden waren. */
if (lage === "EACCES") {
const ersatz = port + AUSWEICHEN;
const lage2 = await portLage(ersatz);
if (lage2 === null) {
console.log(`[Port] ${port} ist vom System belegt (EACCES) --`
+ ` ${wer} nimmt ${ersatz}.`);
return ersatz;
}
console.error(`\nABBRUCH: Port ${port} ist vom System gesperrt, und der`);
console.error(` Ausweichport ${ersatz} ist ebenfalls nicht frei (${lage2}).\n`);
console.error(` ${wer} kann hier nicht messen. Das ist KEIN Befund am Code --`);
console.error(` es heisst nur, dass gerade niemand nachsehen konnte.\n`);
console.error(` Nachsehen, wer die Ports haelt:`);
console.error(` netstat -ano | findstr :${port}`);
console.error(` netstat -ano | findstr :${ersatz}\n`);
process.exit(3);
}
if (lage !== null) {
console.error(`\nABBRUCH: Port ${port} ist belegt.\n`);
console.error(` ${wer} startet einen eigenen Server auf diesem Port. Laeuft dort`);
console.error(` schon etwas, wuerde gegen einen FREMDEN Stand gemessen -- mit`);
@@ -124,6 +180,12 @@ import { basename, dirname } from "node:path";
* werden: "irgendwo ueber 4400" haette plausibel geklungen. */
const BASIS = 5000;
const PRO_DATEI = 2;
/** Um wie viel ausgewichen wird, wenn das System einen Port nicht
* hergibt. 4000 liegt sicher oberhalb des ganzen abgeleiteten
* Bereichs (BASIS bis BASIS+5000 in Schritten von 2, bei derzeit
* rund 180 Dateien also bis etwa 5400) -- zwei Pruefungen koennen
* sich dadurch nicht ins Gehege kommen, auch wenn beide ausweichen. */
const AUSWEICHEN = 4000;
/** Der Port dieser Datei -- abgeleitet, nicht vergeben.
*
+230
View File
@@ -0,0 +1,230 @@
/* =====================================================================
DAS ANSCHLAGBRETT HÄLT 24 STUNDEN
=====================================================================
Filipe am 22.09.2026:
„die sachen sollen in der seite vom anschlagbrett immer
automatisch nach 24h von da verschwinden. weil alles hat seine
kategorie und was nicht ist auch nicht um ewig auf der seite zu
bleiben fertig."
SEINE BEGRÜNDUNG IST DIE REGEL. Ein Anschlagbrett sagt, was GERADE
gilt. Was länger gilt, hat seinen eigenen Bereich — Regeln stehen
bei den Regeln, Termine bei „Was ansteht". Eine Ansage vom letzten
Dienstag, die noch hängt, ist keine Ansage mehr, sondern Papier an
der Wand.
---------------------------------------------------------------------
DREI DINGE, DIE EINE ZEITREGEL LEICHT FALSCH MACHT
1. DIE UHR ALS ANNAHME. Eine Prüfung, die „vor 25 Stunden" mit einem
festen Datum nachbaut, ist grün, bis der Kalender sie überholt.
Hier wird deshalb relativ gerechnet (`Date.now() - n * Stunde`) —
dieselbe Lehre wie bei `gate-oeffnung.mjs` im Shop.
2. DIE FALSCHE SPALTE. `datum` ist ein vom Team gesetztes Feld und
kann in der Zukunft liegen (es trägt die Termine). Gezählt wird
ab `erstellt`. Gemessen wird das hier mit einem Eintrag, dessen
beide Daten AUSEINANDERLIEGEN — sonst wäre nicht zu sehen,
welches der beiden zählt.
3. DIE GRENZE SELBST. Bei genau 24 Stunden darf es nicht kippen,
ohne dass jemand es merkt. Geprüft werden deshalb beide Seiten:
kurz davor hängt sie, kurz danach nicht.
Und der wichtigste Punkt: NICHTS WIRD GELÖSCHT. Er sagt „von DA
verschwinden" — von der Seite. Wer eine Ansage geschrieben hat, soll
sie wiederfinden.
===================================================================== */
import { mkdtempSync, rmSync } from "node:fs";
import { tmpdir } from "node:os";
import { join } from "node:path";
import { notbremse } from "./helfer-notbremse.mjs";
import { eigenerPort } from "./helfer-port.mjs";
const ordner = mkdtempSync(join(tmpdir(), "ws-anschlag-"));
process.env.WORKSPACE_DB = join(ordner, "workspace.db");
const PORT = await eigenerPort(import.meta, "pruef-anschlagbrett");
process.env.PORT = `${PORT}`;
process.env.SITE_ACCESS_SECRET = "lokaler-test";
process.env.SITE_PUBLIC_LAUNCH_AT = "2020-01-01T00:00:00+01:00";
const express = (await import("express")).default;
const ec = express.response.cookie;
express.response.cookie = function (n, w, o) { return ec.call(this, n, w, { ...(o || {}), secure: false }); };
await import("./index.js");
notbremse(90_000, "pruef-anschlagbrett");
await new Promise((r) => setTimeout(r, 800));
let fehler = 0, geprueft = 0, offen = 0;
const ok = (b, t) => { geprueft++; console.log((b ? " ok " : " FEHL ") + t); if (!b) fehler++; };
const unklar = (t) => { offen++; console.log(" -- " + t); };
const { ANSCHLAG_STUNDEN } = await import("./workspace-bereiche.js");
const STUNDE = 3600 * 1000;
/* ---------- Leute und Einträge ---------------------------------------- */
const { DatabaseSync } = await import("node:sqlite");
const { scryptSync, randomBytes, createHmac } = await import("node:crypto");
const d = new DatabaseSync(process.env.WORKSPACE_DB);
const jetzt = new Date().toISOString();
const schluessel = randomBytes(32).toString("hex");
d.prepare("INSERT INTO einstellungen (schluessel, wert, geaendert, von)"
+ " VALUES (?,?,?,NULL) ON CONFLICT(schluessel) DO NOTHING")
.run("code_kennung_schluessel", schluessel, jetzt);
function anlegen(name, rolle, code) {
const salt = randomBytes(16).toString("hex");
const hash = scryptSync(code, salt, 64,
{ N: 32768, r: 8, p: 1, maxmem: 96 * 1024 * 1024 }).toString("hex");
d.prepare("INSERT INTO personen"
+ " (name, rolle, code_hash, code_salt, code_n, code_kennung, aktiv, erstellt)"
+ " VALUES (?,?,?,?,?,?,1,?)")
.run(name, rolle, hash, salt, 32768,
createHmac("sha256", schluessel).update(code).digest("hex"), jetzt);
return d.prepare("SELECT last_insert_rowid() AS id").get().id;
}
const idChef = anlegen("Filipe", "admin", "CODE-DOGI-0001");
/* RELATIV ZUR JETZIGEN UHRZEIT, nie mit einem festen Datum. */
const vorStunden = (n) => new Date(Date.now() - n * STUNDE).toISOString();
/** Ein Aushang mit getrenntem `erstellt` und `datum`. */
function aushang(titel, stundenAlt, datumStundenAlt = stundenAlt) {
d.prepare(`INSERT INTO eintraege (bereich, art, titel, text, datum, status, erstellt, erstellt_von)
VALUES ('anschlag', 'ansage', ?, ?, ?, 'offen', ?, ?)`)
.run(titel, "Inhalt", vorStunden(datumStundenAlt).slice(0, 10),
vorStunden(stundenAlt), idChef);
return d.prepare("SELECT last_insert_rowid() AS id").get().id;
}
const idFrisch = aushang("Gerade aufgehängt", 0.5);
const idKurzDavor = aushang("Kurz vor der Grenze", ANSCHLAG_STUNDEN - 1);
const idKurzDanach = aushang("Kurz nach der Grenze", ANSCHLAG_STUNDEN + 1);
const idUralt = aushang("Von letzter Woche", 24 * 7);
/* DER ENTSCHEIDENDE: `erstellt` ist alt, `datum` ist von heute. Wer
nach `datum` filtert, lässt ihn hängen -- und genau das wäre der
Fehler, den man sonst nie sieht. */
const idAltMitNeuemDatum = aushang("Alt aufgehängt, Datum von heute", ANSCHLAG_STUNDEN + 3, 0);
d.close();
/* ---------- Anfragen --------------------------------------------------- */
const { request: httpAnfrage } = await import("node:http");
const CREW = "crew.dogfather-universe.com";
function anfrage(pfad, { methode = "GET", keks = "", rumpf = null } = {}) {
return new Promise((fertig, schief) => {
const daten = rumpf === null ? null : Buffer.from(JSON.stringify(rumpf));
const a = httpAnfrage({
host: "127.0.0.1", port: PORT, path: pfad, method: methode,
headers: {
Host: CREW, Origin: `https://${CREW}`, Referer: `https://${CREW}/workspace/`,
...(daten ? { "Content-Type": "application/json", "Content-Length": daten.length } : {}),
...(keks ? { Cookie: keks } : {}),
},
}, (antwort) => {
const st = [];
antwort.on("data", (x) => st.push(x));
antwort.on("end", () => {
const text = Buffer.concat(st).toString("utf8");
let json = null; try { json = JSON.parse(text); } catch { /* kein JSON */ }
fertig({ code: antwort.statusCode, json,
keks: [].concat(antwort.headers["set-cookie"] || [])
.map((c) => c.split(";")[0]).join("; ") });
});
});
a.on("error", schief);
if (daten) a.write(daten);
a.end();
});
}
const keks = (await anfrage("/workspace/api/anmelden",
{ methode: "POST", rumpf: { rolle: "admin", code: "CODE-DOGI-0001" } })).keks;
console.log("=== Das Anschlagbrett haelt 24 Stunden ===");
console.log("");
console.log(`--- Die Frist steht an EINER Stelle: ${ANSCHLAG_STUNDEN} Stunden ---`);
const a = await anfrage("/workspace/api/bereich/anschlag", { keks });
ok(a.code === 200, `das Brett antwortet (${a.code})`);
const eintraege = a.json?.eintraege || [];
const nach = new Map(eintraege.map((e) => [e.id, e]));
/* NICHTS IST VERSCHWUNDEN. Alle fünf kommen mit -- was fehlt, wäre
gelöscht, und das war ausdrücklich nicht gemeint. */
ok(eintraege.length === 5,
`alle fünf Aushänge kommen mit (${eintraege.length}) — abgehängt ist nicht gelöscht`);
ok(nach.get(idFrisch)?.abgehaengt === false, "was gerade aufgehängt wurde, hängt");
ok(nach.get(idKurzDavor)?.abgehaengt === false,
`eine Stunde vor der Grenze hängt sie noch (${ANSCHLAG_STUNDEN - 1} h alt)`);
ok(nach.get(idKurzDanach)?.abgehaengt === true,
`eine Stunde danach nicht mehr (${ANSCHLAG_STUNDEN + 1} h alt)`);
ok(nach.get(idUralt)?.abgehaengt === true, "die von letzter Woche erst recht nicht");
/* DIE WICHTIGSTE ZEILE. */
ok(nach.get(idAltMitNeuemDatum)?.abgehaengt === true,
"gezählt wird ab `erstellt`, nicht ab `datum` — ein alter Aushang mit"
+ " heutigem Datum hängt NICHT weiter");
/* DIE FRIST GEHT AN DIE SEITE MIT. */
ok(a.json?.anschlag_stunden === ANSCHLAG_STUNDEN,
`die Frist kommt mit der Antwort (${a.json?.anschlag_stunden})`);
/* =====================================================================
GEGENPROBE: NUR DAS ANSCHLAGBRETT
=====================================================================
Eine Regel, die versehentlich überall gilt, wäre schlimmer als
keine: Auf den Regeln, bei „Was ansteht" und auf jedem anderen Brett
soll nichts nach einem Tag verschwinden. Und `abgehaengt` darf dort
gar nicht erst auftauchen -- ein Feld, das immer `false` sagt, wird
irgendwann von jemandem ausgewertet.
===================================================================== */
console.log("");
console.log("--- Gegenprobe: nur hier, sonst nirgends ---");
{
const dd = new DatabaseSync(process.env.WORKSPACE_DB);
dd.prepare(`INSERT INTO eintraege (bereich, art, titel, text, datum, status, erstellt, erstellt_von)
VALUES ('regeln', 'regel', ?, ?, ?, 'offen', ?, ?)`)
.run("Uralte Regel", "Inhalt", vorStunden(24 * 30).slice(0, 10), vorStunden(24 * 30), idChef);
dd.close();
const b = await anfrage("/workspace/api/bereich/regeln", { keks });
const regeln = b.json?.eintraege || [];
ok(regeln.length >= 1, `das Regelbrett hat ${regeln.length} Eintrag/Einträge`);
ok(regeln.length >= 1 && regeln.every((e) => e.abgehaengt === undefined),
"dort gibt es das Merkmal gar nicht — die Regel gilt nur am Anschlagbrett");
ok(b.json?.anschlag_stunden === undefined,
"und die Frist steht dort auch nicht in der Antwort");
}
/* =====================================================================
GEGENPROBE ZUR MESSUNG: WÜRDE SIE EINEN FEHLER SEHEN?
=====================================================================
Bis hierhin könnte alles auch dann grün sein, wenn `abgehaengt`
schlicht dem Alter folgt und die Grenze woanders läge. Also einmal
nachrechnen, wo sie wirklich liegt -- gemessen an den Einträgen
selbst, nicht an der Zahl aus dem Modul.
===================================================================== */
console.log("");
console.log("--- Wo die Grenze wirklich liegt ---");
{
const alter = (e) => (Date.now() - Date.parse(e.erstellt)) / STUNDE;
const haengend = eintraege.filter((e) => !e.abgehaengt).map(alter);
const ab = eintraege.filter((e) => e.abgehaengt).map(alter);
const aeltesteHaengend = Math.max(...haengend);
const juengsteAb = Math.min(...ab);
ok(haengend.length > 0 && ab.length > 0
&& aeltesteHaengend < ANSCHLAG_STUNDEN && juengsteAb > ANSCHLAG_STUNDEN,
`die Grenze liegt zwischen ${aeltesteHaengend.toFixed(1)} h (hängt noch)`
+ ` und ${juengsteAb.toFixed(1)} h (abgehängt) — also bei ${ANSCHLAG_STUNDEN}`);
}
/* ---------- Ende ------------------------------------------------------ */
try { rmSync(ordner, { recursive: true, force: true }); } catch { /* Windows haelt manchmal */ }
console.log("");
console.log(`${fehler === 0 ? "BESTANDEN" : "FEHLGESCHLAGEN"}`
+ ` -- ${geprueft} geprueft, ${fehler} Fehler, ${offen} nicht nachsehbar`);
process.exit(fehler === 0 ? 0 : 1);
+64
View File
@@ -80,6 +80,18 @@ export const bereicheRouter = express.Router();
/* Die Bereiche und ihre Arten. Bewusst hier und nicht in der Datenbank:
Es sind Festlegungen aus dem Konzept, keine Nutzdaten. */
/** Wie lange eine Ansage am Anschlagbrett haengt -- in Stunden.
*
* Filipe am 22.09.2026: „die sachen sollen in der seite vom
* anschlagbrett immer automatisch nach 24h von da verschwinden."
*
* ALS ZAHL AN EINER STELLE, damit die Anzeige („seit gestern") und
* die Regel (was noch haengt) nicht auseinanderlaufen koennen. Sie
* geht mit der Antwort an den Browser -- eine 24 im Skript waere die
* zweite Fassung, und beim naechsten Mal stuende dort eine andere
* Zahl als hier. */
export const ANSCHLAG_STUNDEN = 24;
export const BEREICHE = {
/* =====================================================================
DIE SIEBEN BRETTER DES TREFFS (11.09.2026)
@@ -1303,6 +1315,52 @@ bereicheRouter.get("/workspace/api/bereich/:bereich", (req, res) => {
ORDER BY ${reihenfolge}`)
.all(...(treffBrett ? [wer] : []), ...regel.werte, bereich);
/* =================================================================
DAS ANSCHLAGBRETT HAELT 24 STUNDEN (22.09.2026)
=================================================================
Filipe: „die sachen sollen in der seite vom anschlagbrett immer
automatisch nach 24h von da verschwinden. weil alles hat seine
kategorie und was nicht ist auch nicht um ewig auf der seite zu
bleiben fertig."
SEINE BEGRUENDUNG IST DIE REGEL: Ein Anschlagbrett sagt, was
GERADE gilt. Was laenger gilt, hat seinen eigenen Bereich -- die
Regeln stehen bei den Regeln, Termine bei „Was ansteht". Eine
Ansage vom letzten Dienstag, die noch haengt, ist keine Ansage
mehr, sondern Papier an der Wand.
AB WANN DIE 24 STUNDEN LAUFEN: ab `erstellt`, also ab dem
Augenblick, in dem jemand sie aufgehaengt hat. Nicht ab `datum`
-- das ist ein vom Team gesetztes Feld und kann in der Zukunft
liegen (es traegt die Termine). Eine Ansage, die morgen gilt,
soll morgen verschwinden und nicht uebermorgen.
SIE VERSCHWINDET VON DER SEITE, NICHT AUS DER WELT.
Filipe sagt „von da verschwinden" -- von DA. Geloescht wird
nichts: Wer eine Ansage geschrieben hat, soll sie
wiederfinden, und eine Ansage rueckwirkend verschwinden zu
lassen waere etwas anderes als sie abzuhaengen. Die aelteren
kommen deshalb mit, aber als `abgehaengt` gekennzeichnet; die
Seite zeigt sie zugeklappt unter einer Zeile.
WARUM DER SERVER DAS ENTSCHEIDET UND NICHT DER BROWSER: Im
Browser waere es eine zweite Fassung derselben Regel -- und die
eine wuerde irgendwann etwas anderes sagen als die andere.
Dieselbe Ueberlegung steht zehn Zeilen tiefer schon einmal, zum
Termin.
================================================================= */
if (bereich === "anschlag") {
const grenze = Date.now() - ANSCHLAG_STUNDEN * 3600 * 1000;
for (const e of eintraege) {
const auf = Date.parse(e.erstellt || "");
/* OHNE LESBARES DATUM BLEIBT SIE HAENGEN. Ein unlesbarer
Zeitstempel ist ein Grund nachzusehen, kein Grund, etwas
verschwinden zu lassen. */
e.abgehaengt = Number.isFinite(auf) ? auf < grenze : false;
}
}
/* STEHT DIESER ZETTEL IM KALENDER? (17.09.2026)
Der Kalender zeigt seit heute, was auf den Brettern steht und
@@ -1518,6 +1576,12 @@ bereicheRouter.get("/workspace/api/bereich/:bereich", (req, res) => {
res.json({
bereich, einstellung: { ...einstellung, ober, entscheidung },
treff: treffBrett, gehoert, weiter,
/* WIE LANGE EINE ANSAGE HAENGT -- vom Server, damit die Anzeige
(„seit gestern abgehaengt") und die Regel dieselbe Zahl
benutzen. Nur am Anschlagbrett; ueberall sonst gibt es keine
Frist, und ein Feld, das immer 24 sagt, wuerde irgendwann
irgendwo ausgewertet. */
...(bereich === "anschlag" ? { anschlag_stunden: ANSCHLAG_STUNDEN } : {}),
/* DARF DIESER MENSCH IN DEN KALENDER? Beantwortet von den zwei
Stellen, die es entscheiden -- nicht von einer dritten Regel
im Browser. Die Karte zeigt ihren Termin dann als Text statt
+5 -5
View File
@@ -16,15 +16,15 @@
verdeckt. Gefunden hat es pruef-struktur.
Richtig sind `gate.css` (die Farbwerte des Hauses) und `haus.css`. -->
<link rel="stylesheet" href="assets/css/gate.css?v=202609222340" />
<link rel="stylesheet" href="assets/css/haus.css?v=202609222340" />
<link rel="stylesheet" href="assets/css/gate.css?v=202609222345" />
<link rel="stylesheet" href="assets/css/haus.css?v=202609222345" />
<!-- Ohne diese drei nimmt ein iPhone einen Bildschirmausschnitt als
Symbol, Android zeichnet die Leiste weiss, und die Seite oeffnet
ausserhalb der App -- auf einer Seite, die genau erklaeren soll,
WARUM das Telefon nicht klingelt, ist das besonders unpassend. -->
<link rel="manifest" href="/workspace/crew.webmanifest" />
<meta name="theme-color" content="#06090f" />
<link rel="apple-touch-icon" href="/assets/img/app-symbole/workspace-180.png?v=202609222340" />
<link rel="apple-touch-icon" href="/assets/img/app-symbole/workspace-180.png?v=202609222345" />
<style>
/* Bewusst in der Seite und nicht in einer eigenen Datei: Diese Seite
soll auch dann noch etwas anzeigen, wenn genau das schiefgeht,
@@ -126,7 +126,7 @@
<script src="assets/js/anruf-probe.js?v=202609222340" defer></script>
<script src="assets/js/installieren.js?v=202609222340" defer></script>
<script src="assets/js/anruf-probe.js?v=202609222345" defer></script>
<script src="assets/js/installieren.js?v=202609222345" defer></script>
</body>
</html>
+4 -4
View File
@@ -23,25 +23,25 @@
},
"icons": [
{
"src": "/assets/img/app-symbole/workspace-192.png?v=202609222340",
"src": "/assets/img/app-symbole/workspace-192.png?v=202609222345",
"sizes": "192x192",
"type": "image/png",
"purpose": "any"
},
{
"src": "/assets/img/app-symbole/workspace-512.png?v=202609222340",
"src": "/assets/img/app-symbole/workspace-512.png?v=202609222345",
"sizes": "512x512",
"type": "image/png",
"purpose": "any"
},
{
"src": "/assets/img/app-symbole/workspace-192-maskable.png?v=202609222340",
"src": "/assets/img/app-symbole/workspace-192-maskable.png?v=202609222345",
"sizes": "192x192",
"type": "image/png",
"purpose": "maskable"
},
{
"src": "/assets/img/app-symbole/workspace-512-maskable.png?v=202609222340",
"src": "/assets/img/app-symbole/workspace-512-maskable.png?v=202609222345",
"sizes": "512x512",
"type": "image/png",
"purpose": "maskable"
+74
View File
@@ -1967,3 +1967,77 @@ body[data-ton] .kopf-zeile::before {
color: var(--text);
}
.brett-entscheidung[hidden] { display: none; }
/* =====================================================================
DAS ANSCHLAGBRETT (22.09.2026)
=====================================================================
Filipe: „die sachen sollen in der seite vom anschlagbrett immer
automatisch nach 24h von da verschwinden. weil alles hat seine
kategorie und was nicht ist auch nicht um ewig auf der seite zu
bleiben fertig." Dazu: „viel besser gestaltet, übersichtlicher,
moderner, hochwertiger, professioneller" — und ausdrücklich auch
auf dem Handy.
WAS HÄNGT, SIEHT AUS WIE ETWAS, DAS HÄNGT. Eine Ansage vom Team ist
keine Notiz unter vielen: Sie gilt jetzt, für alle, und sie ist in
24 Stunden weg. Deshalb bekommt sie hier eine eigene Sprache —
kräftiger Rand links in der Farbe ihrer Art, ein Band oben, mehr
Luft. Nicht mehr Schmuck, sondern mehr Gewicht.
DIE ART TRÄGT DIE FARBE, und die vier sind das, was `BEREICHE
.anschlag.arten` im Server aufzählt: Ansage, Neue Regel, Hinweis,
Danke an euch. Steht dort morgen eine fünfte, fällt sie hier auf den
neutralen Ton zurück — sichtbar unbeschadet, nur ohne eigene Farbe.
===================================================================== */
[data-bereich="anschlag"] .eintrag-karte {
--anschlag: var(--akzent);
position: relative;
padding-left: 18px;
border-left: 3px solid color-mix(in srgb, var(--anschlag) 65%, transparent);
background:
linear-gradient(100deg,
color-mix(in srgb, var(--anschlag) 10%, transparent) 0%,
color-mix(in srgb, var(--anschlag) 3%, transparent) 26%,
transparent 52%),
linear-gradient(178deg, rgba(10, 14, 22, .96), rgba(5, 8, 14, .98));
}
[data-bereich="anschlag"] .eintrag-karte[data-art="ansage"] { --anschlag: #8ec9ff; }
[data-bereich="anschlag"] .eintrag-karte[data-art="regel"] { --anschlag: #f0c14b; }
[data-bereich="anschlag"] .eintrag-karte[data-art="hinweis"] { --anschlag: #a98bff; }
[data-bereich="anschlag"] .eintrag-karte[data-art="danke"] { --anschlag: #8fd6a6; }
/* ---- Was abgehängt ist ---------------------------------------------- */
/* DIE ZEILE IST LEISE UND ZU. „Von da verschwinden" heißt: nicht mehr
auf dem Brett. Sie steht trotzdem da, weil gelöscht etwas anderes
ist als abgehängt — wer eine Ansage geschrieben hat, soll sie
wiederfinden. */
.anschlag-alt__kopf {
display: flex; align-items: center; gap: 9px;
margin: 26px 0 10px;
font-size: .78rem; font-weight: 700;
letter-spacing: .1em; text-transform: uppercase;
color: var(--text-still);
}
.anschlag-alt__kopf::after {
content: ""; flex: 1 1 auto; height: 1px;
background: linear-gradient(90deg, var(--rand), transparent 70%);
}
.anschlag-alt__zahl {
padding: 1px 8px; border-radius: 999px;
border: 1px solid var(--rand);
font-size: .72rem; letter-spacing: 0;
}
.anschlag-alt { display: grid; gap: 10px; }
/* Sie sind grau, nicht halb durchsichtig: Durchsichtig hieße, dass
das Bühnenbild hindurchscheint — Text auf einem Foto, und ausgerechnet
der, den man selten liest. */
.anschlag-alt .eintrag-karte {
--anschlag: #6b7a8d;
filter: grayscale(.55);
}
@media (forced-colors: active) {
[data-bereich="anschlag"] .eintrag-karte { border-left: 3px solid CanvasText; }
.anschlag-alt__kopf::after { background: CanvasText; }
}
+76
View File
@@ -466,6 +466,18 @@
const k = el('article', 'eintrag-karte');
k.dataset.dringlich = e.dringlichkeit;
k.dataset.status = e.status;
/* DIE ART GEHOERT AN DIE KARTE (22.09.2026).
Am Anschlagbrett traegt sie die Farbe: Ansage, Neue Regel,
Hinweis, Danke an euch. Sie stand bisher nur im Text der Karte
-- eine Auskunft, die man lesen muss, statt einer, die man
sieht.
Das Merkmal steht an JEDER Karte und nicht nur am
Anschlagbrett: Es ist eine Tatsache ueber den Eintrag, keine
Anzeige. Wer sie auf einem anderen Brett braucht, findet sie
vor -- und muss nicht erst diese Zeile aendern. */
if (e.art) k.dataset.art = e.art;
/* DER GANZE KASTEN IST DER WEG ZUM VIDEO (19.09.2026).
@@ -2242,6 +2254,63 @@
ziel.append(kasten);
window.abschnittKlappbar?.(kopf, kasten, `ansteht:${r}`, r === 'vorbei');
}
} else if (bereich === 'anschlag') {
/* =================================================================
DAS ANSCHLAGBRETT: WAS GERADE HAENGT, UND WAS ABGEHAENGT IST
=================================================================
Filipe: „die sachen sollen in der seite vom anschlagbrett
immer automatisch nach 24h von da verschwinden. weil alles
hat seine kategorie und was nicht ist auch nicht um ewig auf
der seite zu bleiben fertig."
WER ENTSCHEIDET, IST DER SERVER. `e.abgehaengt` kommt mit der
Antwort; hier wird nur einsortiert. Die Stunden im Browser
nachzurechnen waere eine zweite Fassung derselben Regel --
und eine davon waere irgendwann aelter als die andere.
ABGEHAENGT HEISST ZUGEKLAPPT, NICHT GELOESCHT. Er sagt „von
DA verschwinden": von der Seite. Wer eine Ansage geschrieben
hat, soll sie wiederfinden; sie rueckwirkend verschwinden zu
lassen waere etwas anderes als sie abzuhaengen. Die Zeile
darunter ist leise und zu -- auf dem Brett selbst steht sie
damit nicht mehr.
================================================================= */
const haengt = sichtbar.filter((e) => !e.abgehaengt);
const ab = sichtbar.filter((e) => e.abgehaengt);
for (const e of haengt) {
const k = karte(e);
karten.set(e.id, k);
ziel.append(k);
}
/* NICHTS HAENGT MEHR, ABER ES GAB ETWAS: Dann steht der
Leersatz des Bretts nicht da (die Liste ist ja nicht leer),
und man saehe eine Seite, auf der nichts ist und nichts
erklaert wird. */
if (!haengt.length && ab.length) {
ziel.append(el('p', 'leer-hinweis',
'Gerade hängt nichts. Was hier stand, ist abgehängt – es gilt nicht mehr.'));
}
if (ab.length) {
const kopf = el('h2', 'anschlag-alt__kopf');
kopf.append(el('span', 'anschlag-alt__wort', 'Abgehängt'));
kopf.append(el('span', 'anschlag-alt__zahl', String(ab.length)));
const kasten = el('div', 'anschlag-alt');
for (const e of ab) {
const k = karte(e);
k.dataset.abgehaengt = 'ja';
karten.set(e.id, k);
kasten.append(k);
}
ziel.append(kopf);
ziel.append(kasten);
/* ZU, SOLANGE NIEMAND SIE AUFMACHT -- derselbe Klappmechanismus
wie bei „Was ansteht". Ein eigener waere ein zweiter, der
sich anders verhaelt. */
window.abschnittKlappbar?.(kopf, kasten, 'anschlag:alt', true);
}
} else {
for (const e of sichtbar) {
const k = karte(e);
@@ -2486,6 +2555,13 @@
(async () => {
bereich = new URLSearchParams(location.search).get('b') || '';
/* WELCHES BRETT DAS IST, STEHT AM KOERPER (22.09.2026).
Die Stilvorlage braucht es, um dem Anschlagbrett eine eigene
Sprache zu geben. Sie darueber zu setzen statt ueber eine
zusaetzliche Klasse an jeder Karte heisst: EINE Stelle, und sie
stimmt auch fuer alles, was morgen dazukommt. */
if (/^[a-z]+$/.test(bereich)) document.body.dataset.bereich = bereich;
/* Wird eine Bewertung gesetzt, baut sich die Liste neu auf. Der
Zuhoerer haengt am Dokument und wird genau einmal gesetzt --
+18 -18
View File
@@ -12,19 +12,19 @@
Ton wie die Kopfleiste darunter (#06090f), damit Leiste und Seite
eine Flaeche sind statt zweier. -->
<meta name="theme-color" content="#06090f" />
<link rel="icon" type="image/png" href="/assets/img/app-symbole/workspace-32.png?v=202609222340" />
<link rel="apple-touch-icon" href="/assets/img/app-symbole/workspace-180.png?v=202609222340" />
<link rel="stylesheet" href="assets/css/gate.css?v=202609222340" />
<link rel="stylesheet" href="assets/css/start.css?v=202609222340" />
<link rel="stylesheet" href="assets/css/aufgaben.css?v=202609222340" />
<link rel="stylesheet" href="assets/css/module.css?v=202609222340" />
<link rel="icon" type="image/png" href="/assets/img/app-symbole/workspace-32.png?v=202609222345" />
<link rel="apple-touch-icon" href="/assets/img/app-symbole/workspace-180.png?v=202609222345" />
<link rel="stylesheet" href="assets/css/gate.css?v=202609222345" />
<link rel="stylesheet" href="assets/css/start.css?v=202609222345" />
<link rel="stylesheet" href="assets/css/aufgaben.css?v=202609222345" />
<link rel="stylesheet" href="assets/css/module.css?v=202609222345" />
<!-- haus.css MUSS die letzte Stilvorlage sein (10.09.2026).
Auf der Agenturadresse ist sie leer -- das Haus hier IST der
Grundzustand. Auf der Adresse von Team Dogi biegt der Server
genau diesen Dateinamen auf crew-haus.css um, und die Seite
kommt schon beim ERSTEN Abruf in Lila und Babyblau an --
ohne Umfaerben im Browser, ohne Flackern. -->
<link rel="stylesheet" href="assets/css/haus.css?v=202609222340" />
<link rel="stylesheet" href="assets/css/haus.css?v=202609222345" />
</head>
<body class="start">
@@ -367,17 +367,17 @@
<!-- TEXTFORM ZUERST (21.09.2026): Die Seite fragt beim Zeichnen nach
`window.Textform`. Kaeme sie spaeter, waere der erste Eintrag ohne
Gestaltung. Kein `defer`, damit sie wirklich vorher dasteht. -->
<script src="assets/js/textform.js?v=202609222340"></script>
<script src="assets/js/meldung.js?v=202609222340" defer></script>
<script src="assets/js/hochladen.js?v=202609222340" defer></script>
<script src="assets/js/nachfrage.js?v=202609222340" defer></script>
<script src="assets/js/textform.js?v=202609222345"></script>
<script src="assets/js/meldung.js?v=202609222345" defer></script>
<script src="assets/js/hochladen.js?v=202609222345" defer></script>
<script src="assets/js/nachfrage.js?v=202609222345" defer></script>
<script src="assets/js/wahl.js?v=202609222340" defer></script>
<script src="assets/js/bereiche.js?v=202609222340" defer></script>
<script src="assets/js/installieren.js?v=202609222340" defer></script>
<script src="assets/js/kopf.js?v=202609222340" defer></script>
<script src="assets/js/glocke.js?v=202609222340" defer></script>
<script src="assets/js/zuteilung.js?v=202609222340" defer></script>
<script src="assets/js/aufgaben.js?v=202609222340" defer></script>
<script src="assets/js/wahl.js?v=202609222345" defer></script>
<script src="assets/js/bereiche.js?v=202609222345" defer></script>
<script src="assets/js/installieren.js?v=202609222345" defer></script>
<script src="assets/js/kopf.js?v=202609222345" defer></script>
<script src="assets/js/glocke.js?v=202609222345" defer></script>
<script src="assets/js/zuteilung.js?v=202609222345" defer></script>
<script src="assets/js/aufgaben.js?v=202609222345" defer></script>
</body>
</html>
+16 -16
View File
@@ -12,20 +12,20 @@
Ton wie die Kopfleiste darunter (#06090f), damit Leiste und Seite
eine Flaeche sind statt zweier. -->
<meta name="theme-color" content="#06090f" />
<link rel="icon" type="image/png" href="/assets/img/app-symbole/workspace-32.png?v=202609222340" />
<link rel="apple-touch-icon" href="/assets/img/app-symbole/workspace-180.png?v=202609222340" />
<link rel="stylesheet" href="assets/css/gate.css?v=202609222340" />
<link rel="stylesheet" href="assets/css/start.css?v=202609222340" />
<link rel="stylesheet" href="assets/css/aufgaben.css?v=202609222340" />
<link rel="stylesheet" href="assets/css/automation.css?v=202609222340" />
<link rel="stylesheet" href="assets/css/module.css?v=202609222340" />
<link rel="icon" type="image/png" href="/assets/img/app-symbole/workspace-32.png?v=202609222345" />
<link rel="apple-touch-icon" href="/assets/img/app-symbole/workspace-180.png?v=202609222345" />
<link rel="stylesheet" href="assets/css/gate.css?v=202609222345" />
<link rel="stylesheet" href="assets/css/start.css?v=202609222345" />
<link rel="stylesheet" href="assets/css/aufgaben.css?v=202609222345" />
<link rel="stylesheet" href="assets/css/automation.css?v=202609222345" />
<link rel="stylesheet" href="assets/css/module.css?v=202609222345" />
<!-- haus.css MUSS die letzte Stilvorlage sein (10.09.2026).
Auf der Agenturadresse ist sie leer -- das Haus hier IST der
Grundzustand. Auf der Adresse von Team Dogi biegt der Server
genau diesen Dateinamen auf crew-haus.css um, und die Seite
kommt schon beim ERSTEN Abruf in Lila und Babyblau an --
ohne Umfaerben im Browser, ohne Flackern. -->
<link rel="stylesheet" href="assets/css/haus.css?v=202609222340" />
<link rel="stylesheet" href="assets/css/haus.css?v=202609222345" />
</head>
<body class="start">
@@ -168,15 +168,15 @@
</main>
<script src="assets/js/meldung.js?v=202609222340" defer></script>
<script src="assets/js/nachfrage.js?v=202609222340" defer></script>
<script src="assets/js/meldung.js?v=202609222345" defer></script>
<script src="assets/js/nachfrage.js?v=202609222345" defer></script>
<script src="assets/js/wahl.js?v=202609222340" defer></script>
<script src="assets/js/bereiche.js?v=202609222340" defer></script>
<script src="assets/js/installieren.js?v=202609222340" defer></script>
<script src="assets/js/kopf.js?v=202609222340" defer></script>
<script src="assets/js/glocke.js?v=202609222340" defer></script>
<script src="assets/js/automation.js?v=202609222340" defer></script>
<script src="assets/js/wahl.js?v=202609222345" defer></script>
<script src="assets/js/bereiche.js?v=202609222345" defer></script>
<script src="assets/js/installieren.js?v=202609222345" defer></script>
<script src="assets/js/kopf.js?v=202609222345" defer></script>
<script src="assets/js/glocke.js?v=202609222345" defer></script>
<script src="assets/js/automation.js?v=202609222345" defer></script>
</body>
</html>
+16 -16
View File
@@ -7,14 +7,14 @@
<meta name="robots" content="noindex, nofollow" />
<link rel="manifest" href="/workspace/app.webmanifest" />
<meta name="theme-color" content="#06090f" />
<link rel="icon" type="image/png" href="/assets/img/app-symbole/workspace-32.png?v=202609222340" />
<link rel="apple-touch-icon" href="/assets/img/app-symbole/workspace-180.png?v=202609222340" />
<link rel="stylesheet" href="assets/css/gate.css?v=202609222340" />
<link rel="stylesheet" href="assets/css/start.css?v=202609222340" />
<link rel="stylesheet" href="assets/css/aufgaben.css?v=202609222340" />
<link rel="stylesheet" href="assets/css/entwicklung.css?v=202609222340" />
<link rel="stylesheet" href="assets/css/module.css?v=202609222340" />
<link rel="stylesheet" href="assets/css/haus.css?v=202609222340" />
<link rel="icon" type="image/png" href="/assets/img/app-symbole/workspace-32.png?v=202609222345" />
<link rel="apple-touch-icon" href="/assets/img/app-symbole/workspace-180.png?v=202609222345" />
<link rel="stylesheet" href="assets/css/gate.css?v=202609222345" />
<link rel="stylesheet" href="assets/css/start.css?v=202609222345" />
<link rel="stylesheet" href="assets/css/aufgaben.css?v=202609222345" />
<link rel="stylesheet" href="assets/css/entwicklung.css?v=202609222345" />
<link rel="stylesheet" href="assets/css/module.css?v=202609222345" />
<link rel="stylesheet" href="assets/css/haus.css?v=202609222345" />
</head>
<body class="start">
@@ -180,15 +180,15 @@
</main>
<script src="assets/js/meldung.js?v=202609222340" defer></script>
<script src="assets/js/nachfrage.js?v=202609222340" defer></script>
<script src="assets/js/meldung.js?v=202609222345" defer></script>
<script src="assets/js/nachfrage.js?v=202609222345" defer></script>
<script src="assets/js/wahl.js?v=202609222340" defer></script>
<script src="assets/js/bereiche.js?v=202609222340" defer></script>
<script src="assets/js/installieren.js?v=202609222340" defer></script>
<script src="assets/js/kopf.js?v=202609222340" defer></script>
<script src="assets/js/holen.js?v=202609222340" defer></script>
<script src="assets/js/befinden.js?v=202609222340" defer></script>
<script src="assets/js/wahl.js?v=202609222345" defer></script>
<script src="assets/js/bereiche.js?v=202609222345" defer></script>
<script src="assets/js/installieren.js?v=202609222345" defer></script>
<script src="assets/js/kopf.js?v=202609222345" defer></script>
<script src="assets/js/holen.js?v=202609222345" defer></script>
<script src="assets/js/befinden.js?v=202609222345" defer></script>
</body>
</html>
+22 -22
View File
@@ -12,24 +12,24 @@
Ton wie die Kopfleiste darunter (#06090f), damit Leiste und Seite
eine Flaeche sind statt zweier. -->
<meta name="theme-color" content="#06090f" />
<link rel="icon" type="image/png" href="/assets/img/app-symbole/workspace-32.png?v=202609222340" />
<link rel="apple-touch-icon" href="/assets/img/app-symbole/workspace-180.png?v=202609222340" />
<link rel="stylesheet" href="assets/css/gate.css?v=202609222340" />
<link rel="stylesheet" href="assets/css/start.css?v=202609222340" />
<link rel="stylesheet" href="assets/css/aufgaben.css?v=202609222340" />
<link rel="stylesheet" href="assets/css/bereich.css?v=202609222340" />
<link rel="icon" type="image/png" href="/assets/img/app-symbole/workspace-32.png?v=202609222345" />
<link rel="apple-touch-icon" href="/assets/img/app-symbole/workspace-180.png?v=202609222345" />
<link rel="stylesheet" href="assets/css/gate.css?v=202609222345" />
<link rel="stylesheet" href="assets/css/start.css?v=202609222345" />
<link rel="stylesheet" href="assets/css/aufgaben.css?v=202609222345" />
<link rel="stylesheet" href="assets/css/bereich.css?v=202609222345" />
<!-- Wegen des Blocks „Willst du dazugehoeren?" auf dem Brett
„Mitmachen". Eine eigene Kopie der Regel hier waere die zweite
Stelle, an der dieselbe Sache anders aussieht. -->
<link rel="stylesheet" href="assets/css/bewerbung.css?v=202609222340" />
<link rel="stylesheet" href="assets/css/module.css?v=202609222340" />
<link rel="stylesheet" href="assets/css/bewerbung.css?v=202609222345" />
<link rel="stylesheet" href="assets/css/module.css?v=202609222345" />
<!-- haus.css MUSS die letzte Stilvorlage sein (10.09.2026).
Auf der Agenturadresse ist sie leer -- das Haus hier IST der
Grundzustand. Auf der Adresse von Team Dogi biegt der Server
genau diesen Dateinamen auf crew-haus.css um, und die Seite
kommt schon beim ERSTEN Abruf in Lila und Babyblau an --
ohne Umfaerben im Browser, ohne Flackern. -->
<link rel="stylesheet" href="assets/css/haus.css?v=202609222340" />
<link rel="stylesheet" href="assets/css/haus.css?v=202609222345" />
</head>
<body class="start">
@@ -304,19 +304,19 @@
<!-- TEXTFORM ZUERST (21.09.2026): Die Seite fragt beim Zeichnen nach
`window.Textform`. Kaeme sie spaeter, waere der erste Eintrag ohne
Gestaltung. Kein `defer`, damit sie wirklich vorher dasteht. -->
<script src="assets/js/textform.js?v=202609222340"></script>
<script src="assets/js/meldung.js?v=202609222340" defer></script>
<script src="assets/js/nachfrage.js?v=202609222340" defer></script>
<script src="assets/js/textform.js?v=202609222345"></script>
<script src="assets/js/meldung.js?v=202609222345" defer></script>
<script src="assets/js/nachfrage.js?v=202609222345" defer></script>
<script src="assets/js/wahl.js?v=202609222340" defer></script>
<script src="assets/js/bereiche.js?v=202609222340" defer></script>
<script src="assets/js/installieren.js?v=202609222340" defer></script>
<script src="assets/js/kopf.js?v=202609222340" defer></script>
<script src="assets/js/glocke.js?v=202609222340" defer></script>
<script src="assets/js/checkliste.js?v=202609222340" defer></script>
<script src="assets/js/ampel.js?v=202609222340" defer></script>
<script src="assets/js/schulung.js?v=202609222340" defer></script>
<script src="assets/js/holen.js?v=202609222340" defer></script>
<script src="assets/js/bereich.js?v=202609222340" defer></script>
<script src="assets/js/wahl.js?v=202609222345" defer></script>
<script src="assets/js/bereiche.js?v=202609222345" defer></script>
<script src="assets/js/installieren.js?v=202609222345" defer></script>
<script src="assets/js/kopf.js?v=202609222345" defer></script>
<script src="assets/js/glocke.js?v=202609222345" defer></script>
<script src="assets/js/checkliste.js?v=202609222345" defer></script>
<script src="assets/js/ampel.js?v=202609222345" defer></script>
<script src="assets/js/schulung.js?v=202609222345" defer></script>
<script src="assets/js/holen.js?v=202609222345" defer></script>
<script src="assets/js/bereich.js?v=202609222345" defer></script>
</body>
</html>
+18 -18
View File
@@ -7,17 +7,17 @@
<meta name="robots" content="noindex, nofollow" />
<link rel="manifest" href="/workspace/app.webmanifest" />
<meta name="theme-color" content="#06090f" />
<link rel="icon" type="image/png" href="/assets/img/app-symbole/workspace-32.png?v=202609222340" />
<link rel="apple-touch-icon" href="/assets/img/app-symbole/workspace-180.png?v=202609222340" />
<link rel="stylesheet" href="assets/css/gate.css?v=202609222340" />
<link rel="stylesheet" href="assets/css/start.css?v=202609222340" />
<link rel="stylesheet" href="assets/css/aufgaben.css?v=202609222340" />
<link rel="stylesheet" href="assets/css/bereich.css?v=202609222340" />
<link rel="stylesheet" href="assets/css/treff.css?v=202609222340" />
<link rel="stylesheet" href="assets/css/bewerbung.css?v=202609222340" />
<link rel="stylesheet" href="assets/css/module.css?v=202609222340" />
<link rel="icon" type="image/png" href="/assets/img/app-symbole/workspace-32.png?v=202609222345" />
<link rel="apple-touch-icon" href="/assets/img/app-symbole/workspace-180.png?v=202609222345" />
<link rel="stylesheet" href="assets/css/gate.css?v=202609222345" />
<link rel="stylesheet" href="assets/css/start.css?v=202609222345" />
<link rel="stylesheet" href="assets/css/aufgaben.css?v=202609222345" />
<link rel="stylesheet" href="assets/css/bereich.css?v=202609222345" />
<link rel="stylesheet" href="assets/css/treff.css?v=202609222345" />
<link rel="stylesheet" href="assets/css/bewerbung.css?v=202609222345" />
<link rel="stylesheet" href="assets/css/module.css?v=202609222345" />
<!-- haus.css MUSS die letzte Stilvorlage sein - siehe treff-regeln.html. -->
<link rel="stylesheet" href="assets/css/haus.css?v=202609222340" />
<link rel="stylesheet" href="assets/css/haus.css?v=202609222345" />
</head>
<body class="start">
@@ -108,14 +108,14 @@
</main>
<!-- Der Fuß gehört zu jeder Seite - siehe pruef-css-klassen. -->
<script src="assets/js/meldung.js?v=202609222340" defer></script>
<script src="assets/js/nachfrage.js?v=202609222340" defer></script>
<script src="assets/js/meldung.js?v=202609222345" defer></script>
<script src="assets/js/nachfrage.js?v=202609222345" defer></script>
<script src="assets/js/wahl.js?v=202609222340" defer></script>
<script src="assets/js/bereiche.js?v=202609222340" defer></script>
<script src="assets/js/installieren.js?v=202609222340" defer></script>
<script src="assets/js/kopf.js?v=202609222340" defer></script>
<script src="assets/js/auskunft.js?v=202609222340" defer></script>
<script src="assets/js/bewerben.js?v=202609222340" defer></script>
<script src="assets/js/wahl.js?v=202609222345" defer></script>
<script src="assets/js/bereiche.js?v=202609222345" defer></script>
<script src="assets/js/installieren.js?v=202609222345" defer></script>
<script src="assets/js/kopf.js?v=202609222345" defer></script>
<script src="assets/js/auskunft.js?v=202609222345" defer></script>
<script src="assets/js/bewerben.js?v=202609222345" defer></script>
</body>
</html>
+17 -17
View File
@@ -7,16 +7,16 @@
<meta name="robots" content="noindex, nofollow" />
<link rel="manifest" href="/workspace/app.webmanifest" />
<meta name="theme-color" content="#06090f" />
<link rel="icon" type="image/png" href="/assets/img/app-symbole/workspace-32.png?v=202609222340" />
<link rel="apple-touch-icon" href="/assets/img/app-symbole/workspace-180.png?v=202609222340" />
<link rel="stylesheet" href="assets/css/gate.css?v=202609222340" />
<link rel="stylesheet" href="assets/css/start.css?v=202609222340" />
<link rel="stylesheet" href="assets/css/aufgaben.css?v=202609222340" />
<link rel="stylesheet" href="assets/css/entwicklung.css?v=202609222340" />
<link rel="stylesheet" href="assets/css/bewerbung.css?v=202609222340" />
<link rel="stylesheet" href="assets/css/module.css?v=202609222340" />
<link rel="icon" type="image/png" href="/assets/img/app-symbole/workspace-32.png?v=202609222345" />
<link rel="apple-touch-icon" href="/assets/img/app-symbole/workspace-180.png?v=202609222345" />
<link rel="stylesheet" href="assets/css/gate.css?v=202609222345" />
<link rel="stylesheet" href="assets/css/start.css?v=202609222345" />
<link rel="stylesheet" href="assets/css/aufgaben.css?v=202609222345" />
<link rel="stylesheet" href="assets/css/entwicklung.css?v=202609222345" />
<link rel="stylesheet" href="assets/css/bewerbung.css?v=202609222345" />
<link rel="stylesheet" href="assets/css/module.css?v=202609222345" />
<!-- haus.css MUSS die letzte Stilvorlage sein - siehe treff-regeln.html. -->
<link rel="stylesheet" href="assets/css/haus.css?v=202609222340" />
<link rel="stylesheet" href="assets/css/haus.css?v=202609222345" />
</head>
<body class="start">
@@ -80,15 +80,15 @@
</main>
<script src="assets/js/meldung.js?v=202609222340" defer></script>
<script src="assets/js/nachfrage.js?v=202609222340" defer></script>
<script src="assets/js/meldung.js?v=202609222345" defer></script>
<script src="assets/js/nachfrage.js?v=202609222345" defer></script>
<script src="assets/js/wahl.js?v=202609222340" defer></script>
<script src="assets/js/bereiche.js?v=202609222340" defer></script>
<script src="assets/js/installieren.js?v=202609222340" defer></script>
<script src="assets/js/kopf.js?v=202609222340" defer></script>
<script src="assets/js/auskunft.js?v=202609222340" defer></script>
<script src="assets/js/bewerbungen.js?v=202609222340" defer></script>
<script src="assets/js/wahl.js?v=202609222345" defer></script>
<script src="assets/js/bereiche.js?v=202609222345" defer></script>
<script src="assets/js/installieren.js?v=202609222345" defer></script>
<script src="assets/js/kopf.js?v=202609222345" defer></script>
<script src="assets/js/auskunft.js?v=202609222345" defer></script>
<script src="assets/js/bewerbungen.js?v=202609222345" defer></script>
</body>
</html>
+17 -17
View File
@@ -12,20 +12,20 @@
Ton wie die Kopfleiste darunter (#06090f), damit Leiste und Seite
eine Flaeche sind statt zweier. -->
<meta name="theme-color" content="#06090f" />
<link rel="icon" type="image/png" href="/assets/img/app-symbole/workspace-32.png?v=202609222340" />
<link rel="apple-touch-icon" href="/assets/img/app-symbole/workspace-180.png?v=202609222340" />
<link rel="stylesheet" href="assets/css/gate.css?v=202609222340" />
<link rel="stylesheet" href="assets/css/start.css?v=202609222340" />
<link rel="stylesheet" href="assets/css/aufgaben.css?v=202609222340" />
<link rel="stylesheet" href="assets/css/calls.css?v=202609222340" />
<link rel="stylesheet" href="assets/css/module.css?v=202609222340" />
<link rel="icon" type="image/png" href="/assets/img/app-symbole/workspace-32.png?v=202609222345" />
<link rel="apple-touch-icon" href="/assets/img/app-symbole/workspace-180.png?v=202609222345" />
<link rel="stylesheet" href="assets/css/gate.css?v=202609222345" />
<link rel="stylesheet" href="assets/css/start.css?v=202609222345" />
<link rel="stylesheet" href="assets/css/aufgaben.css?v=202609222345" />
<link rel="stylesheet" href="assets/css/calls.css?v=202609222345" />
<link rel="stylesheet" href="assets/css/module.css?v=202609222345" />
<!-- haus.css MUSS die letzte Stilvorlage sein (10.09.2026).
Auf der Agenturadresse ist sie leer -- das Haus hier IST der
Grundzustand. Auf der Adresse von Team Dogi biegt der Server
genau diesen Dateinamen auf crew-haus.css um, und die Seite
kommt schon beim ERSTEN Abruf in Lila und Babyblau an --
ohne Umfaerben im Browser, ohne Flackern. -->
<link rel="stylesheet" href="assets/css/haus.css?v=202609222340" />
<link rel="stylesheet" href="assets/css/haus.css?v=202609222345" />
</head>
<body class="start">
@@ -89,15 +89,15 @@
</main>
<script src="assets/js/meldung.js?v=202609222340" defer></script>
<script src="assets/js/nachfrage.js?v=202609222340" defer></script>
<script src="assets/js/meldung.js?v=202609222345" defer></script>
<script src="assets/js/nachfrage.js?v=202609222345" defer></script>
<script src="assets/js/ki.js?v=202609222340" defer></script>
<script src="assets/js/wahl.js?v=202609222340" defer></script>
<script src="assets/js/bereiche.js?v=202609222340" defer></script>
<script src="assets/js/installieren.js?v=202609222340" defer></script>
<script src="assets/js/kopf.js?v=202609222340" defer></script>
<script src="assets/js/glocke.js?v=202609222340" defer></script>
<script src="assets/js/calls.js?v=202609222340" defer></script>
<script src="assets/js/ki.js?v=202609222345" defer></script>
<script src="assets/js/wahl.js?v=202609222345" defer></script>
<script src="assets/js/bereiche.js?v=202609222345" defer></script>
<script src="assets/js/installieren.js?v=202609222345" defer></script>
<script src="assets/js/kopf.js?v=202609222345" defer></script>
<script src="assets/js/glocke.js?v=202609222345" defer></script>
<script src="assets/js/calls.js?v=202609222345" defer></script>
</body>
</html>
+19 -19
View File
@@ -12,26 +12,26 @@
Ton wie die Kopfleiste darunter (#06090f), damit Leiste und Seite
eine Flaeche sind statt zweier. -->
<meta name="theme-color" content="#06090f" />
<link rel="icon" type="image/png" href="/assets/img/app-symbole/workspace-32.png?v=202609222340" />
<link rel="apple-touch-icon" href="/assets/img/app-symbole/workspace-180.png?v=202609222340" />
<link rel="stylesheet" href="assets/css/gate.css?v=202609222340" />
<link rel="stylesheet" href="assets/css/start.css?v=202609222340" />
<link rel="icon" type="image/png" href="/assets/img/app-symbole/workspace-32.png?v=202609222345" />
<link rel="apple-touch-icon" href="/assets/img/app-symbole/workspace-180.png?v=202609222345" />
<link rel="stylesheet" href="assets/css/gate.css?v=202609222345" />
<link rel="stylesheet" href="assets/css/start.css?v=202609222345" />
<!-- 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=202609222340" />
<link rel="stylesheet" href="assets/css/chat.css?v=202609222340" />
<link rel="stylesheet" href="assets/css/module.css?v=202609222340" />
<link rel="stylesheet" href="assets/css/aufgaben.css?v=202609222345" />
<link rel="stylesheet" href="assets/css/chat.css?v=202609222345" />
<link rel="stylesheet" href="assets/css/module.css?v=202609222345" />
<!-- haus.css MUSS die letzte Stilvorlage sein (10.09.2026).
Auf der Agenturadresse ist sie leer -- das Haus hier IST der
Grundzustand. Auf der Adresse von Team Dogi biegt der Server
genau diesen Dateinamen auf crew-haus.css um, und die Seite
kommt schon beim ERSTEN Abruf in Lila und Babyblau an --
ohne Umfaerben im Browser, ohne Flackern. -->
<link rel="stylesheet" href="assets/css/haus.css?v=202609222340" />
<link rel="stylesheet" href="assets/css/haus.css?v=202609222345" />
</head>
<body class="start">
@@ -415,25 +415,25 @@
</form>
</dialog>
<script src="assets/js/bereiche.js?v=202609222340"></script>
<script src="assets/js/bereiche.js?v=202609222345"></script>
<!-- TEXTFORM VOR ALLEM ANDEREN (21.09.2026): chat.js und bereich.js
fragen beim Zeichnen nach `window.Textform`. Kaeme sie spaeter,
waere die erste gezeichnete Nachricht ohne Gestaltung -- und das
faellt nur dem auf, der genau hinsieht. KEIN `defer`, damit sie
wirklich vor den anderen dasteht. -->
<script src="assets/js/textform.js?v=202609222340"></script>
<script src="assets/js/meldung.js?v=202609222340" defer></script>
<script src="assets/js/hochladen.js?v=202609222340" defer></script>
<script src="assets/js/nachfrage.js?v=202609222340" defer></script>
<script src="assets/js/wahl.js?v=202609222340" defer></script>
<script src="assets/js/kopf.js?v=202609222340"></script>
<script src="assets/js/glocke.js?v=202609222340"></script>
<script src="assets/js/textform.js?v=202609222345"></script>
<script src="assets/js/meldung.js?v=202609222345" defer></script>
<script src="assets/js/hochladen.js?v=202609222345" defer></script>
<script src="assets/js/nachfrage.js?v=202609222345" defer></script>
<script src="assets/js/wahl.js?v=202609222345" defer></script>
<script src="assets/js/kopf.js?v=202609222345"></script>
<script src="assets/js/glocke.js?v=202609222345"></script>
<!-- ANRUF VOR CHAT (18.09.2026): anruf.js stellt `window.anrufStarten`
bereit, und chat.js baut die Knoepfe nur, wenn es das gibt.
Andersherum waere die Reihenfolge eine stille Abhaengigkeit --
die Knoepfe fehlten, und niemand wuesste warum. -->
<script src="assets/js/anruf.js?v=202609222340"></script>
<script src="assets/js/chat.js?v=202609222340"></script>
<script src="assets/js/installieren.js?v=202609222340" defer></script>
<script src="assets/js/anruf.js?v=202609222345"></script>
<script src="assets/js/chat.js?v=202609222345"></script>
<script src="assets/js/installieren.js?v=202609222345" defer></script>
</body>
</html>
+17 -17
View File
@@ -12,20 +12,20 @@
Ton wie die Kopfleiste darunter (#06090f), damit Leiste und Seite
eine Flaeche sind statt zweier. -->
<meta name="theme-color" content="#06090f" />
<link rel="icon" type="image/png" href="/assets/img/app-symbole/workspace-32.png?v=202609222340" />
<link rel="apple-touch-icon" href="/assets/img/app-symbole/workspace-180.png?v=202609222340" />
<link rel="stylesheet" href="assets/css/gate.css?v=202609222340" />
<link rel="stylesheet" href="assets/css/start.css?v=202609222340" />
<link rel="stylesheet" href="assets/css/aufgaben.css?v=202609222340" />
<link rel="stylesheet" href="assets/css/content.css?v=202609222340" />
<link rel="stylesheet" href="assets/css/module.css?v=202609222340" />
<link rel="icon" type="image/png" href="/assets/img/app-symbole/workspace-32.png?v=202609222345" />
<link rel="apple-touch-icon" href="/assets/img/app-symbole/workspace-180.png?v=202609222345" />
<link rel="stylesheet" href="assets/css/gate.css?v=202609222345" />
<link rel="stylesheet" href="assets/css/start.css?v=202609222345" />
<link rel="stylesheet" href="assets/css/aufgaben.css?v=202609222345" />
<link rel="stylesheet" href="assets/css/content.css?v=202609222345" />
<link rel="stylesheet" href="assets/css/module.css?v=202609222345" />
<!-- haus.css MUSS die letzte Stilvorlage sein (10.09.2026).
Auf der Agenturadresse ist sie leer -- das Haus hier IST der
Grundzustand. Auf der Adresse von Team Dogi biegt der Server
genau diesen Dateinamen auf crew-haus.css um, und die Seite
kommt schon beim ERSTEN Abruf in Lila und Babyblau an --
ohne Umfaerben im Browser, ohne Flackern. -->
<link rel="stylesheet" href="assets/css/haus.css?v=202609222340" />
<link rel="stylesheet" href="assets/css/haus.css?v=202609222345" />
</head>
<body class="start">
@@ -179,15 +179,15 @@
</main>
<script src="assets/js/meldung.js?v=202609222340" defer></script>
<script src="assets/js/nachfrage.js?v=202609222340" defer></script>
<script src="assets/js/meldung.js?v=202609222345" defer></script>
<script src="assets/js/nachfrage.js?v=202609222345" defer></script>
<script src="assets/js/wahl.js?v=202609222340" defer></script>
<script src="assets/js/bereiche.js?v=202609222340" defer></script>
<script src="assets/js/installieren.js?v=202609222340" defer></script>
<script src="assets/js/kopf.js?v=202609222340" defer></script>
<script src="assets/js/glocke.js?v=202609222340" defer></script>
<script src="assets/js/checkliste.js?v=202609222340" defer></script>
<script src="assets/js/content.js?v=202609222340" defer></script>
<script src="assets/js/wahl.js?v=202609222345" defer></script>
<script src="assets/js/bereiche.js?v=202609222345" defer></script>
<script src="assets/js/installieren.js?v=202609222345" defer></script>
<script src="assets/js/kopf.js?v=202609222345" defer></script>
<script src="assets/js/glocke.js?v=202609222345" defer></script>
<script src="assets/js/checkliste.js?v=202609222345" defer></script>
<script src="assets/js/content.js?v=202609222345" defer></script>
</body>
</html>
+6 -6
View File
@@ -36,15 +36,15 @@
<link rel="preload" as="image" href="assets/img/buehne/crew-gate-hoch-580.webp"
type="image/webp" media="(max-width: 899px)" />
<link rel="icon" type="image/png" href="/assets/img/app-symbole/crew-32.png?v=202609222340" />
<link rel="apple-touch-icon" href="/assets/img/app-symbole/crew-180.png?v=202609222340" />
<link rel="stylesheet" href="assets/css/gate.css?v=202609222340" />
<link rel="icon" type="image/png" href="/assets/img/app-symbole/crew-32.png?v=202609222345" />
<link rel="apple-touch-icon" href="/assets/img/app-symbole/crew-180.png?v=202609222345" />
<link rel="stylesheet" href="assets/css/gate.css?v=202609222345" />
<!-- Diese Wand steht NUR auf der Adresse von Team Dogi (ueberall sonst
404, siehe crewWeiche). Sie darf das Haus deshalb direkt nennen
statt ueber den Platzhalter haus.css zu gehen -- und sie MUSS es:
Eine Zugangswand, die sich erst nach dem Umbiegen faerbt, waere
die eine Seite, auf der man das Umfaerben sieht. -->
<link rel="stylesheet" href="assets/css/crew-haus.css?v=202609222340" />
<link rel="stylesheet" href="assets/css/crew-haus.css?v=202609222345" />
</head>
<body class="gate gate--crew">
@@ -459,7 +459,7 @@
<script src="assets/js/gate.js?v=202609222340" defer></script>
<script src="assets/js/installieren.js?v=202609222340" defer></script>
<script src="assets/js/gate.js?v=202609222345" defer></script>
<script src="assets/js/installieren.js?v=202609222345" defer></script>
</body>
</html>
+4 -4
View File
@@ -23,25 +23,25 @@
},
"icons": [
{
"src": "/assets/img/app-symbole/crew-192.png?v=202609222340",
"src": "/assets/img/app-symbole/crew-192.png?v=202609222345",
"sizes": "192x192",
"type": "image/png",
"purpose": "any"
},
{
"src": "/assets/img/app-symbole/crew-512.png?v=202609222340",
"src": "/assets/img/app-symbole/crew-512.png?v=202609222345",
"sizes": "512x512",
"type": "image/png",
"purpose": "any"
},
{
"src": "/assets/img/app-symbole/crew-192-maskable.png?v=202609222340",
"src": "/assets/img/app-symbole/crew-192-maskable.png?v=202609222345",
"sizes": "192x192",
"type": "image/png",
"purpose": "maskable"
},
{
"src": "/assets/img/app-symbole/crew-512-maskable.png?v=202609222340",
"src": "/assets/img/app-symbole/crew-512-maskable.png?v=202609222345",
"sizes": "512x512",
"type": "image/png",
"purpose": "maskable"
+17 -17
View File
@@ -12,20 +12,20 @@
Ton wie die Kopfleiste darunter (#06090f), damit Leiste und Seite
eine Flaeche sind statt zweier. -->
<meta name="theme-color" content="#06090f" />
<link rel="icon" type="image/png" href="/assets/img/app-symbole/workspace-32.png?v=202609222340" />
<link rel="apple-touch-icon" href="/assets/img/app-symbole/workspace-180.png?v=202609222340" />
<link rel="stylesheet" href="assets/css/gate.css?v=202609222340" />
<link rel="stylesheet" href="assets/css/start.css?v=202609222340" />
<link rel="stylesheet" href="assets/css/aufgaben.css?v=202609222340" />
<link rel="stylesheet" href="assets/css/dateien.css?v=202609222340" />
<link rel="stylesheet" href="assets/css/module.css?v=202609222340" />
<link rel="icon" type="image/png" href="/assets/img/app-symbole/workspace-32.png?v=202609222345" />
<link rel="apple-touch-icon" href="/assets/img/app-symbole/workspace-180.png?v=202609222345" />
<link rel="stylesheet" href="assets/css/gate.css?v=202609222345" />
<link rel="stylesheet" href="assets/css/start.css?v=202609222345" />
<link rel="stylesheet" href="assets/css/aufgaben.css?v=202609222345" />
<link rel="stylesheet" href="assets/css/dateien.css?v=202609222345" />
<link rel="stylesheet" href="assets/css/module.css?v=202609222345" />
<!-- haus.css MUSS die letzte Stilvorlage sein (10.09.2026).
Auf der Agenturadresse ist sie leer -- das Haus hier IST der
Grundzustand. Auf der Adresse von Team Dogi biegt der Server
genau diesen Dateinamen auf crew-haus.css um, und die Seite
kommt schon beim ERSTEN Abruf in Lila und Babyblau an --
ohne Umfaerben im Browser, ohne Flackern. -->
<link rel="stylesheet" href="assets/css/haus.css?v=202609222340" />
<link rel="stylesheet" href="assets/css/haus.css?v=202609222345" />
</head>
<body class="start">
@@ -108,15 +108,15 @@
</main>
<script src="assets/js/meldung.js?v=202609222340" defer></script>
<script src="assets/js/hochladen.js?v=202609222340" defer></script>
<script src="assets/js/nachfrage.js?v=202609222340" defer></script>
<script src="assets/js/meldung.js?v=202609222345" defer></script>
<script src="assets/js/hochladen.js?v=202609222345" defer></script>
<script src="assets/js/nachfrage.js?v=202609222345" defer></script>
<script src="assets/js/wahl.js?v=202609222340" defer></script>
<script src="assets/js/bereiche.js?v=202609222340" defer></script>
<script src="assets/js/installieren.js?v=202609222340" defer></script>
<script src="assets/js/kopf.js?v=202609222340" defer></script>
<script src="assets/js/glocke.js?v=202609222340" defer></script>
<script src="assets/js/dateien.js?v=202609222340" defer></script>
<script src="assets/js/wahl.js?v=202609222345" defer></script>
<script src="assets/js/bereiche.js?v=202609222345" defer></script>
<script src="assets/js/installieren.js?v=202609222345" defer></script>
<script src="assets/js/kopf.js?v=202609222345" defer></script>
<script src="assets/js/glocke.js?v=202609222345" defer></script>
<script src="assets/js/dateien.js?v=202609222345" defer></script>
</body>
</html>
+16 -16
View File
@@ -7,14 +7,14 @@
<meta name="robots" content="noindex, nofollow" />
<link rel="manifest" href="/workspace/app.webmanifest" />
<meta name="theme-color" content="#06090f" />
<link rel="icon" type="image/png" href="/assets/img/app-symbole/workspace-32.png?v=202609222340" />
<link rel="apple-touch-icon" href="/assets/img/app-symbole/workspace-180.png?v=202609222340" />
<link rel="stylesheet" href="assets/css/gate.css?v=202609222340" />
<link rel="stylesheet" href="assets/css/start.css?v=202609222340" />
<link rel="stylesheet" href="assets/css/aufgaben.css?v=202609222340" />
<link rel="stylesheet" href="assets/css/entwicklung.css?v=202609222340" />
<link rel="stylesheet" href="assets/css/module.css?v=202609222340" />
<link rel="stylesheet" href="assets/css/haus.css?v=202609222340" />
<link rel="icon" type="image/png" href="/assets/img/app-symbole/workspace-32.png?v=202609222345" />
<link rel="apple-touch-icon" href="/assets/img/app-symbole/workspace-180.png?v=202609222345" />
<link rel="stylesheet" href="assets/css/gate.css?v=202609222345" />
<link rel="stylesheet" href="assets/css/start.css?v=202609222345" />
<link rel="stylesheet" href="assets/css/aufgaben.css?v=202609222345" />
<link rel="stylesheet" href="assets/css/entwicklung.css?v=202609222345" />
<link rel="stylesheet" href="assets/css/module.css?v=202609222345" />
<link rel="stylesheet" href="assets/css/haus.css?v=202609222345" />
</head>
<body class="start">
@@ -241,15 +241,15 @@
</main>
<script src="assets/js/meldung.js?v=202609222340" defer></script>
<script src="assets/js/nachfrage.js?v=202609222340" defer></script>
<script src="assets/js/meldung.js?v=202609222345" defer></script>
<script src="assets/js/nachfrage.js?v=202609222345" defer></script>
<script src="assets/js/wahl.js?v=202609222340" defer></script>
<script src="assets/js/bereiche.js?v=202609222340" defer></script>
<script src="assets/js/installieren.js?v=202609222340" defer></script>
<script src="assets/js/kopf.js?v=202609222340" defer></script>
<script src="assets/js/holen.js?v=202609222340" defer></script>
<script src="assets/js/entwicklung.js?v=202609222340" defer></script>
<script src="assets/js/wahl.js?v=202609222345" defer></script>
<script src="assets/js/bereiche.js?v=202609222345" defer></script>
<script src="assets/js/installieren.js?v=202609222345" defer></script>
<script src="assets/js/kopf.js?v=202609222345" defer></script>
<script src="assets/js/holen.js?v=202609222345" defer></script>
<script src="assets/js/entwicklung.js?v=202609222345" defer></script>
</body>
</html>
+14 -14
View File
@@ -7,13 +7,13 @@
<meta name="robots" content="noindex, nofollow" />
<link rel="manifest" href="/workspace/app.webmanifest" />
<meta name="theme-color" content="#06090f" />
<link rel="icon" type="image/png" href="/assets/img/app-symbole/workspace-32.png?v=202609222340" />
<link rel="apple-touch-icon" href="/assets/img/app-symbole/workspace-180.png?v=202609222340" />
<link rel="stylesheet" href="assets/css/gate.css?v=202609222340" />
<link rel="stylesheet" href="assets/css/start.css?v=202609222340" />
<link rel="stylesheet" href="assets/css/hilfe.css?v=202609222340" />
<link rel="stylesheet" href="assets/css/module.css?v=202609222340" />
<link rel="stylesheet" href="assets/css/haus.css?v=202609222340" />
<link rel="icon" type="image/png" href="/assets/img/app-symbole/workspace-32.png?v=202609222345" />
<link rel="apple-touch-icon" href="/assets/img/app-symbole/workspace-180.png?v=202609222345" />
<link rel="stylesheet" href="assets/css/gate.css?v=202609222345" />
<link rel="stylesheet" href="assets/css/start.css?v=202609222345" />
<link rel="stylesheet" href="assets/css/hilfe.css?v=202609222345" />
<link rel="stylesheet" href="assets/css/module.css?v=202609222345" />
<link rel="stylesheet" href="assets/css/haus.css?v=202609222345" />
</head>
<body class="start">
@@ -146,13 +146,13 @@
</main>
<script src="assets/js/meldung.js?v=202609222340" defer></script>
<script src="assets/js/nachfrage.js?v=202609222340" defer></script>
<script src="assets/js/meldung.js?v=202609222345" defer></script>
<script src="assets/js/nachfrage.js?v=202609222345" defer></script>
<script src="assets/js/wahl.js?v=202609222340" defer></script>
<script src="assets/js/bereiche.js?v=202609222340" defer></script>
<script src="assets/js/installieren.js?v=202609222340" defer></script>
<script src="assets/js/kopf.js?v=202609222340" defer></script>
<script src="assets/js/hilfe.js?v=202609222340" defer></script>
<script src="assets/js/wahl.js?v=202609222345" defer></script>
<script src="assets/js/bereiche.js?v=202609222345" defer></script>
<script src="assets/js/installieren.js?v=202609222345" defer></script>
<script src="assets/js/kopf.js?v=202609222345" defer></script>
<script src="assets/js/hilfe.js?v=202609222345" defer></script>
</body>
</html>
+5 -5
View File
@@ -30,9 +30,9 @@
<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?v=202609222340" />
<link rel="apple-touch-icon" href="/assets/img/app-symbole/workspace-180.png?v=202609222340" />
<link rel="stylesheet" href="assets/css/gate.css?v=202609222340" />
<link rel="icon" type="image/png" href="/assets/img/app-symbole/workspace-32.png?v=202609222345" />
<link rel="apple-touch-icon" href="/assets/img/app-symbole/workspace-180.png?v=202609222345" />
<link rel="stylesheet" href="assets/css/gate.css?v=202609222345" />
</head>
<body class="gate">
@@ -427,7 +427,7 @@
<script src="assets/js/gate.js?v=202609222340" defer></script>
<script src="assets/js/installieren.js?v=202609222340" defer></script>
<script src="assets/js/gate.js?v=202609222345" defer></script>
<script src="assets/js/installieren.js?v=202609222345" defer></script>
</body>
</html>
+17 -17
View File
@@ -12,20 +12,20 @@
Ton wie die Kopfleiste darunter (#06090f), damit Leiste und Seite
eine Flaeche sind statt zweier. -->
<meta name="theme-color" content="#06090f" />
<link rel="icon" type="image/png" href="/assets/img/app-symbole/workspace-32.png?v=202609222340" />
<link rel="apple-touch-icon" href="/assets/img/app-symbole/workspace-180.png?v=202609222340" />
<link rel="stylesheet" href="assets/css/gate.css?v=202609222340" />
<link rel="stylesheet" href="assets/css/start.css?v=202609222340" />
<link rel="stylesheet" href="assets/css/aufgaben.css?v=202609222340" />
<link rel="stylesheet" href="assets/css/kalender.css?v=202609222340" />
<link rel="stylesheet" href="assets/css/module.css?v=202609222340" />
<link rel="icon" type="image/png" href="/assets/img/app-symbole/workspace-32.png?v=202609222345" />
<link rel="apple-touch-icon" href="/assets/img/app-symbole/workspace-180.png?v=202609222345" />
<link rel="stylesheet" href="assets/css/gate.css?v=202609222345" />
<link rel="stylesheet" href="assets/css/start.css?v=202609222345" />
<link rel="stylesheet" href="assets/css/aufgaben.css?v=202609222345" />
<link rel="stylesheet" href="assets/css/kalender.css?v=202609222345" />
<link rel="stylesheet" href="assets/css/module.css?v=202609222345" />
<!-- haus.css MUSS die letzte Stilvorlage sein (10.09.2026).
Auf der Agenturadresse ist sie leer -- das Haus hier IST der
Grundzustand. Auf der Adresse von Team Dogi biegt der Server
genau diesen Dateinamen auf crew-haus.css um, und die Seite
kommt schon beim ERSTEN Abruf in Lila und Babyblau an --
ohne Umfaerben im Browser, ohne Flackern. -->
<link rel="stylesheet" href="assets/css/haus.css?v=202609222340" />
<link rel="stylesheet" href="assets/css/haus.css?v=202609222345" />
</head>
<body class="start">
@@ -383,15 +383,15 @@
</main>
<script src="assets/js/meldung.js?v=202609222340" defer></script>
<script src="assets/js/nachfrage.js?v=202609222340" defer></script>
<script src="assets/js/meldung.js?v=202609222345" defer></script>
<script src="assets/js/nachfrage.js?v=202609222345" defer></script>
<script src="assets/js/wahl.js?v=202609222340" defer></script>
<script src="assets/js/bereiche.js?v=202609222340" defer></script>
<script src="assets/js/installieren.js?v=202609222340" defer></script>
<script src="assets/js/kopf.js?v=202609222340" defer></script>
<script src="assets/js/glocke.js?v=202609222340" defer></script>
<script src="assets/js/kalender.js?v=202609222340" defer></script>
<script src="assets/js/kalender-abo.js?v=202609222340" defer></script>
<script src="assets/js/wahl.js?v=202609222345" defer></script>
<script src="assets/js/bereiche.js?v=202609222345" defer></script>
<script src="assets/js/installieren.js?v=202609222345" defer></script>
<script src="assets/js/kopf.js?v=202609222345" defer></script>
<script src="assets/js/glocke.js?v=202609222345" defer></script>
<script src="assets/js/kalender.js?v=202609222345" defer></script>
<script src="assets/js/kalender-abo.js?v=202609222345" defer></script>
</body>
</html>
+16 -16
View File
@@ -12,20 +12,20 @@
Ton wie die Kopfleiste darunter (#06090f), damit Leiste und Seite
eine Flaeche sind statt zweier. -->
<meta name="theme-color" content="#06090f" />
<link rel="icon" type="image/png" href="/assets/img/app-symbole/workspace-32.png?v=202609222340" />
<link rel="apple-touch-icon" href="/assets/img/app-symbole/workspace-180.png?v=202609222340" />
<link rel="stylesheet" href="assets/css/gate.css?v=202609222340" />
<link rel="stylesheet" href="assets/css/start.css?v=202609222340" />
<link rel="stylesheet" href="assets/css/aufgaben.css?v=202609222340" />
<link rel="stylesheet" href="assets/css/leistung.css?v=202609222340" />
<link rel="stylesheet" href="assets/css/module.css?v=202609222340" />
<link rel="icon" type="image/png" href="/assets/img/app-symbole/workspace-32.png?v=202609222345" />
<link rel="apple-touch-icon" href="/assets/img/app-symbole/workspace-180.png?v=202609222345" />
<link rel="stylesheet" href="assets/css/gate.css?v=202609222345" />
<link rel="stylesheet" href="assets/css/start.css?v=202609222345" />
<link rel="stylesheet" href="assets/css/aufgaben.css?v=202609222345" />
<link rel="stylesheet" href="assets/css/leistung.css?v=202609222345" />
<link rel="stylesheet" href="assets/css/module.css?v=202609222345" />
<!-- haus.css MUSS die letzte Stilvorlage sein (10.09.2026).
Auf der Agenturadresse ist sie leer -- das Haus hier IST der
Grundzustand. Auf der Adresse von Team Dogi biegt der Server
genau diesen Dateinamen auf crew-haus.css um, und die Seite
kommt schon beim ERSTEN Abruf in Lila und Babyblau an --
ohne Umfaerben im Browser, ohne Flackern. -->
<link rel="stylesheet" href="assets/css/haus.css?v=202609222340" />
<link rel="stylesheet" href="assets/css/haus.css?v=202609222345" />
</head>
<body class="start">
@@ -444,13 +444,13 @@
</form>
</dialog>
<script src="assets/js/meldung.js?v=202609222340"></script>
<script src="assets/js/nachfrage.js?v=202609222340"></script>
<script src="assets/js/wahl.js?v=202609222340"></script>
<script src="assets/js/bereiche.js?v=202609222340"></script>
<script src="assets/js/kopf.js?v=202609222340"></script>
<script src="assets/js/glocke.js?v=202609222340"></script>
<script src="assets/js/leistung.js?v=202609222340"></script>
<script src="assets/js/installieren.js?v=202609222340" defer></script>
<script src="assets/js/meldung.js?v=202609222345"></script>
<script src="assets/js/nachfrage.js?v=202609222345"></script>
<script src="assets/js/wahl.js?v=202609222345"></script>
<script src="assets/js/bereiche.js?v=202609222345"></script>
<script src="assets/js/kopf.js?v=202609222345"></script>
<script src="assets/js/glocke.js?v=202609222345"></script>
<script src="assets/js/leistung.js?v=202609222345"></script>
<script src="assets/js/installieren.js?v=202609222345" defer></script>
</body>
</html>
+16 -16
View File
@@ -12,13 +12,13 @@
vergessen wird. -->
<link rel="manifest" href="/workspace/app.webmanifest" />
<meta name="theme-color" content="#06090f" />
<link rel="icon" type="image/png" href="/assets/img/app-symbole/workspace-32.png?v=202609222340" />
<link rel="apple-touch-icon" href="/assets/img/app-symbole/workspace-180.png?v=202609222340" />
<link rel="stylesheet" href="assets/css/gate.css?v=202609222340" />
<link rel="stylesheet" href="assets/css/start.css?v=202609222340" />
<link rel="stylesheet" href="assets/css/material.css?v=202609222340" />
<link rel="stylesheet" href="assets/css/module.css?v=202609222340" />
<link rel="stylesheet" href="assets/css/haus.css?v=202609222340" />
<link rel="icon" type="image/png" href="/assets/img/app-symbole/workspace-32.png?v=202609222345" />
<link rel="apple-touch-icon" href="/assets/img/app-symbole/workspace-180.png?v=202609222345" />
<link rel="stylesheet" href="assets/css/gate.css?v=202609222345" />
<link rel="stylesheet" href="assets/css/start.css?v=202609222345" />
<link rel="stylesheet" href="assets/css/material.css?v=202609222345" />
<link rel="stylesheet" href="assets/css/module.css?v=202609222345" />
<link rel="stylesheet" href="assets/css/haus.css?v=202609222345" />
</head>
<body class="start" data-ton="42" data-buehne="studio">
@@ -138,14 +138,14 @@
<p class="m-laedt" id="laedt">Einen Moment …</p>
</main>
<script src="assets/js/meldung.js?v=202609222340" defer></script>
<script src="assets/js/nachfrage.js?v=202609222340" defer></script>
<script src="assets/js/hochladen.js?v=202609222340" defer></script>
<script src="assets/js/wahl.js?v=202609222340" defer></script>
<script src="assets/js/bereiche.js?v=202609222340" defer></script>
<script src="assets/js/installieren.js?v=202609222340" defer></script>
<script src="assets/js/kopf.js?v=202609222340" defer></script>
<script src="assets/js/glocke.js?v=202609222340" defer></script>
<script src="assets/js/material.js?v=202609222340" defer></script>
<script src="assets/js/meldung.js?v=202609222345" defer></script>
<script src="assets/js/nachfrage.js?v=202609222345" defer></script>
<script src="assets/js/hochladen.js?v=202609222345" defer></script>
<script src="assets/js/wahl.js?v=202609222345" defer></script>
<script src="assets/js/bereiche.js?v=202609222345" defer></script>
<script src="assets/js/installieren.js?v=202609222345" defer></script>
<script src="assets/js/kopf.js?v=202609222345" defer></script>
<script src="assets/js/glocke.js?v=202609222345" defer></script>
<script src="assets/js/material.js?v=202609222345" defer></script>
</body>
</html>
+16 -16
View File
@@ -12,20 +12,20 @@
Ton wie die Kopfleiste darunter (#06090f), damit Leiste und Seite
eine Flaeche sind statt zweier. -->
<meta name="theme-color" content="#06090f" />
<link rel="icon" type="image/png" href="/assets/img/app-symbole/workspace-32.png?v=202609222340" />
<link rel="apple-touch-icon" href="/assets/img/app-symbole/workspace-180.png?v=202609222340" />
<link rel="stylesheet" href="assets/css/gate.css?v=202609222340" />
<link rel="stylesheet" href="assets/css/start.css?v=202609222340" />
<link rel="stylesheet" href="assets/css/aufgaben.css?v=202609222340" />
<link rel="stylesheet" href="assets/css/personen.css?v=202609222340" />
<link rel="stylesheet" href="assets/css/module.css?v=202609222340" />
<link rel="icon" type="image/png" href="/assets/img/app-symbole/workspace-32.png?v=202609222345" />
<link rel="apple-touch-icon" href="/assets/img/app-symbole/workspace-180.png?v=202609222345" />
<link rel="stylesheet" href="assets/css/gate.css?v=202609222345" />
<link rel="stylesheet" href="assets/css/start.css?v=202609222345" />
<link rel="stylesheet" href="assets/css/aufgaben.css?v=202609222345" />
<link rel="stylesheet" href="assets/css/personen.css?v=202609222345" />
<link rel="stylesheet" href="assets/css/module.css?v=202609222345" />
<!-- haus.css MUSS die letzte Stilvorlage sein (10.09.2026).
Auf der Agenturadresse ist sie leer -- das Haus hier IST der
Grundzustand. Auf der Adresse von Team Dogi biegt der Server
genau diesen Dateinamen auf crew-haus.css um, und die Seite
kommt schon beim ERSTEN Abruf in Lila und Babyblau an --
ohne Umfaerben im Browser, ohne Flackern. -->
<link rel="stylesheet" href="assets/css/haus.css?v=202609222340" />
<link rel="stylesheet" href="assets/css/haus.css?v=202609222345" />
</head>
<body class="start">
@@ -453,14 +453,14 @@
</main>
<script src="assets/js/meldung.js?v=202609222340" defer></script>
<script src="assets/js/nachfrage.js?v=202609222340" defer></script>
<script src="assets/js/meldung.js?v=202609222345" defer></script>
<script src="assets/js/nachfrage.js?v=202609222345" defer></script>
<script src="assets/js/wahl.js?v=202609222340" defer></script>
<script src="assets/js/bereiche.js?v=202609222340" defer></script>
<script src="assets/js/installieren.js?v=202609222340" defer></script>
<script src="assets/js/kopf.js?v=202609222340" defer></script>
<script src="assets/js/glocke.js?v=202609222340" defer></script>
<script src="assets/js/personen.js?v=202609222340" defer></script>
<script src="assets/js/wahl.js?v=202609222345" defer></script>
<script src="assets/js/bereiche.js?v=202609222345" defer></script>
<script src="assets/js/installieren.js?v=202609222345" defer></script>
<script src="assets/js/kopf.js?v=202609222345" defer></script>
<script src="assets/js/glocke.js?v=202609222345" defer></script>
<script src="assets/js/personen.js?v=202609222345" defer></script>
</body>
</html>
+18 -18
View File
@@ -12,20 +12,20 @@
Ton wie die Kopfleiste darunter (#06090f), damit Leiste und Seite
eine Flaeche sind statt zweier. -->
<meta name="theme-color" content="#06090f" />
<link rel="icon" type="image/png" href="/assets/img/app-symbole/workspace-32.png?v=202609222340" />
<link rel="apple-touch-icon" href="/assets/img/app-symbole/workspace-180.png?v=202609222340" />
<link rel="stylesheet" href="assets/css/gate.css?v=202609222340" />
<link rel="stylesheet" href="assets/css/start.css?v=202609222340" />
<link rel="stylesheet" href="assets/css/aufgaben.css?v=202609222340" />
<link rel="stylesheet" href="assets/css/profil.css?v=202609222340" />
<link rel="stylesheet" href="assets/css/module.css?v=202609222340" />
<link rel="icon" type="image/png" href="/assets/img/app-symbole/workspace-32.png?v=202609222345" />
<link rel="apple-touch-icon" href="/assets/img/app-symbole/workspace-180.png?v=202609222345" />
<link rel="stylesheet" href="assets/css/gate.css?v=202609222345" />
<link rel="stylesheet" href="assets/css/start.css?v=202609222345" />
<link rel="stylesheet" href="assets/css/aufgaben.css?v=202609222345" />
<link rel="stylesheet" href="assets/css/profil.css?v=202609222345" />
<link rel="stylesheet" href="assets/css/module.css?v=202609222345" />
<!-- haus.css MUSS die letzte Stilvorlage sein (10.09.2026).
Auf der Agenturadresse ist sie leer -- das Haus hier IST der
Grundzustand. Auf der Adresse von Team Dogi biegt der Server
genau diesen Dateinamen auf crew-haus.css um, und die Seite
kommt schon beim ERSTEN Abruf in Lila und Babyblau an --
ohne Umfaerben im Browser, ohne Flackern. -->
<link rel="stylesheet" href="assets/css/haus.css?v=202609222340" />
<link rel="stylesheet" href="assets/css/haus.css?v=202609222345" />
</head>
<body class="start">
@@ -214,16 +214,16 @@
</main>
<script src="assets/js/meldung.js?v=202609222340" defer></script>
<script src="assets/js/hochladen.js?v=202609222340" defer></script>
<script src="assets/js/nachfrage.js?v=202609222340" defer></script>
<script src="assets/js/meldung.js?v=202609222345" defer></script>
<script src="assets/js/hochladen.js?v=202609222345" defer></script>
<script src="assets/js/nachfrage.js?v=202609222345" defer></script>
<script src="assets/js/wahl.js?v=202609222340" defer></script>
<script src="assets/js/bereiche.js?v=202609222340" defer></script>
<script src="assets/js/installieren.js?v=202609222340" defer></script>
<script src="assets/js/kopf.js?v=202609222340" defer></script>
<script src="assets/js/glocke.js?v=202609222340" defer></script>
<script src="assets/js/steckbrief.js?v=202609222340" defer></script>
<script src="assets/js/profil.js?v=202609222340" defer></script>
<script src="assets/js/wahl.js?v=202609222345" defer></script>
<script src="assets/js/bereiche.js?v=202609222345" defer></script>
<script src="assets/js/installieren.js?v=202609222345" defer></script>
<script src="assets/js/kopf.js?v=202609222345" defer></script>
<script src="assets/js/glocke.js?v=202609222345" defer></script>
<script src="assets/js/steckbrief.js?v=202609222345" defer></script>
<script src="assets/js/profil.js?v=202609222345" defer></script>
</body>
</html>
+16 -16
View File
@@ -7,14 +7,14 @@
<meta name="robots" content="noindex, nofollow" />
<link rel="manifest" href="/workspace/app.webmanifest" />
<meta name="theme-color" content="#06090f" />
<link rel="icon" type="image/png" href="/assets/img/app-symbole/workspace-32.png?v=202609222340" />
<link rel="apple-touch-icon" href="/assets/img/app-symbole/workspace-180.png?v=202609222340" />
<link rel="stylesheet" href="assets/css/gate.css?v=202609222340" />
<link rel="stylesheet" href="assets/css/start.css?v=202609222340" />
<link rel="stylesheet" href="assets/css/aufgaben.css?v=202609222340" />
<link rel="stylesheet" href="assets/css/treff.css?v=202609222340" />
<link rel="stylesheet" href="assets/css/module.css?v=202609222340" />
<link rel="stylesheet" href="assets/css/haus.css?v=202609222340" />
<link rel="icon" type="image/png" href="/assets/img/app-symbole/workspace-32.png?v=202609222345" />
<link rel="apple-touch-icon" href="/assets/img/app-symbole/workspace-180.png?v=202609222345" />
<link rel="stylesheet" href="assets/css/gate.css?v=202609222345" />
<link rel="stylesheet" href="assets/css/start.css?v=202609222345" />
<link rel="stylesheet" href="assets/css/aufgaben.css?v=202609222345" />
<link rel="stylesheet" href="assets/css/treff.css?v=202609222345" />
<link rel="stylesheet" href="assets/css/module.css?v=202609222345" />
<link rel="stylesheet" href="assets/css/haus.css?v=202609222345" />
</head>
<body class="start">
@@ -134,13 +134,13 @@
Beim ersten Anlauf fehlte die Zeile auf genau diesen beiden neuen
Seiten. Gefunden hat das nicht das Auge, sondern pruef-css-klassen,
die seit dem 07.09. jede Seite danach absucht. -->
<script src="assets/js/meldung.js?v=202609222340" defer></script>
<script src="assets/js/nachfrage.js?v=202609222340" defer></script>
<script src="assets/js/wahl.js?v=202609222340" defer></script>
<script src="assets/js/bereiche.js?v=202609222340" defer></script>
<script src="assets/js/installieren.js?v=202609222340" defer></script>
<script src="assets/js/kopf.js?v=202609222340" defer></script>
<script src="assets/js/holen.js?v=202609222340" defer></script>
<script src="assets/js/rechte.js?v=202609222340" defer></script>
<script src="assets/js/meldung.js?v=202609222345" defer></script>
<script src="assets/js/nachfrage.js?v=202609222345" defer></script>
<script src="assets/js/wahl.js?v=202609222345" defer></script>
<script src="assets/js/bereiche.js?v=202609222345" defer></script>
<script src="assets/js/installieren.js?v=202609222345" defer></script>
<script src="assets/js/kopf.js?v=202609222345" defer></script>
<script src="assets/js/holen.js?v=202609222345" defer></script>
<script src="assets/js/rechte.js?v=202609222345" defer></script>
</body>
</html>
+18 -18
View File
@@ -12,20 +12,20 @@
Ton wie die Kopfleiste darunter (#06090f), damit Leiste und Seite
eine Flaeche sind statt zweier. -->
<meta name="theme-color" content="#06090f" />
<link rel="icon" type="image/png" href="/assets/img/app-symbole/workspace-32.png?v=202609222340" />
<link rel="apple-touch-icon" href="/assets/img/app-symbole/workspace-180.png?v=202609222340" />
<link rel="stylesheet" href="assets/css/gate.css?v=202609222340" />
<link rel="stylesheet" href="assets/css/start.css?v=202609222340" />
<link rel="stylesheet" href="assets/css/aufgaben.css?v=202609222340" />
<link rel="stylesheet" href="assets/css/report.css?v=202609222340" />
<link rel="stylesheet" href="assets/css/module.css?v=202609222340" />
<link rel="icon" type="image/png" href="/assets/img/app-symbole/workspace-32.png?v=202609222345" />
<link rel="apple-touch-icon" href="/assets/img/app-symbole/workspace-180.png?v=202609222345" />
<link rel="stylesheet" href="assets/css/gate.css?v=202609222345" />
<link rel="stylesheet" href="assets/css/start.css?v=202609222345" />
<link rel="stylesheet" href="assets/css/aufgaben.css?v=202609222345" />
<link rel="stylesheet" href="assets/css/report.css?v=202609222345" />
<link rel="stylesheet" href="assets/css/module.css?v=202609222345" />
<!-- haus.css MUSS die letzte Stilvorlage sein (10.09.2026).
Auf der Agenturadresse ist sie leer -- das Haus hier IST der
Grundzustand. Auf der Adresse von Team Dogi biegt der Server
genau diesen Dateinamen auf crew-haus.css um, und die Seite
kommt schon beim ERSTEN Abruf in Lila und Babyblau an --
ohne Umfaerben im Browser, ohne Flackern. -->
<link rel="stylesheet" href="assets/css/haus.css?v=202609222340" />
<link rel="stylesheet" href="assets/css/haus.css?v=202609222345" />
</head>
<body class="start">
@@ -106,17 +106,17 @@
</main>
<script src="assets/js/meldung.js?v=202609222340" defer></script>
<script src="assets/js/nachfrage.js?v=202609222340" defer></script>
<script src="assets/js/meldung.js?v=202609222345" defer></script>
<script src="assets/js/nachfrage.js?v=202609222345" defer></script>
<script src="assets/js/ki.js?v=202609222340" defer></script>
<script src="assets/js/wahl.js?v=202609222340" defer></script>
<script src="assets/js/bereiche.js?v=202609222340" defer></script>
<script src="assets/js/installieren.js?v=202609222340" defer></script>
<script src="assets/js/kopf.js?v=202609222340" defer></script>
<script src="assets/js/glocke.js?v=202609222340" defer></script>
<script src="assets/js/holen.js?v=202609222340" defer></script>
<script src="assets/js/report.js?v=202609222340" defer></script>
<script src="assets/js/ki.js?v=202609222345" defer></script>
<script src="assets/js/wahl.js?v=202609222345" defer></script>
<script src="assets/js/bereiche.js?v=202609222345" defer></script>
<script src="assets/js/installieren.js?v=202609222345" defer></script>
<script src="assets/js/kopf.js?v=202609222345" defer></script>
<script src="assets/js/glocke.js?v=202609222345" defer></script>
<script src="assets/js/holen.js?v=202609222345" defer></script>
<script src="assets/js/report.js?v=202609222345" defer></script>
</body>
</html>
+16 -16
View File
@@ -12,20 +12,20 @@
Ton wie die Kopfleiste darunter (#06090f), damit Leiste und Seite
eine Flaeche sind statt zweier. -->
<meta name="theme-color" content="#06090f" />
<link rel="icon" type="image/png" href="/assets/img/app-symbole/workspace-32.png?v=202609222340" />
<link rel="apple-touch-icon" href="/assets/img/app-symbole/workspace-180.png?v=202609222340" />
<link rel="stylesheet" href="assets/css/gate.css?v=202609222340" />
<link rel="stylesheet" href="assets/css/start.css?v=202609222340" />
<link rel="stylesheet" href="assets/css/aufgaben.css?v=202609222340" />
<link rel="stylesheet" href="assets/css/scouting.css?v=202609222340" />
<link rel="stylesheet" href="assets/css/module.css?v=202609222340" />
<link rel="icon" type="image/png" href="/assets/img/app-symbole/workspace-32.png?v=202609222345" />
<link rel="apple-touch-icon" href="/assets/img/app-symbole/workspace-180.png?v=202609222345" />
<link rel="stylesheet" href="assets/css/gate.css?v=202609222345" />
<link rel="stylesheet" href="assets/css/start.css?v=202609222345" />
<link rel="stylesheet" href="assets/css/aufgaben.css?v=202609222345" />
<link rel="stylesheet" href="assets/css/scouting.css?v=202609222345" />
<link rel="stylesheet" href="assets/css/module.css?v=202609222345" />
<!-- haus.css MUSS die letzte Stilvorlage sein (10.09.2026).
Auf der Agenturadresse ist sie leer -- das Haus hier IST der
Grundzustand. Auf der Adresse von Team Dogi biegt der Server
genau diesen Dateinamen auf crew-haus.css um, und die Seite
kommt schon beim ERSTEN Abruf in Lila und Babyblau an --
ohne Umfaerben im Browser, ohne Flackern. -->
<link rel="stylesheet" href="assets/css/haus.css?v=202609222340" />
<link rel="stylesheet" href="assets/css/haus.css?v=202609222345" />
</head>
<body class="start">
@@ -173,14 +173,14 @@
</div>
</div>
<script src="assets/js/meldung.js?v=202609222340" defer></script>
<script src="assets/js/nachfrage.js?v=202609222340" defer></script>
<script src="assets/js/meldung.js?v=202609222345" defer></script>
<script src="assets/js/nachfrage.js?v=202609222345" defer></script>
<script src="assets/js/wahl.js?v=202609222340" defer></script>
<script src="assets/js/bereiche.js?v=202609222340" defer></script>
<script src="assets/js/installieren.js?v=202609222340" defer></script>
<script src="assets/js/kopf.js?v=202609222340" defer></script>
<script src="assets/js/glocke.js?v=202609222340" defer></script>
<script src="assets/js/scouting.js?v=202609222340" defer></script>
<script src="assets/js/wahl.js?v=202609222345" defer></script>
<script src="assets/js/bereiche.js?v=202609222345" defer></script>
<script src="assets/js/installieren.js?v=202609222345" defer></script>
<script src="assets/js/kopf.js?v=202609222345" defer></script>
<script src="assets/js/glocke.js?v=202609222345" defer></script>
<script src="assets/js/scouting.js?v=202609222345" defer></script>
</body>
</html>
+16 -16
View File
@@ -12,21 +12,21 @@
Ton wie die Kopfleiste darunter (#06090f), damit Leiste und Seite
eine Flaeche sind statt zweier. -->
<meta name="theme-color" content="#06090f" />
<link rel="icon" type="image/png" href="/assets/img/app-symbole/workspace-32.png?v=202609222340" />
<link rel="apple-touch-icon" href="/assets/img/app-symbole/workspace-180.png?v=202609222340" />
<link rel="stylesheet" href="assets/css/gate.css?v=202609222340" />
<link rel="stylesheet" href="assets/css/start.css?v=202609222340" />
<link rel="icon" type="image/png" href="/assets/img/app-symbole/workspace-32.png?v=202609222345" />
<link rel="apple-touch-icon" href="/assets/img/app-symbole/workspace-180.png?v=202609222345" />
<link rel="stylesheet" href="assets/css/gate.css?v=202609222345" />
<link rel="stylesheet" href="assets/css/start.css?v=202609222345" />
<!-- Nur die Startseite: Begrüßungskachel, Uhr, Glockenmulde. Siehe
den Hinweis in start.css -- dort stand es bis zum 07.09.2026. -->
<link rel="stylesheet" href="assets/css/heim.css?v=202609222340" />
<link rel="stylesheet" href="assets/css/module.css?v=202609222340" />
<link rel="stylesheet" href="assets/css/heim.css?v=202609222345" />
<link rel="stylesheet" href="assets/css/module.css?v=202609222345" />
<!-- haus.css MUSS die letzte Stilvorlage sein (10.09.2026).
Auf der Agenturadresse ist sie leer -- das Haus hier IST der
Grundzustand. Auf der Adresse von Team Dogi biegt der Server
genau diesen Dateinamen auf crew-haus.css um, und die Seite
kommt schon beim ERSTEN Abruf in Lila und Babyblau an --
ohne Umfaerben im Browser, ohne Flackern. -->
<link rel="stylesheet" href="assets/css/haus.css?v=202609222340" />
<link rel="stylesheet" href="assets/css/haus.css?v=202609222345" />
</head>
<body class="start">
@@ -684,16 +684,16 @@
</p>
</main>
<script src="assets/js/meldung.js?v=202609222340" defer></script>
<script src="assets/js/nachfrage.js?v=202609222340" defer></script>
<script src="assets/js/meldung.js?v=202609222345" defer></script>
<script src="assets/js/nachfrage.js?v=202609222345" defer></script>
<script src="assets/js/wahl.js?v=202609222340" defer></script>
<script src="assets/js/bereiche.js?v=202609222340" defer></script>
<script src="assets/js/installieren.js?v=202609222340" defer></script>
<script src="assets/js/kopf.js?v=202609222340" defer></script>
<script src="assets/js/glocke.js?v=202609222340" defer></script>
<script src="assets/js/live.js?v=202609222340" defer></script>
<script src="assets/js/start.js?v=202609222340" defer></script>
<script src="assets/js/wahl.js?v=202609222345" defer></script>
<script src="assets/js/bereiche.js?v=202609222345" defer></script>
<script src="assets/js/installieren.js?v=202609222345" defer></script>
<script src="assets/js/kopf.js?v=202609222345" defer></script>
<script src="assets/js/glocke.js?v=202609222345" defer></script>
<script src="assets/js/live.js?v=202609222345" defer></script>
<script src="assets/js/start.js?v=202609222345" defer></script>
</body>
</html>
+17 -17
View File
@@ -12,20 +12,20 @@
Ton wie die Kopfleiste darunter (#06090f), damit Leiste und Seite
eine Flaeche sind statt zweier. -->
<meta name="theme-color" content="#06090f" />
<link rel="icon" type="image/png" href="/assets/img/app-symbole/workspace-32.png?v=202609222340" />
<link rel="apple-touch-icon" href="/assets/img/app-symbole/workspace-180.png?v=202609222340" />
<link rel="stylesheet" href="assets/css/gate.css?v=202609222340" />
<link rel="stylesheet" href="assets/css/start.css?v=202609222340" />
<link rel="stylesheet" href="assets/css/aufgaben.css?v=202609222340" />
<link rel="stylesheet" href="assets/css/startcheck.css?v=202609222340" />
<link rel="stylesheet" href="assets/css/module.css?v=202609222340" />
<link rel="icon" type="image/png" href="/assets/img/app-symbole/workspace-32.png?v=202609222345" />
<link rel="apple-touch-icon" href="/assets/img/app-symbole/workspace-180.png?v=202609222345" />
<link rel="stylesheet" href="assets/css/gate.css?v=202609222345" />
<link rel="stylesheet" href="assets/css/start.css?v=202609222345" />
<link rel="stylesheet" href="assets/css/aufgaben.css?v=202609222345" />
<link rel="stylesheet" href="assets/css/startcheck.css?v=202609222345" />
<link rel="stylesheet" href="assets/css/module.css?v=202609222345" />
<!-- haus.css MUSS die letzte Stilvorlage sein (10.09.2026).
Auf der Agenturadresse ist sie leer -- das Haus hier IST der
Grundzustand. Auf der Adresse von Team Dogi biegt der Server
genau diesen Dateinamen auf crew-haus.css um, und die Seite
kommt schon beim ERSTEN Abruf in Lila und Babyblau an --
ohne Umfaerben im Browser, ohne Flackern. -->
<link rel="stylesheet" href="assets/css/haus.css?v=202609222340" />
<link rel="stylesheet" href="assets/css/haus.css?v=202609222345" />
</head>
<body class="start">
@@ -85,16 +85,16 @@
</main>
<script src="assets/js/meldung.js?v=202609222340" defer></script>
<script src="assets/js/nachfrage.js?v=202609222340" defer></script>
<script src="assets/js/meldung.js?v=202609222345" defer></script>
<script src="assets/js/nachfrage.js?v=202609222345" defer></script>
<script src="assets/js/ki.js?v=202609222340" defer></script>
<script src="assets/js/wahl.js?v=202609222340" defer></script>
<script src="assets/js/bereiche.js?v=202609222340" defer></script>
<script src="assets/js/installieren.js?v=202609222340" defer></script>
<script src="assets/js/kopf.js?v=202609222340" defer></script>
<script src="assets/js/glocke.js?v=202609222340" defer></script>
<script src="assets/js/startcheck.js?v=202609222340" defer></script>
<script src="assets/js/ki.js?v=202609222345" defer></script>
<script src="assets/js/wahl.js?v=202609222345" defer></script>
<script src="assets/js/bereiche.js?v=202609222345" defer></script>
<script src="assets/js/installieren.js?v=202609222345" defer></script>
<script src="assets/js/kopf.js?v=202609222345" defer></script>
<script src="assets/js/glocke.js?v=202609222345" defer></script>
<script src="assets/js/startcheck.js?v=202609222345" defer></script>
</body>
</html>
+18 -18
View File
@@ -12,20 +12,20 @@
Ton wie die Kopfleiste darunter (#06090f), damit Leiste und Seite
eine Flaeche sind statt zweier. -->
<meta name="theme-color" content="#06090f" />
<link rel="icon" type="image/png" href="/assets/img/app-symbole/workspace-32.png?v=202609222340" />
<link rel="apple-touch-icon" href="/assets/img/app-symbole/workspace-180.png?v=202609222340" />
<link rel="stylesheet" href="assets/css/gate.css?v=202609222340" />
<link rel="stylesheet" href="assets/css/start.css?v=202609222340" />
<link rel="stylesheet" href="assets/css/aufgaben.css?v=202609222340" />
<link rel="stylesheet" href="assets/css/profil.css?v=202609222340" />
<link rel="stylesheet" href="assets/css/module.css?v=202609222340" />
<link rel="icon" type="image/png" href="/assets/img/app-symbole/workspace-32.png?v=202609222345" />
<link rel="apple-touch-icon" href="/assets/img/app-symbole/workspace-180.png?v=202609222345" />
<link rel="stylesheet" href="assets/css/gate.css?v=202609222345" />
<link rel="stylesheet" href="assets/css/start.css?v=202609222345" />
<link rel="stylesheet" href="assets/css/aufgaben.css?v=202609222345" />
<link rel="stylesheet" href="assets/css/profil.css?v=202609222345" />
<link rel="stylesheet" href="assets/css/module.css?v=202609222345" />
<!-- haus.css MUSS die letzte Stilvorlage sein (10.09.2026).
Auf der Agenturadresse ist sie leer -- das Haus hier IST der
Grundzustand. Auf der Adresse von Team Dogi biegt der Server
genau diesen Dateinamen auf crew-haus.css um, und die Seite
kommt schon beim ERSTEN Abruf in Lila und Babyblau an --
ohne Umfaerben im Browser, ohne Flackern. -->
<link rel="stylesheet" href="assets/css/haus.css?v=202609222340" />
<link rel="stylesheet" href="assets/css/haus.css?v=202609222345" />
</head>
<body class="start">
@@ -150,16 +150,16 @@
</main>
<script src="assets/js/meldung.js?v=202609222340" defer></script>
<script src="assets/js/hochladen.js?v=202609222340" defer></script>
<script src="assets/js/nachfrage.js?v=202609222340" defer></script>
<script src="assets/js/meldung.js?v=202609222345" defer></script>
<script src="assets/js/hochladen.js?v=202609222345" defer></script>
<script src="assets/js/nachfrage.js?v=202609222345" defer></script>
<script src="assets/js/wahl.js?v=202609222340" defer></script>
<script src="assets/js/bereiche.js?v=202609222340" defer></script>
<script src="assets/js/installieren.js?v=202609222340" defer></script>
<script src="assets/js/kopf.js?v=202609222340" defer></script>
<script src="assets/js/auskunft.js?v=202609222340" defer></script>
<script src="assets/js/glocke.js?v=202609222340" defer></script>
<script src="assets/js/steckbrief.js?v=202609222340" defer></script>
<script src="assets/js/wahl.js?v=202609222345" defer></script>
<script src="assets/js/bereiche.js?v=202609222345" defer></script>
<script src="assets/js/installieren.js?v=202609222345" defer></script>
<script src="assets/js/kopf.js?v=202609222345" defer></script>
<script src="assets/js/auskunft.js?v=202609222345" defer></script>
<script src="assets/js/glocke.js?v=202609222345" defer></script>
<script src="assets/js/steckbrief.js?v=202609222345" defer></script>
</body>
</html>
+17 -17
View File
@@ -7,18 +7,18 @@
<meta name="robots" content="noindex, nofollow" />
<link rel="manifest" href="/workspace/app.webmanifest" />
<meta name="theme-color" content="#06090f" />
<link rel="icon" type="image/png" href="/assets/img/app-symbole/workspace-32.png?v=202609222340" />
<link rel="apple-touch-icon" href="/assets/img/app-symbole/workspace-180.png?v=202609222340" />
<link rel="stylesheet" href="assets/css/gate.css?v=202609222340" />
<link rel="stylesheet" href="assets/css/start.css?v=202609222340" />
<link rel="stylesheet" href="assets/css/aufgaben.css?v=202609222340" />
<link rel="stylesheet" href="assets/css/entwicklung.css?v=202609222340" />
<link rel="icon" type="image/png" href="/assets/img/app-symbole/workspace-32.png?v=202609222345" />
<link rel="apple-touch-icon" href="/assets/img/app-symbole/workspace-180.png?v=202609222345" />
<link rel="stylesheet" href="assets/css/gate.css?v=202609222345" />
<link rel="stylesheet" href="assets/css/start.css?v=202609222345" />
<link rel="stylesheet" href="assets/css/aufgaben.css?v=202609222345" />
<link rel="stylesheet" href="assets/css/entwicklung.css?v=202609222345" />
<!-- Wegen des Kastens „Anfragen“ ueber der Liste. Eine eigene Kopie
der Regel hier waere die zweite Stelle, an der dieselbe Sache
anders aussieht. -->
<link rel="stylesheet" href="assets/css/bewerbung.css?v=202609222340" />
<link rel="stylesheet" href="assets/css/module.css?v=202609222340" />
<link rel="stylesheet" href="assets/css/haus.css?v=202609222340" />
<link rel="stylesheet" href="assets/css/bewerbung.css?v=202609222345" />
<link rel="stylesheet" href="assets/css/module.css?v=202609222345" />
<link rel="stylesheet" href="assets/css/haus.css?v=202609222345" />
</head>
<body class="start">
@@ -111,14 +111,14 @@
</main>
<script src="assets/js/meldung.js?v=202609222340" defer></script>
<script src="assets/js/nachfrage.js?v=202609222340" defer></script>
<script src="assets/js/meldung.js?v=202609222345" defer></script>
<script src="assets/js/nachfrage.js?v=202609222345" defer></script>
<script src="assets/js/wahl.js?v=202609222340" defer></script>
<script src="assets/js/bereiche.js?v=202609222340" defer></script>
<script src="assets/js/installieren.js?v=202609222340" defer></script>
<script src="assets/js/kopf.js?v=202609222340" defer></script>
<script src="assets/js/holen.js?v=202609222340" defer></script>
<script src="assets/js/talente.js?v=202609222340" defer></script>
<script src="assets/js/wahl.js?v=202609222345" defer></script>
<script src="assets/js/bereiche.js?v=202609222345" defer></script>
<script src="assets/js/installieren.js?v=202609222345" defer></script>
<script src="assets/js/kopf.js?v=202609222345" defer></script>
<script src="assets/js/holen.js?v=202609222345" defer></script>
<script src="assets/js/talente.js?v=202609222345" defer></script>
</body>
</html>
+16 -16
View File
@@ -7,20 +7,20 @@
<meta name="robots" content="noindex, nofollow" />
<link rel="manifest" href="/workspace/app.webmanifest" />
<meta name="theme-color" content="#06090f" />
<link rel="icon" type="image/png" href="/assets/img/app-symbole/workspace-32.png?v=202609222340" />
<link rel="apple-touch-icon" href="/assets/img/app-symbole/workspace-180.png?v=202609222340" />
<link rel="stylesheet" href="assets/css/gate.css?v=202609222340" />
<link rel="stylesheet" href="assets/css/start.css?v=202609222340" />
<link rel="stylesheet" href="assets/css/aufgaben.css?v=202609222340" />
<link rel="stylesheet" href="assets/css/team.css?v=202609222340" />
<link rel="stylesheet" href="assets/css/module.css?v=202609222340" />
<link rel="icon" type="image/png" href="/assets/img/app-symbole/workspace-32.png?v=202609222345" />
<link rel="apple-touch-icon" href="/assets/img/app-symbole/workspace-180.png?v=202609222345" />
<link rel="stylesheet" href="assets/css/gate.css?v=202609222345" />
<link rel="stylesheet" href="assets/css/start.css?v=202609222345" />
<link rel="stylesheet" href="assets/css/aufgaben.css?v=202609222345" />
<link rel="stylesheet" href="assets/css/team.css?v=202609222345" />
<link rel="stylesheet" href="assets/css/module.css?v=202609222345" />
<!-- haus.css MUSS die letzte Stilvorlage sein (10.09.2026).
Auf der Agenturadresse ist sie leer -- das Haus hier IST der
Grundzustand. Auf der Adresse von Team Dogi biegt der Server
genau diesen Dateinamen auf crew-haus.css um, und die Seite
kommt schon beim ERSTEN Abruf in Lila und Babyblau an --
ohne Umfaerben im Browser, ohne Flackern. -->
<link rel="stylesheet" href="assets/css/haus.css?v=202609222340" />
<link rel="stylesheet" href="assets/css/haus.css?v=202609222345" />
</head>
<body class="start">
@@ -110,15 +110,15 @@
</main>
<script src="assets/js/nachfrage.js?v=202609222340" defer></script>
<script src="assets/js/nachfrage.js?v=202609222345" defer></script>
<script src="assets/js/wahl.js?v=202609222340" defer></script>
<script src="assets/js/bereiche.js?v=202609222340" defer></script>
<script src="assets/js/installieren.js?v=202609222340" defer></script>
<script src="assets/js/kopf.js?v=202609222340" defer></script>
<script src="assets/js/glocke.js?v=202609222340" defer></script>
<script src="assets/js/holen.js?v=202609222340" defer></script>
<script src="assets/js/team.js?v=202609222340" defer></script>
<script src="assets/js/wahl.js?v=202609222345" defer></script>
<script src="assets/js/bereiche.js?v=202609222345" defer></script>
<script src="assets/js/installieren.js?v=202609222345" defer></script>
<script src="assets/js/kopf.js?v=202609222345" defer></script>
<script src="assets/js/glocke.js?v=202609222345" defer></script>
<script src="assets/js/holen.js?v=202609222345" defer></script>
<script src="assets/js/team.js?v=202609222345" defer></script>
</body>
</html>
+16 -16
View File
@@ -7,20 +7,20 @@
<meta name="robots" content="noindex, nofollow" />
<link rel="manifest" href="/workspace/app.webmanifest" />
<meta name="theme-color" content="#06090f" />
<link rel="icon" type="image/png" href="/assets/img/app-symbole/workspace-32.png?v=202609222340" />
<link rel="apple-touch-icon" href="/assets/img/app-symbole/workspace-180.png?v=202609222340" />
<link rel="stylesheet" href="assets/css/gate.css?v=202609222340" />
<link rel="stylesheet" href="assets/css/start.css?v=202609222340" />
<link rel="stylesheet" href="assets/css/aufgaben.css?v=202609222340" />
<link rel="stylesheet" href="assets/css/team.css?v=202609222340" />
<link rel="stylesheet" href="assets/css/module.css?v=202609222340" />
<link rel="icon" type="image/png" href="/assets/img/app-symbole/workspace-32.png?v=202609222345" />
<link rel="apple-touch-icon" href="/assets/img/app-symbole/workspace-180.png?v=202609222345" />
<link rel="stylesheet" href="assets/css/gate.css?v=202609222345" />
<link rel="stylesheet" href="assets/css/start.css?v=202609222345" />
<link rel="stylesheet" href="assets/css/aufgaben.css?v=202609222345" />
<link rel="stylesheet" href="assets/css/team.css?v=202609222345" />
<link rel="stylesheet" href="assets/css/module.css?v=202609222345" />
<!-- haus.css MUSS die letzte Stilvorlage sein (10.09.2026).
Auf der Agenturadresse ist sie leer -- das Haus hier IST der
Grundzustand. Auf der Adresse von Team Dogi biegt der Server
genau diesen Dateinamen auf crew-haus.css um, und die Seite
kommt schon beim ERSTEN Abruf in Lila und Babyblau an --
ohne Umfaerben im Browser, ohne Flackern. -->
<link rel="stylesheet" href="assets/css/haus.css?v=202609222340" />
<link rel="stylesheet" href="assets/css/haus.css?v=202609222345" />
</head>
<!-- `data-buehne` steht hier fest und nicht im Skript: Die Kachel zu
@@ -84,14 +84,14 @@
Kaputt ist dabei nichts -- er funktioniert. Genau deshalb faellt
es niemandem auf, und deshalb prueft pruef-css-klassen die
ABHAENGIGKEIT statt der Optik. Hier hat sie angeschlagen. -->
<script src="assets/js/meldung.js?v=202609222340" defer></script>
<script src="assets/js/nachfrage.js?v=202609222340" defer></script>
<script src="assets/js/meldung.js?v=202609222345" defer></script>
<script src="assets/js/nachfrage.js?v=202609222345" defer></script>
<script src="assets/js/wahl.js?v=202609222340" defer></script>
<script src="assets/js/bereiche.js?v=202609222340" defer></script>
<script src="assets/js/installieren.js?v=202609222340" defer></script>
<script src="assets/js/kopf.js?v=202609222340" defer></script>
<script src="assets/js/holen.js?v=202609222340" defer></script>
<script src="assets/js/teamlage.js?v=202609222340" defer></script>
<script src="assets/js/wahl.js?v=202609222345" defer></script>
<script src="assets/js/bereiche.js?v=202609222345" defer></script>
<script src="assets/js/installieren.js?v=202609222345" defer></script>
<script src="assets/js/kopf.js?v=202609222345" defer></script>
<script src="assets/js/holen.js?v=202609222345" defer></script>
<script src="assets/js/teamlage.js?v=202609222345" defer></script>
</body>
</html>
+14 -14
View File
@@ -7,13 +7,13 @@
<meta name="robots" content="noindex, nofollow" />
<link rel="manifest" href="/workspace/app.webmanifest" />
<meta name="theme-color" content="#06090f" />
<link rel="icon" type="image/png" href="/assets/img/app-symbole/workspace-32.png?v=202609222340" />
<link rel="apple-touch-icon" href="/assets/img/app-symbole/workspace-180.png?v=202609222340" />
<link rel="stylesheet" href="assets/css/gate.css?v=202609222340" />
<link rel="stylesheet" href="assets/css/start.css?v=202609222340" />
<link rel="stylesheet" href="assets/css/bereich.css?v=202609222340" />
<link rel="stylesheet" href="assets/css/module.css?v=202609222340" />
<link rel="stylesheet" href="assets/css/haus.css?v=202609222340" />
<link rel="icon" type="image/png" href="/assets/img/app-symbole/workspace-32.png?v=202609222345" />
<link rel="apple-touch-icon" href="/assets/img/app-symbole/workspace-180.png?v=202609222345" />
<link rel="stylesheet" href="assets/css/gate.css?v=202609222345" />
<link rel="stylesheet" href="assets/css/start.css?v=202609222345" />
<link rel="stylesheet" href="assets/css/bereich.css?v=202609222345" />
<link rel="stylesheet" href="assets/css/module.css?v=202609222345" />
<link rel="stylesheet" href="assets/css/haus.css?v=202609222345" />
</head>
<body class="start">
@@ -112,14 +112,14 @@
</main>
<script src="assets/js/meldung.js?v=202609222340" defer></script>
<script src="assets/js/nachfrage.js?v=202609222340" defer></script>
<script src="assets/js/meldung.js?v=202609222345" defer></script>
<script src="assets/js/nachfrage.js?v=202609222345" defer></script>
<script src="assets/js/wahl.js?v=202609222340" defer></script>
<script src="assets/js/bereiche.js?v=202609222340" defer></script>
<script src="assets/js/installieren.js?v=202609222340" defer></script>
<script src="assets/js/kopf.js?v=202609222340" defer></script>
<script src="assets/js/teilen.js?v=202609222340" defer></script>
<script src="assets/js/wahl.js?v=202609222345" defer></script>
<script src="assets/js/bereiche.js?v=202609222345" defer></script>
<script src="assets/js/installieren.js?v=202609222345" defer></script>
<script src="assets/js/kopf.js?v=202609222345" defer></script>
<script src="assets/js/teilen.js?v=202609222345" defer></script>
</body>
</html>
+15 -15
View File
@@ -7,14 +7,14 @@
<meta name="robots" content="noindex, nofollow" />
<link rel="manifest" href="/workspace/app.webmanifest" />
<meta name="theme-color" content="#06090f" />
<link rel="icon" type="image/png" href="/assets/img/app-symbole/workspace-32.png?v=202609222340" />
<link rel="apple-touch-icon" href="/assets/img/app-symbole/workspace-180.png?v=202609222340" />
<link rel="stylesheet" href="assets/css/gate.css?v=202609222340" />
<link rel="stylesheet" href="assets/css/start.css?v=202609222340" />
<link rel="stylesheet" href="assets/css/aufgaben.css?v=202609222340" />
<link rel="stylesheet" href="assets/css/treff.css?v=202609222340" />
<link rel="stylesheet" href="assets/css/module.css?v=202609222340" />
<link rel="stylesheet" href="assets/css/haus.css?v=202609222340" />
<link rel="icon" type="image/png" href="/assets/img/app-symbole/workspace-32.png?v=202609222345" />
<link rel="apple-touch-icon" href="/assets/img/app-symbole/workspace-180.png?v=202609222345" />
<link rel="stylesheet" href="assets/css/gate.css?v=202609222345" />
<link rel="stylesheet" href="assets/css/start.css?v=202609222345" />
<link rel="stylesheet" href="assets/css/aufgaben.css?v=202609222345" />
<link rel="stylesheet" href="assets/css/treff.css?v=202609222345" />
<link rel="stylesheet" href="assets/css/module.css?v=202609222345" />
<link rel="stylesheet" href="assets/css/haus.css?v=202609222345" />
</head>
<body class="start">
@@ -126,13 +126,13 @@
</main>
<script src="assets/js/meldung.js?v=202609222340" defer></script>
<script src="assets/js/nachfrage.js?v=202609222340" defer></script>
<script src="assets/js/meldung.js?v=202609222345" defer></script>
<script src="assets/js/nachfrage.js?v=202609222345" defer></script>
<script src="assets/js/wahl.js?v=202609222340" defer></script>
<script src="assets/js/bereiche.js?v=202609222340" defer></script>
<script src="assets/js/installieren.js?v=202609222340" defer></script>
<script src="assets/js/kopf.js?v=202609222340" defer></script>
<script src="assets/js/treff-moderation.js?v=202609222340" defer></script>
<script src="assets/js/wahl.js?v=202609222345" defer></script>
<script src="assets/js/bereiche.js?v=202609222345" defer></script>
<script src="assets/js/installieren.js?v=202609222345" defer></script>
<script src="assets/js/kopf.js?v=202609222345" defer></script>
<script src="assets/js/treff-moderation.js?v=202609222345" defer></script>
</body>
</html>
+15 -15
View File
@@ -7,18 +7,18 @@
<meta name="robots" content="noindex, nofollow" />
<link rel="manifest" href="/workspace/app.webmanifest" />
<meta name="theme-color" content="#06090f" />
<link rel="icon" type="image/png" href="/assets/img/app-symbole/workspace-32.png?v=202609222340" />
<link rel="apple-touch-icon" href="/assets/img/app-symbole/workspace-180.png?v=202609222340" />
<link rel="stylesheet" href="assets/css/gate.css?v=202609222340" />
<link rel="stylesheet" href="assets/css/start.css?v=202609222340" />
<link rel="stylesheet" href="assets/css/aufgaben.css?v=202609222340" />
<link rel="stylesheet" href="assets/css/treff.css?v=202609222340" />
<link rel="stylesheet" href="assets/css/module.css?v=202609222340" />
<link rel="icon" type="image/png" href="/assets/img/app-symbole/workspace-32.png?v=202609222345" />
<link rel="apple-touch-icon" href="/assets/img/app-symbole/workspace-180.png?v=202609222345" />
<link rel="stylesheet" href="assets/css/gate.css?v=202609222345" />
<link rel="stylesheet" href="assets/css/start.css?v=202609222345" />
<link rel="stylesheet" href="assets/css/aufgaben.css?v=202609222345" />
<link rel="stylesheet" href="assets/css/treff.css?v=202609222345" />
<link rel="stylesheet" href="assets/css/module.css?v=202609222345" />
<!-- haus.css MUSS die letzte Stilvorlage sein. Auf der Adresse des
Rudels biegt der Server genau diesen Dateinamen auf crew-haus.css
um, und die Seite kommt schon beim ERSTEN Abruf in Lila und
Babyblau an -- ohne Umfaerben im Browser, ohne Flackern. -->
<link rel="stylesheet" href="assets/css/haus.css?v=202609222340" />
<link rel="stylesheet" href="assets/css/haus.css?v=202609222345" />
</head>
<body class="start">
@@ -248,13 +248,13 @@
Beim ersten Anlauf fehlte die Zeile auf genau diesen beiden neuen
Seiten. Gefunden hat das nicht das Auge, sondern pruef-css-klassen,
die seit dem 07.09. jede Seite danach absucht. -->
<script src="assets/js/nachfrage.js?v=202609222340" defer></script>
<script src="assets/js/nachfrage.js?v=202609222345" defer></script>
<script src="assets/js/wahl.js?v=202609222340" defer></script>
<script src="assets/js/bereiche.js?v=202609222340" defer></script>
<script src="assets/js/installieren.js?v=202609222340" defer></script>
<script src="assets/js/kopf.js?v=202609222340" defer></script>
<script src="assets/js/auskunft.js?v=202609222340" defer></script>
<script src="assets/js/treff-regeln.js?v=202609222340" defer></script>
<script src="assets/js/wahl.js?v=202609222345" defer></script>
<script src="assets/js/bereiche.js?v=202609222345" defer></script>
<script src="assets/js/installieren.js?v=202609222345" defer></script>
<script src="assets/js/kopf.js?v=202609222345" defer></script>
<script src="assets/js/auskunft.js?v=202609222345" defer></script>
<script src="assets/js/treff-regeln.js?v=202609222345" defer></script>
</body>
</html>
+16 -16
View File
@@ -12,22 +12,22 @@
Ton wie die Kopfleiste darunter (#06090f), damit Leiste und Seite
eine Flaeche sind statt zweier. -->
<meta name="theme-color" content="#06090f" />
<link rel="icon" type="image/png" href="/assets/img/app-symbole/workspace-32.png?v=202609222340" />
<link rel="apple-touch-icon" href="/assets/img/app-symbole/workspace-180.png?v=202609222340" />
<link rel="stylesheet" href="assets/css/gate.css?v=202609222340" />
<link rel="stylesheet" href="assets/css/start.css?v=202609222340" />
<link rel="icon" type="image/png" href="/assets/img/app-symbole/workspace-32.png?v=202609222345" />
<link rel="apple-touch-icon" href="/assets/img/app-symbole/workspace-180.png?v=202609222345" />
<link rel="stylesheet" href="assets/css/gate.css?v=202609222345" />
<link rel="stylesheet" href="assets/css/start.css?v=202609222345" />
<!-- Formular- und Dialogstile: seit dem 07.09.2026 steht hier der
Dialog "Creator anlegen". -->
<link rel="stylesheet" href="assets/css/aufgaben.css?v=202609222340" />
<link rel="stylesheet" href="assets/css/uebersicht.css?v=202609222340" />
<link rel="stylesheet" href="assets/css/module.css?v=202609222340" />
<link rel="stylesheet" href="assets/css/aufgaben.css?v=202609222345" />
<link rel="stylesheet" href="assets/css/uebersicht.css?v=202609222345" />
<link rel="stylesheet" href="assets/css/module.css?v=202609222345" />
<!-- haus.css MUSS die letzte Stilvorlage sein (10.09.2026).
Auf der Agenturadresse ist sie leer -- das Haus hier IST der
Grundzustand. Auf der Adresse von Team Dogi biegt der Server
genau diesen Dateinamen auf crew-haus.css um, und die Seite
kommt schon beim ERSTEN Abruf in Lila und Babyblau an --
ohne Umfaerben im Browser, ohne Flackern. -->
<link rel="stylesheet" href="assets/css/haus.css?v=202609222340" />
<link rel="stylesheet" href="assets/css/haus.css?v=202609222345" />
</head>
<body class="start">
@@ -149,16 +149,16 @@
</main>
<script src="assets/js/meldung.js?v=202609222340" defer></script>
<script src="assets/js/nachfrage.js?v=202609222340" defer></script>
<script src="assets/js/meldung.js?v=202609222345" defer></script>
<script src="assets/js/nachfrage.js?v=202609222345" defer></script>
<script src="assets/js/bereiche.js?v=202609222340" defer></script>
<script src="assets/js/bereiche.js?v=202609222345" defer></script>
<script src="assets/js/wahl.js?v=202609222340" defer></script>
<script src="assets/js/installieren.js?v=202609222340" defer></script>
<script src="assets/js/kopf.js?v=202609222340" defer></script>
<script src="assets/js/glocke.js?v=202609222340" defer></script>
<script src="assets/js/uebersicht.js?v=202609222340" defer></script>
<script src="assets/js/wahl.js?v=202609222345" defer></script>
<script src="assets/js/installieren.js?v=202609222345" defer></script>
<script src="assets/js/kopf.js?v=202609222345" defer></script>
<script src="assets/js/glocke.js?v=202609222345" defer></script>
<script src="assets/js/uebersicht.js?v=202609222345" defer></script>
</body>
</html>
+14 -14
View File
@@ -7,13 +7,13 @@
<meta name="robots" content="noindex, nofollow" />
<link rel="manifest" href="/workspace/app.webmanifest" />
<meta name="theme-color" content="#06090f" />
<link rel="icon" type="image/png" href="/assets/img/app-symbole/workspace-32.png?v=202609222340" />
<link rel="apple-touch-icon" href="/assets/img/app-symbole/workspace-180.png?v=202609222340" />
<link rel="stylesheet" href="assets/css/gate.css?v=202609222340" />
<link rel="stylesheet" href="assets/css/start.css?v=202609222340" />
<link rel="stylesheet" href="assets/css/unsere-seiten.css?v=202609222340" />
<link rel="stylesheet" href="assets/css/module.css?v=202609222340" />
<link rel="stylesheet" href="assets/css/haus.css?v=202609222340" />
<link rel="icon" type="image/png" href="/assets/img/app-symbole/workspace-32.png?v=202609222345" />
<link rel="apple-touch-icon" href="/assets/img/app-symbole/workspace-180.png?v=202609222345" />
<link rel="stylesheet" href="assets/css/gate.css?v=202609222345" />
<link rel="stylesheet" href="assets/css/start.css?v=202609222345" />
<link rel="stylesheet" href="assets/css/unsere-seiten.css?v=202609222345" />
<link rel="stylesheet" href="assets/css/module.css?v=202609222345" />
<link rel="stylesheet" href="assets/css/haus.css?v=202609222345" />
</head>
<body class="start">
@@ -335,13 +335,13 @@
</main>
<script src="assets/js/nachfrage.js?v=202609222340" defer></script>
<script src="assets/js/nachfrage.js?v=202609222345" defer></script>
<script src="assets/js/wahl.js?v=202609222340" defer></script>
<script src="assets/js/bereiche.js?v=202609222340" defer></script>
<script src="assets/js/installieren.js?v=202609222340" defer></script>
<script src="assets/js/kopf.js?v=202609222340" defer></script>
<script src="assets/js/live.js?v=202609222340" defer></script>
<script src="assets/js/unsere-seiten.js?v=202609222340" defer></script>
<script src="assets/js/wahl.js?v=202609222345" defer></script>
<script src="assets/js/bereiche.js?v=202609222345" defer></script>
<script src="assets/js/installieren.js?v=202609222345" defer></script>
<script src="assets/js/kopf.js?v=202609222345" defer></script>
<script src="assets/js/live.js?v=202609222345" defer></script>
<script src="assets/js/unsere-seiten.js?v=202609222345" defer></script>
</body>
</html>
+15 -15
View File
@@ -7,15 +7,15 @@
<meta name="robots" content="noindex, nofollow" />
<link rel="manifest" href="/workspace/app.webmanifest" />
<meta name="theme-color" content="#06090f" />
<link rel="icon" type="image/png" href="/assets/img/app-symbole/workspace-32.png?v=202609222340" />
<link rel="apple-touch-icon" href="/assets/img/app-symbole/workspace-180.png?v=202609222340" />
<link rel="stylesheet" href="assets/css/gate.css?v=202609222340" />
<link rel="stylesheet" href="assets/css/start.css?v=202609222340" />
<link rel="stylesheet" href="assets/css/aufgaben.css?v=202609222340" />
<link rel="stylesheet" href="assets/css/entwicklung.css?v=202609222340" />
<link rel="stylesheet" href="assets/css/werdegang.css?v=202609222340" />
<link rel="stylesheet" href="assets/css/module.css?v=202609222340" />
<link rel="stylesheet" href="assets/css/haus.css?v=202609222340" />
<link rel="icon" type="image/png" href="/assets/img/app-symbole/workspace-32.png?v=202609222345" />
<link rel="apple-touch-icon" href="/assets/img/app-symbole/workspace-180.png?v=202609222345" />
<link rel="stylesheet" href="assets/css/gate.css?v=202609222345" />
<link rel="stylesheet" href="assets/css/start.css?v=202609222345" />
<link rel="stylesheet" href="assets/css/aufgaben.css?v=202609222345" />
<link rel="stylesheet" href="assets/css/entwicklung.css?v=202609222345" />
<link rel="stylesheet" href="assets/css/werdegang.css?v=202609222345" />
<link rel="stylesheet" href="assets/css/module.css?v=202609222345" />
<link rel="stylesheet" href="assets/css/haus.css?v=202609222345" />
</head>
<body class="start">
@@ -144,13 +144,13 @@
</main>
<script src="assets/js/nachfrage.js?v=202609222340" defer></script>
<script src="assets/js/nachfrage.js?v=202609222345" defer></script>
<script src="assets/js/wahl.js?v=202609222340" defer></script>
<script src="assets/js/bereiche.js?v=202609222340" defer></script>
<script src="assets/js/installieren.js?v=202609222340" defer></script>
<script src="assets/js/kopf.js?v=202609222340" defer></script>
<script src="assets/js/werdegang.js?v=202609222340" defer></script>
<script src="assets/js/wahl.js?v=202609222345" defer></script>
<script src="assets/js/bereiche.js?v=202609222345" defer></script>
<script src="assets/js/installieren.js?v=202609222345" defer></script>
<script src="assets/js/kopf.js?v=202609222345" defer></script>
<script src="assets/js/werdegang.js?v=202609222345" defer></script>
</body>
</html>
+15 -15
View File
@@ -12,13 +12,13 @@
vergessen wird. -->
<link rel="manifest" href="/workspace/app.webmanifest" />
<meta name="theme-color" content="#06090f" />
<link rel="icon" type="image/png" href="/assets/img/app-symbole/workspace-32.png?v=202609222340" />
<link rel="apple-touch-icon" href="/assets/img/app-symbole/workspace-180.png?v=202609222340" />
<link rel="stylesheet" href="assets/css/gate.css?v=202609222340" />
<link rel="stylesheet" href="assets/css/start.css?v=202609222340" />
<link rel="stylesheet" href="assets/css/willkommen.css?v=202609222340" />
<link rel="stylesheet" href="assets/css/module.css?v=202609222340" />
<link rel="stylesheet" href="assets/css/haus.css?v=202609222340" />
<link rel="icon" type="image/png" href="/assets/img/app-symbole/workspace-32.png?v=202609222345" />
<link rel="apple-touch-icon" href="/assets/img/app-symbole/workspace-180.png?v=202609222345" />
<link rel="stylesheet" href="assets/css/gate.css?v=202609222345" />
<link rel="stylesheet" href="assets/css/start.css?v=202609222345" />
<link rel="stylesheet" href="assets/css/willkommen.css?v=202609222345" />
<link rel="stylesheet" href="assets/css/module.css?v=202609222345" />
<link rel="stylesheet" href="assets/css/haus.css?v=202609222345" />
</head>
<!-- KOERPERKLASSE "start", NICHT "gate" (berichtigt 21.09.2026).
`body.gate` ist die Anmeldewand: `display:flex; align-items:center`,
@@ -75,13 +75,13 @@
<p class="fehler" id="fehler" hidden></p>
</main>
<script src="assets/js/meldung.js?v=202609222340" defer></script>
<script src="assets/js/bereiche.js?v=202609222340" defer></script>
<script src="assets/js/wahl.js?v=202609222340" defer></script>
<script src="assets/js/nachfrage.js?v=202609222340" defer></script>
<script src="assets/js/installieren.js?v=202609222340" defer></script>
<script src="assets/js/kopf.js?v=202609222340" defer></script>
<script src="assets/js/glocke.js?v=202609222340" defer></script>
<script src="assets/js/willkommen.js?v=202609222340" defer></script>
<script src="assets/js/meldung.js?v=202609222345" defer></script>
<script src="assets/js/bereiche.js?v=202609222345" defer></script>
<script src="assets/js/wahl.js?v=202609222345" defer></script>
<script src="assets/js/nachfrage.js?v=202609222345" defer></script>
<script src="assets/js/installieren.js?v=202609222345" defer></script>
<script src="assets/js/kopf.js?v=202609222345" defer></script>
<script src="assets/js/glocke.js?v=202609222345" defer></script>
<script src="assets/js/willkommen.js?v=202609222345" defer></script>
</body>
</html>
+17 -17
View File
@@ -12,20 +12,20 @@
Ton wie die Kopfleiste darunter (#06090f), damit Leiste und Seite
eine Flaeche sind statt zweier. -->
<meta name="theme-color" content="#06090f" />
<link rel="icon" type="image/png" href="/assets/img/app-symbole/workspace-32.png?v=202609222340" />
<link rel="apple-touch-icon" href="/assets/img/app-symbole/workspace-180.png?v=202609222340" />
<link rel="stylesheet" href="assets/css/gate.css?v=202609222340" />
<link rel="stylesheet" href="assets/css/start.css?v=202609222340" />
<link rel="stylesheet" href="assets/css/aufgaben.css?v=202609222340" />
<link rel="stylesheet" href="assets/css/wissen.css?v=202609222340" />
<link rel="stylesheet" href="assets/css/module.css?v=202609222340" />
<link rel="icon" type="image/png" href="/assets/img/app-symbole/workspace-32.png?v=202609222345" />
<link rel="apple-touch-icon" href="/assets/img/app-symbole/workspace-180.png?v=202609222345" />
<link rel="stylesheet" href="assets/css/gate.css?v=202609222345" />
<link rel="stylesheet" href="assets/css/start.css?v=202609222345" />
<link rel="stylesheet" href="assets/css/aufgaben.css?v=202609222345" />
<link rel="stylesheet" href="assets/css/wissen.css?v=202609222345" />
<link rel="stylesheet" href="assets/css/module.css?v=202609222345" />
<!-- haus.css MUSS die letzte Stilvorlage sein (10.09.2026).
Auf der Agenturadresse ist sie leer -- das Haus hier IST der
Grundzustand. Auf der Adresse von Team Dogi biegt der Server
genau diesen Dateinamen auf crew-haus.css um, und die Seite
kommt schon beim ERSTEN Abruf in Lila und Babyblau an --
ohne Umfaerben im Browser, ohne Flackern. -->
<link rel="stylesheet" href="assets/css/haus.css?v=202609222340" />
<link rel="stylesheet" href="assets/css/haus.css?v=202609222345" />
</head>
<body class="start">
@@ -190,15 +190,15 @@
</main>
<script src="assets/js/meldung.js?v=202609222340" defer></script>
<script src="assets/js/hochladen.js?v=202609222340" defer></script>
<script src="assets/js/nachfrage.js?v=202609222340" defer></script>
<script src="assets/js/meldung.js?v=202609222345" defer></script>
<script src="assets/js/hochladen.js?v=202609222345" defer></script>
<script src="assets/js/nachfrage.js?v=202609222345" defer></script>
<script src="assets/js/wahl.js?v=202609222340" defer></script>
<script src="assets/js/bereiche.js?v=202609222340" defer></script>
<script src="assets/js/installieren.js?v=202609222340" defer></script>
<script src="assets/js/kopf.js?v=202609222340" defer></script>
<script src="assets/js/glocke.js?v=202609222340" defer></script>
<script src="assets/js/wissen.js?v=202609222340" defer></script>
<script src="assets/js/wahl.js?v=202609222345" defer></script>
<script src="assets/js/bereiche.js?v=202609222345" defer></script>
<script src="assets/js/installieren.js?v=202609222345" defer></script>
<script src="assets/js/kopf.js?v=202609222345" defer></script>
<script src="assets/js/glocke.js?v=202609222345" defer></script>
<script src="assets/js/wissen.js?v=202609222345" defer></script>
</body>
</html>