Redesign: neutral dark theme, blue accent, color emojis, add favicon, remove git refs

This commit is contained in:
Hermes AI Bot
2026-06-26 21:58:22 +00:00
parent 24232e5777
commit 95bb698426
3 changed files with 109 additions and 130 deletions
+21 -21
View File
@@ -4,42 +4,40 @@
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>JGA Prag Packliste</title>
<link rel="icon" href="data:image/svg+xml,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 100 100'><text y='.9em' font-size='90'>🧭</text></svg>">
<style>
* { box-sizing: border-box; }
html, body {
margin: 0; padding: 0;
font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif;
background: linear-gradient(135deg, #1a1a2e 0%, #16213e 50%, #0f3460 100%);
color: #eee;
background: #1c1c1f;
color: #e8e8ea;
min-height: 100vh;
}
.container { max-width: 900px; margin: 0 auto; padding: 40px 24px; }
h1 {
font-size: 38px;
margin: 0 0 8px 0;
background: linear-gradient(135deg, #f72585 0%, #b5179e 100%);
-webkit-background-clip: text;
background-clip: text;
-webkit-text-fill-color: transparent;
color: #fff;
font-weight: 700;
}
.subtitle { color: #aaa; margin-bottom: 32px; font-size: 16px; }
.subtitle { color: #999; margin-bottom: 32px; font-size: 16px; }
.back-link {
display: inline-block;
margin-bottom: 24px;
color: #f72585;
color: #60a5fa;
text-decoration: none;
font-size: 14px;
}
.back-link:hover { text-decoration: underline; }
.category {
background: rgba(255, 255, 255, 0.05);
border: 1px solid rgba(255, 255, 255, 0.1);
background: #26262a;
border: 1px solid #353539;
border-radius: 12px;
padding: 20px 24px;
margin-bottom: 16px;
backdrop-filter: blur(10px);
}
.category h2 {
margin: 0 0 16px 0;
@@ -48,13 +46,17 @@
display: flex;
align-items: center;
gap: 8px;
font-weight: 600;
}
.category h2 .icon {
font-size: 28px;
font-family: "Apple Color Emoji", "Segoe UI Emoji", "Noto Color Emoji", emoji;
}
.category h2 .icon { font-size: 28px; }
.checklist { list-style: none; padding: 0; margin: 0; }
.checklist li {
padding: 8px 0;
border-bottom: 1px solid rgba(255, 255, 255, 0.05);
border-bottom: 1px solid #2a2a2d;
display: flex;
align-items: flex-start;
gap: 10px;
@@ -65,16 +67,17 @@
appearance: none;
width: 18px;
height: 18px;
border: 2px solid #f72585;
border: 2px solid #3b82f6;
border-radius: 4px;
flex-shrink: 0;
margin-top: 2px;
cursor: pointer;
position: relative;
background: transparent;
}
.checklist input[type="checkbox"]:checked {
background: #f72585;
border-color: #f72585;
background: #3b82f6;
border-color: #3b82f6;
}
.checklist input[type="checkbox"]:checked::after {
content: "✓";
@@ -97,7 +100,7 @@
}
.progress-bar {
background: rgba(255, 255, 255, 0.1);
background: #2a2a2d;
height: 8px;
border-radius: 4px;
overflow: hidden;
@@ -105,7 +108,7 @@
}
.progress-bar .fill {
height: 100%;
background: linear-gradient(90deg, #f72585, #b5179e);
background: #3b82f6;
width: 0%;
transition: width 0.3s ease;
}
@@ -224,7 +227,6 @@
</div>
<script>
// Checkbox-Persistenz via localStorage
const STORAGE_KEY = 'jga-packliste-checked';
let checked = JSON.parse(localStorage.getItem(STORAGE_KEY) || '[]');
@@ -232,7 +234,6 @@
const progressText = document.getElementById('progress-text');
const progressFill = document.getElementById('progress-fill');
// Initial state
checkboxes.forEach((cb, i) => {
if (checked[i]) {
cb.checked = true;
@@ -247,7 +248,6 @@
const pct = (done / total * 100).toFixed(0);
progressFill.style.width = pct + '%';
progressText.textContent = `${done} von ${total} erledigt (${pct}%)`;
checked = Array.from(checkboxes).map(cb => cb.checked);
localStorage.setItem(STORAGE_KEY, JSON.stringify(checked));
}