- {/* Name: Tap toggelt crossed */}
-
toggleCross(e)} style={{ cursor: "pointer", textDecoration: e.status === 1 ? "line-through" : "none", userSelect: "none" }}>
- {e.label}
-
-
- {/* Spalte 1: X */}
-
{e.status === 1 ? "X" : ""}
-
- {/* Spalte 2: gelbes ✓ */}
-
{e.status === 1 ? "✓" : ""}
-
- {/* Spalte 3: grünes ✓ (für später, wenn du confirmed nutzt) */}
-
{e.status === 2 ? "✓" : ""}
-
- {/* Spalte 4: i/m/s */}
-
+
+
+ {/* Top Bar */}
+
+
- ))}
+
+
+
+
+
+
+
+ {/* Admin Panel */}
+ {me.role === "admin" &&
}
+
+ {/* Game Selector */}
+
+
+
Spiel
+
+
+
+
+
+
+ {/* Sheet */}
+
+ {sections.map((sec) => (
+
+
{sec.title}
+
+
+ {sec.entries.map((e) => (
+
+ {/* Name: Tap toggelt crossed */}
+
toggleCross(e)}
+ style={{
+ ...styles.name,
+ textDecoration: e.status === 1 ? "line-through" : "none",
+ opacity: e.status === 1 ? 0.85 : 1,
+ }}
+ title="Tippen = durchstreichen"
+ >
+ {e.label}
+
+
+ {/* Spalte 1: X */}
+
{e.status === 1 ? "X" : ""}
+
+ {/* Spalte 2: gelbes ✓ */}
+
{e.status === 1 ? "✓" : ""}
+
+ {/* Spalte 3: confirmed (grünes ✓) – aktuell nicht per UI gesetzt */}
+
{e.status === 2 ? "✓" : ""}
+
+ {/* Spalte 4: i/m/s */}
+
+
+ ))}
+
+
+ ))}
+
+
+
);
}
+
+/* ===== Styles (Parchment / Boardgame Look) ===== */
+const styles = {
+ page: {
+ minHeight: "100vh",
+ padding: 16,
+ background:
+ "radial-gradient(circle at 20% 10%, rgba(255,255,255,0.40), rgba(0,0,0,0) 45%), linear-gradient(180deg, #f3e7cf, #e5d2ac)",
+ },
+ shell: {
+ fontFamily: "system-ui",
+ maxWidth: 620,
+ margin: "0 auto",
+ },
+ title: {
+ fontWeight: 1000,
+ letterSpacing: 0.5,
+ fontSize: 22,
+ color: "#20140c",
+ marginBottom: 12,
+ textShadow: "0 1px 0 rgba(255,255,255,0.35)",
+ },
+ topBar: {
+ display: "flex",
+ justifyContent: "space-between",
+ alignItems: "center",
+ gap: 10,
+ padding: 12,
+ borderRadius: 16,
+ background: "rgba(255,255,255,0.35)",
+ border: "1px solid rgba(0,0,0,0.15)",
+ boxShadow: "0 6px 18px rgba(0,0,0,0.10)",
+ backdropFilter: "blur(4px)",
+ },
+ card: {
+ borderRadius: 16,
+ overflow: "hidden",
+ border: "1px solid rgba(0,0,0,0.18)",
+ background: "rgba(255,255,255,0.35)",
+ boxShadow: "0 10px 24px rgba(0,0,0,0.12)",
+ },
+ sectionHeader: {
+ padding: "10px 12px",
+ fontWeight: 1000,
+ letterSpacing: 0.7,
+ color: "#2b1a0e",
+ background: "linear-gradient(180deg, #caa45a, #a67a2a)",
+ borderBottom: "1px solid rgba(0,0,0,0.25)",
+ textTransform: "uppercase",
+ },
+ row: {
+ display: "grid",
+ gridTemplateColumns: "1fr 40px 40px 40px 56px",
+ gap: 8,
+ padding: "10px 12px",
+ alignItems: "center",
+ borderBottom: "1px solid rgba(0,0,0,0.10)",
+ background: "rgba(255,255,255,0.22)",
+ },
+ name: {
+ cursor: "pointer",
+ userSelect: "none",
+ color: "#20140c",
+ fontWeight: 700,
+ },
+ cell: {
+ textAlign: "center",
+ fontWeight: 1000,
+ color: "#20140c",
+ },
+ tagBtn: {
+ padding: "8px 0",
+ fontWeight: 1000,
+ borderRadius: 10,
+ border: "1px solid rgba(0,0,0,0.25)",
+ background: "linear-gradient(180deg, rgba(255,255,255,0.55), rgba(0,0,0,0.06))",
+ },
+ input: {
+ width: "100%",
+ padding: 10,
+ borderRadius: 12,
+ border: "1px solid rgba(0,0,0,0.25)",
+ background: "rgba(255,255,255,0.55)",
+ outline: "none",
+ },
+ primaryBtn: {
+ padding: "10px 12px",
+ borderRadius: 12,
+ border: "1px solid rgba(0,0,0,0.25)",
+ background: "linear-gradient(180deg, #f3d79b, #caa45a)",
+ fontWeight: 1000,
+ cursor: "pointer",
+ },
+ secondaryBtn: {
+ padding: "10px 12px",
+ borderRadius: 12,
+ border: "1px solid rgba(0,0,0,0.25)",
+ background: "linear-gradient(180deg, rgba(255,255,255,0.75), rgba(0,0,0,0.05))",
+ fontWeight: 900,
+ cursor: "pointer",
+ },
+ adminWrap: {
+ marginTop: 14,
+ padding: 12,
+ borderRadius: 16,
+ border: "1px solid rgba(0,0,0,0.18)",
+ background: "rgba(255,255,255,0.30)",
+ boxShadow: "0 8px 18px rgba(0,0,0,0.10)",
+ },
+ adminTitle: {
+ fontWeight: 1000,
+ color: "#20140c",
+ marginBottom: 8,
+ },
+ adminGrid: {
+ display: "grid",
+ gridTemplateColumns: "1fr 1fr 120px 140px",
+ gap: 8,
+ },
+ userRow: {
+ display: "grid",
+ gridTemplateColumns: "1fr 80px 90px",
+ gap: 8,
+ padding: 10,
+ borderRadius: 12,
+ background: "rgba(255,255,255,0.55)",
+ border: "1px solid rgba(0,0,0,0.10)",
+ },
+};