<?xml version="1.0" encoding="UTF-8"?><rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>Guide &#8211; TheBaristaGame</title>
	<atom:link href="https://thebaristagame.de/category/guide/feed/" rel="self" type="application/rss+xml" />
	<link>https://thebaristagame.de</link>
	<description>Barista Siebträger Tipps</description>
	<lastBuildDate>Tue, 17 Mar 2026 16:48:25 +0000</lastBuildDate>
	<language>de</language>
	<sy:updatePeriod>
	hourly	</sy:updatePeriod>
	<sy:updateFrequency>
	1	</sy:updateFrequency>
	<generator>https://wordpress.org/?v=6.9</generator>

<image>
	<url>https://thebaristagame.de/wp-content/uploads/2024/05/cropped-TheBaristaGameNeuesSignatur-1-32x32.png</url>
	<title>Guide &#8211; TheBaristaGame</title>
	<link>https://thebaristagame.de</link>
	<width>32</width>
	<height>32</height>
</image> 
	<item>
		<title>Guide zur passenden Mühle</title>
		<link>https://thebaristagame.de/guide/guide-zur-passenden-muehle/</link>
					<comments>https://thebaristagame.de/guide/guide-zur-passenden-muehle/#respond</comments>
		
		<dc:creator><![CDATA[TheBaristaGame]]></dc:creator>
		<pubDate>Tue, 17 Mar 2026 16:48:23 +0000</pubDate>
				<category><![CDATA[Guide]]></category>
		<category><![CDATA[Kaffeemühle finden]]></category>
		<category><![CDATA[Mühle für Siebträger]]></category>
		<guid isPermaLink="false">https://thebaristagame.de/?p=322</guid>

					<description><![CDATA[Welche Mühle passt zu mir? Mühlen-Finder – TheBaristaGame TheBaristaGame Welche Mühle passt zu dir? ← Zurück ↺ Neu starten]]></description>
										<content:encoded><![CDATA[
<p>Welche Mühle passt zu mir?</p>



<!DOCTYPE html>
<html lang="de">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>Mühlen-Finder – TheBaristaGame</title>
<link href="https://fonts.googleapis.com/css2?family=Playfair+Display:ital,wght@0,400;0,700;1,400&#038;family=Source+Sans+3:wght@300;400;600;700&#038;display=swap" rel="stylesheet">
<style>
:root {
  --bg: #F5EDE0;
  --surface: #FFF7EB;
  --surface-h: #FFF2DF;
  --surface-2: #F5E3CF;
  --gold: #C9A96E;
  --gold-l: #E8C98A;
  --cream: #F5EDE0;
  --muted: #A08870;
  --border: rgba(160,136,112,0.25);
  --border-h: rgba(160,136,112,0.45);
  --green: #5DB85D;
  --green-bg: #F0F7F0;
  --green-border: rgba(93,184,93,0.35);
  --text: #3D2B1A;
}
*{margin:0;padding:0;box-sizing:border-box;}
body{font-family:'Source Sans 3',sans-serif;background:var(--bg);color:var(--text);min-height:100vh;}

.header{background:var(--surface);border-bottom:1px solid var(--border);padding:.9rem 2rem;display:flex;align-items:center;gap:1rem;}
.logo-img{width:52px;height:52px;border-radius:50%;border:2px solid var(--gold);object-fit:cover;flex-shrink:0;}
.brand-title{font-family:'Playfair Display',serif;font-size:1.15rem;color:var(--gold);font-weight:700;line-height:1.2;}
.brand-sub{font-size:.72rem;color:var(--muted);font-weight:300;letter-spacing:.03em;}

.content{max-width:720px;margin:0 auto;padding:2rem 1.5rem;}

.screen{animation:fadeUp .35s ease;}
@keyframes fadeUp{from{opacity:0;transform:translateY(14px);}to{opacity:1;transform:translateY(0);}}

.prog-wrap{height:3px;background:rgba(160,136,112,.15);border-radius:2px;margin-bottom:1.5rem;overflow:hidden;}
.prog-fill{height:100%;background:var(--gold);border-radius:2px;transition:width .4s ease;}

.crumbs{display:flex;align-items:center;flex-wrap:wrap;gap:.3rem;margin-bottom:1.25rem;min-height:1.2rem;}
.crumb{font-size:.68rem;color:var(--muted);font-weight:300;}
.crumb-sep{font-size:.6rem;color:rgba(160,136,112,.35);}
.crumb-cur{font-size:.68rem;color:var(--gold);font-weight:600;}

/* INTRO */
.intro{background:var(--surface);border:1px solid var(--border);border-radius:16px;padding:3rem 2rem;text-align:center;}
.intro-logo{width:84px;height:84px;border-radius:50%;border:3px solid var(--gold);object-fit:cover;display:block;margin:0 auto 1.5rem;}
.intro h2{font-family:'Playfair Display',serif;font-size:2rem;color:var(--gold);margin-bottom:.6rem;}
.intro p{font-size:.95rem;color:var(--muted);font-weight:300;line-height:1.65;margin-bottom:1.5rem;max-width:480px;margin-left:auto;margin-right:auto;}
.intro-features{display:flex;justify-content:center;gap:2rem;margin-bottom:2rem;flex-wrap:wrap;}
.feat{text-align:center;}
.feat-icon{font-size:1.4rem;display:block;margin-bottom:.3rem;}
.feat-label{font-size:.72rem;color:var(--muted);font-weight:300;}

/* MÜHLEN-TYPEN KARTEN auf der Intro-Seite */
.muehlen-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:.75rem;margin-bottom:1.75rem;text-align:left;}
.mtype-card{background:var(--surface-2);border:1px solid var(--border);border-radius:12px;padding:.9rem 1rem;}
.mtype-icon{font-size:1.3rem;margin-bottom:.3rem;}
.mtype-name{font-weight:700;font-size:.85rem;color:var(--text);margin-bottom:.15rem;}
.mtype-price{font-size:.68rem;color:var(--gold);font-weight:600;margin-bottom:.3rem;}
.mtype-desc{font-size:.74rem;color:var(--muted);font-weight:300;line-height:1.5;}

/* QUESTION CARD */
.q-card{background:var(--surface);border:1px solid var(--border);border-radius:16px;padding:2rem;}
.step-label{font-size:.65rem;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:var(--gold);margin-bottom:.65rem;}
.q-card h2{font-family:'Playfair Display',serif;font-size:1.45rem;color:var(--text);margin-bottom:.4rem;line-height:1.3;}
.hint{font-size:.82rem;color:var(--muted);font-weight:300;margin-bottom:.65rem;line-height:1.5;}
.ctx-box{background:rgba(201,169,110,.1);border:1px solid rgba(201,169,110,.28);border-radius:8px;padding:.6rem 1rem;font-size:.8rem;color:#7A4E1A;margin-bottom:1.25rem;line-height:1.4;}
.options{display:flex;flex-direction:column;gap:.7rem;margin-top:1.25rem;}
.opt-btn{background:var(--surface-2);border:1px solid var(--border);border-radius:11px;padding:.9rem 1.1rem;cursor:pointer;transition:all .2s;text-align:left;color:var(--text);display:flex;align-items:center;gap:.9rem;width:100%;}
.opt-btn:hover{background:var(--surface-h);border-color:var(--border-h);transform:translateX(4px);}
.opt-emoji{font-size:1.3rem;min-width:2rem;text-align:center;}
.opt-txt{flex:1;}
.opt-label{font-size:.9rem;font-weight:600;margin-bottom:.1rem;}
.opt-desc{font-size:.75rem;color:var(--muted);font-weight:300;}
.opt-arrow{color:var(--gold);opacity:0;transition:opacity .2s;font-size:1rem;}
.opt-btn:hover .opt-arrow{opacity:1;}

/* RESULT CARD */
.res-card{background:var(--surface);border:1px solid var(--border);border-radius:16px;overflow:hidden;}
.res-head{background:linear-gradient(135deg,#FFF8EC,#FFF0D6);border-bottom:1px solid rgba(201,169,110,.3);padding:1.5rem 2rem;}
.res-badge{display:inline-block;background:var(--gold);color:#fff;font-size:.63rem;font-weight:700;letter-spacing:.1em;text-transform:uppercase;border-radius:20px;padding:.2rem .7rem;margin-bottom:.6rem;}
.res-head h2{font-family:'Playfair Display',serif;font-size:1.5rem;color:#5A3800;line-height:1.25;margin-bottom:.2rem;}
.res-price{font-size:.82rem;color:var(--muted);font-weight:300;}
.res-body{padding:1.5rem 2rem;}
.res-why{font-size:.87rem;color:var(--muted);line-height:1.7;margin-bottom:1.25rem;border-left:2px solid rgba(201,169,110,.3);padding-left:.9rem;}
.pros-cons{display:grid;grid-template-columns:1fr 1fr;gap:.9rem;margin-bottom:1.25rem;}
.pc-box{border-radius:10px;padding:.9rem 1rem;border:1px solid;}
.pc-pros{background:#F0F7F0;border-color:var(--green-border);}
.pc-cons{background:#FFF5F0;border-color:rgba(200,100,80,.2);}
.pc-title{font-size:.65rem;font-weight:700;letter-spacing:.1em;text-transform:uppercase;margin-bottom:.5rem;}
.pc-pros .pc-title{color:var(--green);}
.pc-cons .pc-title{color:#C05030;}
.pc-item{font-size:.8rem;color:var(--text);line-height:1.55;margin-bottom:.2rem;}
.pc-item::before{content:'• ';color:var(--muted);}
.res-cta{background:rgba(201,169,110,.08);border:1px solid rgba(201,169,110,.25);border-radius:10px;padding:1rem 1.2rem;display:flex;align-items:center;gap:1rem;flex-wrap:wrap;}
.res-cta-txt{flex:1;font-size:.82rem;color:var(--muted);line-height:1.5;}
.res-cta-txt strong{color:var(--text);display:block;font-size:.88rem;margin-bottom:.2rem;}
.res-cta-btn{background:var(--gold);color:#fff;text-decoration:none;border-radius:9px;padding:.6rem 1.3rem;font-size:.82rem;font-weight:700;white-space:nowrap;transition:background .2s;flex-shrink:0;}
.res-cta-btn:hover{background:var(--gold-l);}

/* BUTTONS */
.start-btn{background:var(--gold);color:#fff;border:none;border-radius:10px;padding:.85rem 2.2rem;font-size:.9rem;font-weight:700;cursor:pointer;font-family:'Source Sans 3',sans-serif;transition:all .2s;letter-spacing:.02em;}
.start-btn:hover{background:var(--gold-l);transform:translateY(-2px);}
.nav-bar{display:flex;gap:.65rem;margin-top:1.4rem;flex-wrap:wrap;}
.back-btn{background:transparent;border:1px solid var(--border);color:var(--muted);border-radius:8px;padding:.55rem 1.1rem;font-size:.82rem;cursor:pointer;font-family:'Source Sans 3',sans-serif;transition:all .2s;}
.back-btn:hover{border-color:var(--border-h);color:var(--text);}
.restart-btn{background:transparent;border:1px solid var(--border);color:var(--muted);border-radius:8px;padding:.55rem 1.1rem;font-size:.82rem;cursor:pointer;font-family:'Source Sans 3',sans-serif;transition:all .2s;}
.restart-btn:hover{border-color:var(--border-h);color:var(--text);}
.disclaimer{margin-top:1rem;background:var(--surface);border:1px solid var(--border);border-radius:12px;padding:.9rem 1.2rem;font-size:.75rem;color:var(--muted);line-height:1.6;text-align:center;}

@media(max-width:600px){
  .content{padding:1.2rem 1rem;}
  .q-card,.res-body{padding:1.2rem;}
  .res-head{padding:1.2rem;}
  .intro{padding:2rem 1.2rem;}
  .intro h2{font-size:1.5rem;}
  .pros-cons{grid-template-columns:1fr;}
  .muehlen-grid{grid-template-columns:1fr;}
}
</style>
</head>
<body>

<div class="header">
  <img decoding="async" class="logo-img" src="data:image/jpeg;base64,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" alt="Jan – TheBaristaGame">
  <div>
    <div class="brand-title">TheBaristaGame</div>
    <div class="brand-sub">Welche Mühle passt zu dir?</div>
  </div>
</div>

<div class="content">
  <div class="crumbs" id="crumbs"></div>
  <div class="prog-wrap" id="progWrap" style="display:none"><div class="prog-fill" id="progFill" style="width:0%"></div></div>
  <div id="screen"></div>
  <div class="nav-bar" id="navBar" style="display:none">
    <button class="back-btn" onclick="goBack()">← Zurück</button>
    <button class="restart-btn" onclick="restart()">↺ Neu starten</button>
  </div>
</div>

<script>
const LOGO = "data:image/jpeg;base64,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";
const AFF = "https://amzlink.to/az0eUVygN5Bs1";

// ── MÜHLEN-DATENBANK ────────────────────────────────────────────────────────
const MUEHLEN = {
  handmuehle: {
    name: "Manuelle Handmühle",
    price: "ca. 50–180 €",
    badge: "Einsteiger & Budget",
    why: "Elektrische Mühlen unter 200 € würde ich für Espresso nicht empfehlen — das Mahlgut ist zu ungleichmäßig, was zu inkonsistenten Bezugszeiten führt und das Einstellen zur Geduldsprobe macht. Eine gute Handmühle liefert dagegen sehr gleichmäßiges Mahlgut, ist leise, kompakt und kostet deutlich weniger. Der Nachteil: Du mahlst von Hand — das kostet besonders beim Espresso etwas mehr Zeit und Kraft.",
    pros: ["Sehr gleichmäßiges Mahlgut", "Günstigster Einstieg ins Qualitätsmahlen", "Leise & kompakt", "Ideal für Reisen"],
    cons: ["Zeitaufwand: ca. 1–2 Min. pro Portion", "Körperlicher Aufwand beim Espresso", "Keine Zeitersparnis für Vieltrinker", "Keine Hopper-Funktion"],
    link: AFF
  },
  df54: {
    name: "DF54 / Baratza ESP Pro",
    price: "ca. 200–300 €",
    badge: "Single Dose – Espresso-Einstieg",
    why: "Single-Dose-Mühlen mahlen immer nur genau die Menge, die du gerade brauchst — keine alten Kaffeepulverreste im Hopper, maximale Frische. Die DF54 und die Baratza ESP Pro sind zwei der besten Optionen in diesem Preisbereich. Etwas mehr Zeitaufwand als bei einer Dosiermühle, aber deutlich bessere Kontrolle über die Kaffeemenge und Frische.",
    pros: ["Maximale Frische durch Single Dosing", "Sehr gleichmäßiges Mahlgut für den Preis", "Einfach einzustellen", "Kompakt"],
    cons: ["Mahlen vor jeder Portion nötig (ca. 20–30 Sek.)", "Kein Hopper für schnelles Mahlen", "Kein automatisches Abwiegen", "Mäßig schnell"],
    link: AFF
  },
  df64: {
    name: "DF64 / Eureka Specialita",
    price: "ca. 300–450 €",
    badge: "Single Dose – Enthusiast",
    why: "Für alle, die ernsthaft Single-Dose-Mahlen wollen und mehr Präzision und Verarbeitungsqualität schätzen. Die DF64 hat größere Mahlscheiben für noch gleichmäßigeres Mahlgut, die Eureka Specialita glänzt mit präzisen Einstellmöglichkeiten und leisem Betrieb.",
    pros: ["Großes Mahlwerk für sehr feines, gleichmäßiges Mahlgut", "Präzise Einstellung", "Leiser Betrieb (Eureka)", "Sehr gute Grindqualität für den Preis"],
    cons: ["Single Dosing: etwas mehr Zeitaufwand", "Kein automatisches Abwiegen", "Größer als Einstiegsmodelle", "Kein GBW"],
    link: AFF
  },
  dosierer_einstieg: {
    name: "Dosiermühle Einstieg (z.B. Eureka Mignon Filtro)",
    price: "ca. 250–400 €",
    badge: "Dosiermühle – Zeitbasiert",
    why: "Dosiermühlen haben einen Bohnenbehälter (Hopper) und mahlen per Zeitsteuerung. Einfach Taste drücken, Mahlgut kommt — praktisch für alle, die morgens keine Zeit verlieren wollen. Wichtig zu wissen: Zeitbasiertes Mahlen ist nicht immer 100 % präzise. Ich empfehle, das Mahlgut danach trotzdem kurz zu wiegen, um konsistente Ergebnisse zu erzielen.",
    pros: ["Bohnenbehälter — immer bereit", "Schnelles Mahlen per Knopfdruck", "Einfache Bedienung", "Solide Mahlqualität"],
    cons: ["Zeitbasiert: Menge kann leicht variieren", "Wiegen danach empfohlen", "Kaffeepulver im Hopper altert schneller", "Kein GBW"],
    link: AFF
  },
  eureka_libra: {
    name: "Eureka Libra",
    price: "ca. 500–650 €",
    badge: "GBW-Mühle – Präzision",
    why: "GBW steht für Grind-by-Weight: Die Mühle wiegt das Kaffeepulver beim Mahlen live mit einer integrierten Waage und stoppt automatisch bei der eingestellten Grammzahl. Das ist der Goldstandard für Reproduzierbarkeit — jede Portion ist exakt gleich, ohne dass du danach noch einmal wiegen musst. Die Eureka Libra ist in diesem Preisbereich eine der besten GBW-Mühlen.",
    pros: ["Automatisches Abwiegen (GBW)", "Maximale Reproduzierbarkeit", "Kein manuelles Wiegen nötig", "Schnell & präzise"],
    cons: ["Höherer Preis", "Bohnenbehälter: Kaffeepulver altert im Hopper", "Größer als Single-Dose-Mühlen", "Kalibrierung der Waage nötig"],
    link: AFF
  },
  gbw_premium: {
    name: "GBW-Mühle Premium (z.B. Niche Zero / Lagom P64)",
    price: "ca. 600–900 €",
    badge: "Single Dose & GBW – Enthusiast",
    why: "Wer das Beste aus beiden Welten will — maximale Mahlqualität und trotzdem wenig Aufwand — landet hier. Mühlen wie die Niche Zero oder Lagom P64 kombinieren hervorragendes Mahlwerk mit Single-Dose-Philosophie. Auf diesem Level spielt die Mahlqualität eine entscheidende Rolle für den Espresso-Geschmack.",
    pros: ["Hervorragende Mahlqualität", "Single Dose für maximale Frische", "Extrem gleichmäßiges Mahlbild", "Langlebig & wartbar"],
    cons: ["Hoher Preis", "Single Dosing: Zeitaufwand pro Portion", "Groß und schwer (je nach Modell)", "Nicht für schnellen Alltagsbetrieb gedacht"],
    link: AFF
  }
};

// ── ENTSCHEIDUNGSBAUM ───────────────────────────────────────────────────────
const TREE = {
  start: { type: 'intro' },

  budget: {
    type: 'choice', crumb: 'Budget',
    step: 'Schritt 1 von 5',
    title: 'Was ist dein Budget für die Mühle?',
    hint: 'Die Mühle ist oft wichtiger als die Maschine. Lieber etwas mehr ins Mahlwerk investieren — es macht den größten Unterschied im Ergebnis.',
    options: [
      { e: '&#x1f4b6;', l: 'Bis 200 €', d: 'Einsteiger-Budget', n: 'aufwand_guenstig' },
      { e: '&#x1f4b6;', l: '200–300 €', d: 'Solider Einstieg elektrisch', n: 'aufwand_mid' },
      { e: '&#x1f4b6;', l: '300–500 €', d: 'Enthusiast-Bereich', n: 'aufwand_enthusiast' },
      { e: '&#x1f4b6;', l: '500 €+', d: 'Präzision & Komfort', n: 'aufwand_premium' }
    ]
  },

  // === BIS 200€ ===
  aufwand_guenstig: {
    type: 'choice', crumb: 'Zeitaufwand?',
    step: 'Schritt 2 von 5',
    title: 'Wie viel Zeitaufwand beim Mahlen ist für dich okay?',
    hint: '&#x26a0; Elektrische Mühlen unter 200 € würde ich für Espresso nicht empfehlen — das Mahlgut ist zu ungleichmäßig. Eine gute Handmühle liefert hier deutlich bessere Ergebnisse.',
    options: [
      { e: '&#x23f1;', l: 'Ich mahle gern von Hand', d: 'Mehr Aufwand ist okay', n: 'result_handmuehle' },
      { e: '&#x26a1;', l: 'Ich will es schnell', d: 'Keine Zeit für Handmahlen', n: 'result_handmuehle_note' }
    ]
  },

  // === 200–300€ ===
  aufwand_mid: {
    type: 'choice', crumb: 'Zeitaufwand?',
    step: 'Schritt 2 von 5',
    title: 'Wie viel Zeitaufwand beim Mahlen ist für dich okay?',
    options: [
      { e: '&#x1f3af;', l: 'Etwas Aufwand ist okay', d: 'Frische & Kontrolle sind mir wichtig', n: 'anwendung_mid' },
      { e: '&#x26a1;', l: 'Möglichst schnell & einfach', d: 'Ich will Knopf drücken, fertig', n: 'result_dosierer' }
    ]
  },
  anwendung_mid: {
    type: 'choice', crumb: 'Hauptanwendung?',
    step: 'Schritt 3 von 5',
    title: 'Wofür mahlst du hauptsächlich?',
    options: [
      { e: '&#x2615;', l: 'Espresso', d: 'Siebträger, feines Mahlgut', n: 'result_df54' },
      { e: '&#x1fad6;', l: 'Filter / Pour-Over', d: 'V60, AeroPress, French Press', n: 'result_df54' },
      { e: '&#x2615;&#x1fad6;', l: 'Beides', d: 'Ich wechsle zwischen Espresso und Filter', n: 'result_df54_both' }
    ]
  },

  // === 300–500€ ===
  aufwand_enthusiast: {
    type: 'choice', crumb: 'Zeitaufwand?',
    step: 'Schritt 2 von 5',
    title: 'Wie viel Zeitaufwand beim Mahlen ist für dich okay?',
    options: [
      { e: '&#x1f3af;', l: 'Single Dosing — maximale Frische', d: 'Ich mahle jede Portion frisch', n: 'anwendung_enthusiast' },
      { e: '&#x26a1;', l: 'Lieber Dosiermühle', d: 'Hopper, schnell, praktisch', n: 'result_dosierer' }
    ]
  },
  anwendung_enthusiast: {
    type: 'choice', crumb: 'Hauptanwendung?',
    step: 'Schritt 3 von 5',
    title: 'Wofür mahlst du hauptsächlich?',
    options: [
      { e: '&#x2615;', l: 'Espresso', d: 'Siebträger, feines Mahlgut', n: 'result_df64' },
      { e: '&#x1fad6;', l: 'Filter / Pour-Over', d: 'V60, AeroPress, French Press', n: 'result_df64' },
      { e: '&#x2615;&#x1fad6;', l: 'Beides', d: 'Ich wechsle zwischen Espresso und Filter', n: 'result_df64_both' }
    ]
  },

  // === 500€+ ===
  aufwand_premium: {
    type: 'choice', crumb: 'Zeitaufwand?',
    step: 'Schritt 2 von 5',
    title: 'Was ist dir wichtiger: maximale Frische oder maximaler Komfort?',
    options: [
      { e: '&#x1f3af;', l: 'Frische & Kontrolle', d: 'Single Dosing, jede Portion frisch', n: 'result_gbw_premium' },
      { e: '&#x26a1;', l: 'Komfort & Reproduzierbarkeit', d: 'Automatisch abwiegen, wenig Aufwand', n: 'gbw_guests' }
    ]
  },
  gbw_guests: {
    type: 'choice', crumb: 'Gäste?',
    step: 'Schritt 3 von 5',
    title: 'Bereitest du Kaffee auch oft für mehrere Personen zu?',
    hint: 'Eine GBW-Mühle wiegt jede Portion automatisch ab — ideal für viele Bezüge hintereinander.',
    options: [
      { e: '&#x1f9cd;', l: 'Eher für mich allein', d: '1–2 Portionen täglich', n: 'result_eureka_libra' },
      { e: '&#x1f468;&#x200d;&#x1f469;&#x200d;&#x1f467;', l: 'Ja, oft mehrere Portionen', d: 'Schnell & reproduzierbar', n: 'result_eureka_libra' }
    ]
  },

  // === RESULTS ===
  result_handmuehle: { type: 'result', machine: 'handmuehle' },
  result_handmuehle_note: { type: 'result', machine: 'handmuehle',
    extra: '&#x1f4a1; Ich verstehe, dass Handmahlen aufwändiger klingt — aber unter 200 € ist es wirklich die ehrlichste Empfehlung. Eine günstige elektrische Mühle wird dir beim Espresso Kopfschmerzen bereiten. Mit etwas mehr Budget (200–300 €) bekommst du eine sehr gute elektrische Single-Dose-Mühle.' },
  result_df54: { type: 'result', machine: 'df54' },
  result_df54_both: { type: 'result', machine: 'df54',
    extra: '&#x1f4a1; Die DF54 und Baratza ESP Pro eignen sich für Espresso und Filter — allerdings ist das Mahlwerk primär für Espresso optimiert. Für echtes Filter-Mahlen auf hohem Niveau lohnt sich ein Blick auf dedizierte Filtermühlen wie die Comandante (Handmühle, ~200 €).' },
  result_df64: { type: 'result', machine: 'df64' },
  result_df64_both: { type: 'result', machine: 'df64',
    extra: '&#x1f4a1; Mühlen wie die DF64 und Eureka Specialita können sowohl Espresso als auch Filter — aber ihr Stärkenbereich ist der Espresso. Für ein echtes Dual-Use-Setup ist die Niche Zero (ca. 600–700 €) die beste Empfehlung: Sie mahlt für beides exzellent.' },
  result_dosierer: { type: 'result', machine: 'dosierer_einstieg' },
  result_eureka_libra: { type: 'result', machine: 'eureka_libra' },
  result_gbw_premium: { type: 'result', machine: 'gbw_premium' }
};

// === STATE ===
let path = [];
let current = 'start';
const TOTAL = 5;

function go(id) {
  if (current !== 'start') path.push(current);
  current = id;
  render();
}
function goBack() {
  if (!path.length) return;
  current = path.pop();
  render();
}
function restart() {
  path = [];
  current = 'start';
  render();
}

function render() {
  const node = TREE[current];
  if (!node) return;

  const crumbsEl = document.getElementById('crumbs');
  if (current === 'start') {
    crumbsEl.innerHTML = '';
  } else {
    const parts = path.map(id => {
      const n = TREE[id];
      return n && n.crumb ? `<span class="crumb">${n.crumb}</span><span class="crumb-sep">›</span>` : '';
    }).join('');
    const cur = node.crumb ? `<span class="crumb-cur">${node.crumb}</span>` : '';
    crumbsEl.innerHTML = parts + cur;
  }

  const pw = document.getElementById('progWrap');
  const pf = document.getElementById('progFill');
  if (current === 'start') { pw.style.display = 'none'; }
  else {
    pw.style.display = 'block';
    pf.style.width = (Math.min(path.length + 1, TOTAL) / TOTAL * 100) + '%';
  }

  document.getElementById('navBar').style.display = current === 'start' ? 'none' : 'flex';
  const screen = document.getElementById('screen');

  // INTRO
  if (node.type === 'intro') {
    screen.innerHTML = `
      <div class="screen">
        <div class="intro">
          <img decoding="async" class="intro-logo" src="${LOGO}" alt="Jan">
          <h2>Welche Mühle passt zu dir?</h2>
          <p>Bevor wir starten: Es gibt vier verschiedene Mühlentypen — alle mit unterschiedlichem Aufwand, Preis und Zweck. Hier ein schneller Überblick:</p>
          <div class="muehlen-grid">
            <div class="mtype-card">
              <div class="mtype-icon">&#x270b;</div>
              <div class="mtype-name">Handmühle</div>
              <div class="mtype-price">50–180 €</div>
              <div class="mtype-desc">Manuell, leise, sehr präzises Mahlgut. Ideal für Einsteiger mit kleinem Budget. Mehr Zeitaufwand.</div>
            </div>
            <div class="mtype-card">
              <div class="mtype-icon">&#x26a1;</div>
              <div class="mtype-name">Single-Dose-Mühle</div>
              <div class="mtype-price">200–900 €</div>
              <div class="mtype-desc">Mahlt exakt eine Portion frisch. Maximale Frische, etwas mehr Aufwand. Beliebt bei Enthusiasten.</div>
            </div>
            <div class="mtype-card">
              <div class="mtype-icon">&#x1fad9;</div>
              <div class="mtype-name">Dosiermühle (Hopper)</div>
              <div class="mtype-price">250–500 €</div>
              <div class="mtype-desc">Bohnenbehälter oben, Knopf drücken — fertig. Zeitbasiert. Schnell & praktisch, weniger präzise.</div>
            </div>
            <div class="mtype-card">
              <div class="mtype-icon">&#x2696;</div>
              <div class="mtype-name">GBW-Mühle</div>
              <div class="mtype-price">500 €+</div>
              <div class="mtype-desc">Grind-by-Weight: integrierte Waage misst automatisch ab. Maximale Reproduzierbarkeit, wenig Aufwand.</div>
            </div>
          </div>
          <div class="intro-features">
            <div class="feat"><span class="feat-icon">&#x1f4b6;</span><span class="feat-label">Budget-Check</span></div>
            <div class="feat"><span class="feat-icon">&#x23f1;</span><span class="feat-label">Aufwand & Komfort</span></div>
            <div class="feat"><span class="feat-icon">&#x1f3c6;</span><span class="feat-label">Persönliche Empfehlung</span></div>
          </div>
          <button class="start-btn" onclick="go('budget')">Jetzt starten →</button>
        </div>
      </div>`;
    return;
  }

  // CHOICE
  if (node.type === 'choice') {
    const hintHtml = node.hint ? `<p class="hint">${node.hint}</p>` : '';
    const opts = node.options.map(o => `
      <button class="opt-btn" onclick="go('${o.n}')">
        <span class="opt-emoji">${o.e}</span>
        <span class="opt-txt">
          <div class="opt-label">${o.l}</div>
          ${o.d ? `<div class="opt-desc">${o.d}</div>` : ''}
        </span>
        <span class="opt-arrow">›</span>
      </button>`).join('');
    screen.innerHTML = `
      <div class="screen">
        <div class="q-card">
          <div class="step-label">${node.step || ''}</div>
          <h2>${node.title}</h2>
          ${hintHtml}
          <div class="options">${opts}</div>
        </div>
      </div>`;
    return;
  }

  // RESULT
  if (node.type === 'result') {
    const m = MUEHLEN[node.machine];
    const pros = m.pros.map(p => `<div class="pc-item">${p}</div>`).join('');
    const cons = m.cons.map(c => `<div class="pc-item">${c}</div>`).join('');
    const extraHtml = node.extra ? `<div class="ctx-box" style="margin-bottom:1.1rem">${node.extra}</div>` : '';
    screen.innerHTML = `
      <div class="screen">
        <div class="res-card">
          <div class="res-head">
            <span class="res-badge">✓ Empfehlung</span>
            <h2>${m.name}</h2>
            <div class="res-price">${m.price}</div>
          </div>
          <div class="res-body">
            ${extraHtml}
            <p class="res-why">${m.why}</p>
            <div class="pros-cons">
              <div class="pc-box pc-pros">
                <div class="pc-title">Vorteile</div>
                ${pros}
              </div>
              <div class="pc-box pc-cons">
                <div class="pc-title">Nachteile</div>
                ${cons}
              </div>
            </div>
            <div class="res-cta">
              <div class="res-cta-txt">
                <strong>Welche Mühle passt zu mir? — Jans Amazon-Liste</strong>
                Equipment, das ich selbst täglich nutze und guten Gewissens weiterempfehlen kann — kuratiert und ehrlich.
              </div>
              <a class="res-cta-btn" href="${m.link}" target="_blank" rel="noopener">Zur Liste →</a>
            </div>
          </div>
        </div>
        <div class="disclaimer">* Affiliate-Link: Bei einem Kauf über diesen Link erhalte ich eine kleine Provision – für dich entstehen keine Mehrkosten. Ich empfehle nur Equipment, das ich selbst nutze und kenne. &#x2615;</div>
      </div>`;
  }
}

render();
</script>
</body>
</html>



<p></p>
]]></content:encoded>
					
					<wfw:commentRss>https://thebaristagame.de/guide/guide-zur-passenden-muehle/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
			</item>
		<item>
		<title>Guide zum passenden Siebträger</title>
		<link>https://thebaristagame.de/guide/guide-zum-passenden-siebtraeger/</link>
					<comments>https://thebaristagame.de/guide/guide-zum-passenden-siebtraeger/#respond</comments>
		
		<dc:creator><![CDATA[TheBaristaGame]]></dc:creator>
		<pubDate>Tue, 17 Mar 2026 16:37:32 +0000</pubDate>
				<category><![CDATA[Guide]]></category>
		<category><![CDATA[siebträger finden]]></category>
		<category><![CDATA[siebträger kaufen]]></category>
		<category><![CDATA[Siebträgermaschine]]></category>
		<guid isPermaLink="false">https://thebaristagame.de/?p=320</guid>

					<description><![CDATA[Welche Siebträger passt zu mir? Siebträger-Finder – TheBaristaGame TheBaristaGame Siebträger finden, der wirklich zu dir passt ← Zurück ↺ Neu...]]></description>
										<content:encoded><![CDATA[
<p>Welche Siebträger passt zu mir?</p>



<!DOCTYPE html>
<html lang="de">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>Siebträger-Finder – TheBaristaGame</title>
<link href="https://fonts.googleapis.com/css2?family=Playfair+Display:ital,wght@0,400;0,700;1,400&#038;family=Source+Sans+3:wght@300;400;600;700&#038;display=swap" rel="stylesheet">
<style>
:root {
  --bg: #F5EDE0;
  --surface: #FFF7EB;
  --surface-h: #FFF2DF;
  --surface-2: #F5E3CF;
  --gold: #C9A96E;
  --gold-l: #E8C98A;
  --cream: #F5EDE0;
  --muted: #A08870;
  --border: rgba(160,136,112,0.25);
  --border-h: rgba(160,136,112,0.45);
  --green: #5DB85D;
  --green-bg: #F0F7F0;
  --green-border: rgba(93,184,93,0.35);
  --text: #3D2B1A;
}
*{margin:0;padding:0;box-sizing:border-box;}
body{font-family:'Source Sans 3',sans-serif;background:var(--bg);color:var(--text);min-height:100vh;}

/* HEADER */
.header{background:var(--surface);border-bottom:1px solid var(--border);padding:.9rem 2rem;display:flex;align-items:center;gap:1rem;}
.logo-img{width:52px;height:52px;border-radius:50%;border:2px solid var(--gold);object-fit:cover;flex-shrink:0;}
.brand-title{font-family:'Playfair Display',serif;font-size:1.15rem;color:var(--gold);font-weight:700;line-height:1.2;}
.brand-sub{font-size:.72rem;color:var(--muted);font-weight:300;letter-spacing:.03em;}

/* LAYOUT */
.content{max-width:720px;margin:0 auto;padding:2rem 1.5rem;}

/* ANIMATION */
.screen{animation:fadeUp .35s ease;}
@keyframes fadeUp{from{opacity:0;transform:translateY(14px);}to{opacity:1;transform:translateY(0);}}

/* PROGRESS */
.prog-wrap{height:3px;background:rgba(160,136,112,.15);border-radius:2px;margin-bottom:1.5rem;overflow:hidden;}
.prog-fill{height:100%;background:var(--gold);border-radius:2px;transition:width .4s ease;}

/* BREADCRUMB */
.crumbs{display:flex;align-items:center;flex-wrap:wrap;gap:.3rem;margin-bottom:1.25rem;min-height:1.2rem;}
.crumb{font-size:.68rem;color:var(--muted);font-weight:300;}
.crumb-sep{font-size:.6rem;color:rgba(160,136,112,.35);}
.crumb-cur{font-size:.68rem;color:var(--gold);font-weight:600;}

/* INTRO */
.intro{background:var(--surface);border:1px solid var(--border);border-radius:16px;padding:3rem 2rem;text-align:center;}
.intro-logo{width:84px;height:84px;border-radius:50%;border:3px solid var(--gold);object-fit:cover;display:block;margin:0 auto 1.5rem;}
.intro h2{font-family:'Playfair Display',serif;font-size:2rem;color:var(--gold);margin-bottom:.6rem;}
.intro p{font-size:.95rem;color:var(--muted);font-weight:300;line-height:1.65;margin-bottom:2rem;max-width:480px;margin-left:auto;margin-right:auto;}
.intro-features{display:flex;justify-content:center;gap:2rem;margin-bottom:2rem;flex-wrap:wrap;}
.feat{text-align:center;}
.feat-icon{font-size:1.4rem;display:block;margin-bottom:.3rem;}
.feat-label{font-size:.72rem;color:var(--muted);font-weight:300;}

/* QUESTION CARD */
.q-card{background:var(--surface);border:1px solid var(--border);border-radius:16px;padding:2rem;}
.step-label{font-size:.65rem;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:var(--gold);margin-bottom:.65rem;}
.q-card h2{font-family:'Playfair Display',serif;font-size:1.45rem;color:var(--text);margin-bottom:.4rem;line-height:1.3;}
.hint{font-size:.82rem;color:var(--muted);font-weight:300;margin-bottom:.65rem;line-height:1.5;}
.ctx-box{background:rgba(201,169,110,.1);border:1px solid rgba(201,169,110,.28);border-radius:8px;padding:.6rem 1rem;font-size:.8rem;color:#7A4E1A;margin-bottom:1.25rem;line-height:1.4;}
.options{display:flex;flex-direction:column;gap:.7rem;margin-top:1.25rem;}
.opt-btn{background:var(--surface-2);border:1px solid var(--border);border-radius:11px;padding:.9rem 1.1rem;cursor:pointer;transition:all .2s;text-align:left;color:var(--text);display:flex;align-items:center;gap:.9rem;}
.opt-btn:hover{background:var(--surface-h);border-color:var(--border-h);transform:translateX(4px);}
.opt-emoji{font-size:1.3rem;min-width:2rem;text-align:center;}
.opt-txt{flex:1;}
.opt-label{font-size:.9rem;font-weight:600;margin-bottom:.1rem;}
.opt-desc{font-size:.75rem;color:var(--muted);font-weight:300;}
.opt-arrow{color:var(--gold);opacity:0;transition:opacity .2s;font-size:1rem;}
.opt-btn:hover .opt-arrow{opacity:1;}

/* RESULT CARD */
.res-card{background:var(--surface);border:1px solid var(--border);border-radius:16px;overflow:hidden;}
.res-head{background:linear-gradient(135deg,#FFF8EC,#FFF0D6);border-bottom:1px solid rgba(201,169,110,.3);padding:1.5rem 2rem;}
.res-badge{display:inline-block;background:var(--gold);color:#fff;font-size:.63rem;font-weight:700;letter-spacing:.1em;text-transform:uppercase;border-radius:20px;padding:.2rem .7rem;margin-bottom:.6rem;}
.res-head h2{font-family:'Playfair Display',serif;font-size:1.5rem;color:#5A3800;line-height:1.25;margin-bottom:.2rem;}
.res-price{font-size:.82rem;color:var(--muted);font-weight:300;}
.res-body{padding:1.5rem 2rem;}
.res-why{font-size:.87rem;color:var(--muted);line-height:1.7;margin-bottom:1.25rem;border-left:2px solid rgba(201,169,110,.3);padding-left:.9rem;}
.pros-cons{display:grid;grid-template-columns:1fr 1fr;gap:.9rem;margin-bottom:1.25rem;}
.pc-box{border-radius:10px;padding:.9rem 1rem;border:1px solid;}
.pc-pros{background:#F0F7F0;border-color:var(--green-border);}
.pc-cons{background:#FFF5F0;border-color:rgba(200,100,80,.2);}
.pc-title{font-size:.65rem;font-weight:700;letter-spacing:.1em;text-transform:uppercase;margin-bottom:.5rem;}
.pc-pros .pc-title{color:var(--green);}
.pc-cons .pc-title{color:#C05030;}
.pc-item{font-size:.8rem;color:var(--text);line-height:1.55;margin-bottom:.2rem;}
.pc-item::before{content:'• ';color:var(--muted);}
.res-cta{background:rgba(201,169,110,.08);border:1px solid rgba(201,169,110,.25);border-radius:10px;padding:1rem 1.2rem;display:flex;align-items:center;gap:1rem;flex-wrap:wrap;}
.res-cta-txt{flex:1;font-size:.82rem;color:var(--muted);line-height:1.5;}
.res-cta-txt strong{color:var(--text);display:block;font-size:.88rem;margin-bottom:.2rem;}
.res-cta-btn{background:var(--gold);color:#fff;text-decoration:none;border-radius:9px;padding:.6rem 1.3rem;font-size:.82rem;font-weight:700;white-space:nowrap;transition:background .2s;flex-shrink:0;}
.res-cta-btn:hover{background:var(--gold-l);}

/* BUTTONS */
.start-btn{background:var(--gold);color:#fff;border:none;border-radius:10px;padding:.85rem 2.2rem;font-size:.9rem;font-weight:700;cursor:pointer;font-family:'Source Sans 3',sans-serif;transition:all .2s;letter-spacing:.02em;}
.start-btn:hover{background:var(--gold-l);transform:translateY(-2px);}
.nav-bar{display:flex;gap:.65rem;margin-top:1.4rem;flex-wrap:wrap;}
.back-btn{background:transparent;border:1px solid var(--border);color:var(--muted);border-radius:8px;padding:.55rem 1.1rem;font-size:.82rem;cursor:pointer;font-family:'Source Sans 3',sans-serif;transition:all .2s;}
.back-btn:hover{border-color:var(--border-h);color:var(--text);}
.restart-btn{background:transparent;border:1px solid var(--border);color:var(--muted);border-radius:8px;padding:.55rem 1.1rem;font-size:.82rem;cursor:pointer;font-family:'Source Sans 3',sans-serif;transition:all .2s;}
.restart-btn:hover{border-color:var(--border-h);color:var(--text);}

/* DISCLAIMER */
.disclaimer{margin-top:1rem;background:var(--surface);border:1px solid var(--border);border-radius:12px;padding:.9rem 1.2rem;font-size:.75rem;color:var(--muted);line-height:1.6;text-align:center;}

@media(max-width:600px){
  .content{padding:1.2rem 1rem;}
  .q-card,.res-body{padding:1.2rem;}
  .res-head{padding:1.2rem;}
  .intro{padding:2rem 1.2rem;}
  .intro h2{font-size:1.5rem;}
  .pros-cons{grid-template-columns:1fr;}
}
</style>
</head>
<body>

<div class="header">
  <img decoding="async" class="logo-img" src="data:image/jpeg;base64,/9j/4AAQSkZJRgABAQAAAQABAAD/4gHYSUNDX1BST0ZJTEUAAQEAAAHIAAAAAAQwAABtbnRyUkdCIFhZWiAH4AABAAEAAAAAAABhY3NwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAQAA9tYAAQAAAADTLQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAlkZXNjAAAA8AAAACRyWFlaAAABFAAAABRnWFlaAAABKAAAABRiWFlaAAABPAAAABR3dHB0AAABUAAAABRyVFJDAAABZAAAAChnVFJDAAABZAAAAChiVFJDAAABZAAAAChjcHJ0AAABjAAAADxtbHVjAAAAAAAAAAEAAAAMZW5VUwAAAAgAAAAcAHMAUgBHAEJYWVogAAAAAAAAb6IAADj1AAADkFhZWiAAAAAAAABimQAAt4UAABjaWFlaIAAAAAAAACSgAAAPhAAAts9YWVogAAAAAAAA9tYAAQAAAADTLXBhcmEAAAAAAAQAAAACZmYAAPKnAAANWQAAE9AAAApbAAAAAAAAAABtbHVjAAAAAAAAAAEAAAAMZW5VUwAAACAAAAAcAEcAbwBvAGcAbABlACAASQBuAGMALgAgADIAMAAxADb/2wBDAAUDBAQEAwUEBAQFBQUGBwwIBwcHBw8LCwkMEQ8SEhEPERETFhwXExQaFRERGCEYGh0dHx8fExciJCIeJBweHx7/2wBDAQUFBQcGBw4ICA4eFBEUHh4eHh4eHh4eHh4eHh4eHh4eHh4eHh4eHh4eHh4eHh4eHh4eHh4eHh4eHh4eHh4eHh7/wAARCABaAFoDASIAAhEBAxEB/8QAHQAAAQUBAQEBAAAAAAAAAAAABQAEBgcIAgMJAf/EAD0QAAEDAwMCBAMGBAMJAQAAAAECAwQABREGEiEHMRMiQVEyYXEIFBUjgZFCUqGxYnLBFiQzNFOCkqPh8P/EABkBAAIDAQAAAAAAAAAAAAAAAAADAgQFAf/EACURAAEEAgEEAgMBAAAAAAAAAAEAAgMRBCExEhNBURQiYXGxBf/aAAwDAQACEQMRAD8AxlSpVaHQPpFcupd5U88pyFYIiwJcsDzLPfwm88FRHc9kg5PoDwml0C1EdC6K1Nra5mBpy1uzFowXnfhaZB9VrPCf7n0Bp7rTRT+kNSyLFcpLUmTHCfEUzkIyUhWATyRz34r6DaZ0zZNK6cbstgt7MGEynyobHKj6qUe6lH1J5rHH2n2vC6vXA4x4jbS//Wkf6VDqtpKkW9LgFWkaMwnGxpAPvjn96updkjriZuPVdhQSpP5DDyEbfgJV8WOP3JTVNxu4OKtmeix3HTkmHaenN0ROcZ/KfDBOwkN4Vnv3z+hHuaqudRVtrdIbM01oedPU3duoy34yFEb1EKJA8MDHf+Hdz/hAqute2bTtvvyo2mrm5cIIaSoPqH8RHI7D/wDHFErlpDUkSC7OlWeUxHaSVuLcTt2gK25IPI83FRtQ5psZ/KRIPwhbrDjfJGR7ivKpt07ROc1ra27c3DclOPbG0S8+CrIIIXj0IJFRy+wXI9wlJU0hpbby0uNoGEoIJyB8hTg+zSUW6tDKVKlU1FSHpzpSfrbWMDTlv8q5Ln5jpGQy2OVrP0GfqcD1r6I6KsFq0vpyFYLNHDEKI2EIT6qPqpR9VE5JPuayb9ne1R4HTvUN8ZusaFfbkhUa3qMgNrQhvCuDkEbl4B/yiokzrbWDodZkapviXUDaUGY5ydw4Pm4/+VTlm2QPC1MDA+Qa6gCt+rTllX0NYs+1s14fVYr/AOpCaV/cf6VcPQjUlpatVtYk6tcMuS+UvJnyuXllsDwkJUrzHeoEKHoAPXFAftD9Or1f+qNruf4c45ZERW0zJCVDCAFqyO+ecgfrXI5h2y52krJxiyfttN0qn6XdM7nqlCJ0l0wbefhWU5W5/lHt8z/WtKxNMykwEsJuklBCRhYSgkKG3CsbcZ8oP6U00qWUMobZaDbKQEoSkYAA4AFT+1FpccgoyRjBNZUsskh0aW1FjxRMFiys29bNM66gWqTL/HV3W2PBSZKSwhLgCl7znA5G7n5Vn5xGK+gV+jMSIr0Z5CVNuJKVgjI5qrbR9mTT18hi7r1JOYRIcWfBaaQA2Qogpyc+1Pxckt+rlRzcUacxZOZW4y8l1lxbbiDlK0Egg+4IrlRKlFSiSSckn1raNs+y10/b/wCZud5lH2LyEj+iaK2v7OXS5maUOWuXJ2+jstzH9CKu/JG9FZ/xz7CwNOY8JzckeRXb5U3rf3VL7Puh5fTa9RdN6dYiXhEVT0J5BUV+KjzBOST8WNv/AHVgGn484mBPpKmiMZoqz7IzdYlhtDzjzybc+lxLLbalFZCOXFbQR5MhfIPGDVmuNaPsS4lwulmiXJqVCUyyhKFbVubwpTiiVgk7d4HORuHGBVeR4kWJHekeGw08S+1J/MwVD4kYST2O3PA9PpUz1RabperRaodyjzVThEQyGi2Wkpc8JLbYOSAThPOe+/P1QKfynOHToJrq78Btdosl403bHocV1+SW90suqZdKGfMnKUkEDtyeeavrp3d50vo5NlXubPnRZEvw7fLmAl51tW3AUP8ACrcM9uM9qznZrRe5GlLhH8IGTHmNGQPGSNiSpKdpJOBnbjHy+VXFqHXc3UmpImjbbfoD1tuKVGGiJAwtDzRStDJc3kDIByoJHtjmqbo5KdfO1bifGHNHjSZt6yRpya7A+4LkFlRCkhwEkYzkAfLmpa9raanS0W+2m3F9uRwAf4McEkD2PFRNxdn085cpklh4TmSpSmSogqUeR5fXvRnR2q7bIsUa3Wj8+4fmKDKo6ktgklXm9EjNJr6ggLWA3TnD9I3Z9QXO8rQ27EcThJU4S2EhPp3BPrUt0LKmoj/cgv8A3ZPiKIKMHcV8EH1BBI+oqGwNWwZcRUVm2/c5iFbJDKU42K9efb51M7a+zp7TsKfclkMSQNq0AqDaVEnKvYfPnHeuxMInCRluYID5Ui8VxKshRzTy2qWmYFODG8UMkPtIa8UqBT7jmqr1H9oWytX6PYrDYZlymMuFqQpxxLKUqSccZzn19q05y2qWFDd2tCEcV8+Nf9E71/t3qD8NSEQvxOT92Ts+FvxVbR+2K2zofX9n1NYJ912u25u3OqZlCWUp2FKQonIJBGCOa8TeNFyz96E9lQe/MyW1c559vnWXDk9k3fKuyQmTR8LIusLLZnNLaavhS4XH0sPrVkELQ4kKUOOR8R4PIx7UT6p37TV4lG1XAT2Wos6MzIWyUrSW1scKBJB3JCSD6etR/pndzqDoneLI88lyTZVNSG2lJ3KUyHMHB9P+Nj6IrvqpbG49plXN9hliRcnbVJh+EQUOsmNJ3qGCcchvI45V2psTemV0YJFHW/dFRkeHRteRzylcrbIsmin4ticjoYuCm1mQy6XA+ttR8NKSSSkckEDuQM0f6QSrE/frNJS6F3iLfI0gpS2Ultl0FCkqPZW0qAyO4I5qCadD03ptqG3pZXIdS82+htKclpIC1qcSe4x4fJ9s1zofU6tFoXfxPYduT8cwUxnAouMpAbUlzAOFAbAkZ7HnuBXYhLTmuNkGv3wf4VLIMRIMYoEcelfP2jdPPx7u9dAhX3W4tgMyE923ADlB/fI/b0oT00s7yrcomBhx0edZcXs47HaVf3qLudY9SdRLZcrHNVFZgMqStjYwEuq852qWcnsAPhx35zQxi+63hOt22NIaQMYDys5IPGfam9EgtjQnQzxtAe/atC4GBaJrNitI8SbMcHiJCtyue5J9u5x6elMerfUa5WzVVn0vBhpkW5mI2hwPIcb8/wAJKVcbwARyMjJwaJdG9JOw3JF/urjkqc/wl13k49cewqK/aruwg22x2lpzbMVLXMSpJ8yEAbR+5Uf/ABNVxj2/oOybU5Jg6MvGgKICsix3NNu6VSZjXgqnNPFp05yUKScYP9/1FZd07OL/AFJeuSvMVyVOnHrlRNPInVfUjdln2iWmLJYmgeI4W9jgWP48p4z+noKi9lmfh80zWShbqRuShZxuPtViHD7MRZ7H9VGTJ7sgf+VqHphZNM66uF9suoYS97SkSI5bcLZ2qBBVx8RBA757iqD1Xru7WLVF2saLy66m3TXoiVpWcKDayjI49cVY/T7WD1v0zfeqUttuKqz+FATFaSSJBdQtSdxJ48yUYP1/TLsl92TJdkvuFx11ZW4s91KJySf1pX+fijoLXjjSlmZNuth5R3QmpZ2m7jK+6PIaZuUVUCXvTuHhLKST+hSDkc8Va/UOFcfu1stt/vURpFvgNhhLWVpLIBU32GCSFcH1BFUPR5vUcx6ytWiWvxW2VAsuq5UhIBARn+UZ49v7aMsJc8Paqccoa0tIRJV4lMMyIsJ9xph4bVkcKWBn9u54HvQRxBHIOcmvUHIB96/RT2tDeEkuJ5Xvp+7PWe5JlNeZJG1xH8yT3Faa6XW2NrS1tz2lIcYaI3L9c/y/I1lpSE55Hf1o1pbV2qNKplIsF0fgplpCH/C2+YDseQcHk8jBqMjC4fXlMikDT9uFsjWOtdP9P9OePdHt8gjbFhNn8x9QHYeyfdR4H1wKyDrjU9z1dqWVfLosF584ShJO1pA+FCfkB/qfWgkmfLnyVSJsh6Q+v4nHXCtavqTzXOahFAI9+VOacyaGgus8cmugrnvXFNJsoNDYjBWf6U6khO7lqC5Isr+nmJzybdIebfkMBXkW4gKCCfoFq/f5CgFInJyaVAaBwgm0qVKlXVxe7ElbYCT5kj09qfMvtufCrB9jQqlQhGjzwaSSfhP6UMirXuxvVj2zRDJ2D60IXYPm5GKTjrbacrWBTKatY7KUPoaZEknJoQnsicogpaGB/Me9MySTk8mvylQhKlSpUIX/2Q==" alt="Jan – TheBaristaGame">
  <div>
    <div class="brand-title">TheBaristaGame</div>
    <div class="brand-sub">Siebträger finden, der wirklich zu dir passt</div>
  </div>
</div>

<div class="content">
  <div class="crumbs" id="crumbs"></div>
  <div class="prog-wrap" id="progWrap" style="display:none"><div class="prog-fill" id="progFill" style="width:0%"></div></div>
  <div id="screen"></div>
  <div class="nav-bar" id="navBar" style="display:none">
    <button class="back-btn" onclick="goBack()">← Zurück</button>
    <button class="restart-btn" onclick="restart()">↺ Neu starten</button>
  </div>
</div>

<script>
const LOGO = "data:image/jpeg;base64,/9j/4AAQSkZJRgABAQAAAQABAAD/4gHYSUNDX1BST0ZJTEUAAQEAAAHIAAAAAAQwAABtbnRyUkdCIFhZWiAH4AABAAEAAAAAAABhY3NwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAQAA9tYAAQAAAADTLQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAlkZXNjAAAA8AAAACRyWFlaAAABFAAAABRnWFlaAAABKAAAABRiWFlaAAABPAAAABR3dHB0AAABUAAAABRyVFJDAAABZAAAAChnVFJDAAABZAAAAChiVFJDAAABZAAAAChjcHJ0AAABjAAAADxtbHVjAAAAAAAAAAEAAAAMZW5VUwAAAAgAAAAcAHMAUgBHAEJYWVogAAAAAAAAb6IAADj1AAADkFhZWiAAAAAAAABimQAAt4UAABjaWFlaIAAAAAAAACSgAAAPhAAAts9YWVogAAAAAAAA9tYAAQAAAADTLXBhcmEAAAAAAAQAAAACZmYAAPKnAAANWQAAE9AAAApbAAAAAAAAAABtbHVjAAAAAAAAAAEAAAAMZW5VUwAAACAAAAAcAEcAbwBvAGcAbABlACAASQBuAGMALgAgADIAMAAxADb/2wBDAAUDBAQEAwUEBAQFBQUGBwwIBwcHBw8LCwkMEQ8SEhEPERETFhwXExQaFRERGCEYGh0dHx8fExciJCIeJBweHx7/2wBDAQUFBQcGBw4ICA4eFBEUHh4eHh4eHh4eHh4eHh4eHh4eHh4eHh4eHh4eHh4eHh4eHh4eHh4eHh4eHh4eHh4eHh7/wAARCABaAFoDASIAAhEBAxEB/8QAHQAAAQUBAQEBAAAAAAAAAAAABQAEBgcIAgMJAf/EAD0QAAEDAwMCBAMGBAMJAQAAAAECAwQABREGEiEHMRMiQVEyYXEIFBUjgZFCUqGxYnLBFiQzNFOCkqPh8P/EABkBAAIDAQAAAAAAAAAAAAAAAAADAgQFAf/EACURAAEEAgEEAgMBAAAAAAAAAAEAAgMRBCExEhNBURQiYXGxBf/aAAwDAQACEQMRAD8AxlSpVaHQPpFcupd5U88pyFYIiwJcsDzLPfwm88FRHc9kg5PoDwml0C1EdC6K1Nra5mBpy1uzFowXnfhaZB9VrPCf7n0Bp7rTRT+kNSyLFcpLUmTHCfEUzkIyUhWATyRz34r6DaZ0zZNK6cbstgt7MGEynyobHKj6qUe6lH1J5rHH2n2vC6vXA4x4jbS//Wkf6VDqtpKkW9LgFWkaMwnGxpAPvjn96updkjriZuPVdhQSpP5DDyEbfgJV8WOP3JTVNxu4OKtmeix3HTkmHaenN0ROcZ/KfDBOwkN4Vnv3z+hHuaqudRVtrdIbM01oedPU3duoy34yFEb1EKJA8MDHf+Hdz/hAqute2bTtvvyo2mrm5cIIaSoPqH8RHI7D/wDHFErlpDUkSC7OlWeUxHaSVuLcTt2gK25IPI83FRtQ5psZ/KRIPwhbrDjfJGR7ivKpt07ROc1ra27c3DclOPbG0S8+CrIIIXj0IJFRy+wXI9wlJU0hpbby0uNoGEoIJyB8hTg+zSUW6tDKVKlU1FSHpzpSfrbWMDTlv8q5Ln5jpGQy2OVrP0GfqcD1r6I6KsFq0vpyFYLNHDEKI2EIT6qPqpR9VE5JPuayb9ne1R4HTvUN8ZusaFfbkhUa3qMgNrQhvCuDkEbl4B/yiokzrbWDodZkapviXUDaUGY5ydw4Pm4/+VTlm2QPC1MDA+Qa6gCt+rTllX0NYs+1s14fVYr/AOpCaV/cf6VcPQjUlpatVtYk6tcMuS+UvJnyuXllsDwkJUrzHeoEKHoAPXFAftD9Or1f+qNruf4c45ZERW0zJCVDCAFqyO+ecgfrXI5h2y52krJxiyfttN0qn6XdM7nqlCJ0l0wbefhWU5W5/lHt8z/WtKxNMykwEsJuklBCRhYSgkKG3CsbcZ8oP6U00qWUMobZaDbKQEoSkYAA4AFT+1FpccgoyRjBNZUsskh0aW1FjxRMFiys29bNM66gWqTL/HV3W2PBSZKSwhLgCl7znA5G7n5Vn5xGK+gV+jMSIr0Z5CVNuJKVgjI5qrbR9mTT18hi7r1JOYRIcWfBaaQA2Qogpyc+1Pxckt+rlRzcUacxZOZW4y8l1lxbbiDlK0Egg+4IrlRKlFSiSSckn1raNs+y10/b/wCZud5lH2LyEj+iaK2v7OXS5maUOWuXJ2+jstzH9CKu/JG9FZ/xz7CwNOY8JzckeRXb5U3rf3VL7Puh5fTa9RdN6dYiXhEVT0J5BUV+KjzBOST8WNv/AHVgGn484mBPpKmiMZoqz7IzdYlhtDzjzybc+lxLLbalFZCOXFbQR5MhfIPGDVmuNaPsS4lwulmiXJqVCUyyhKFbVubwpTiiVgk7d4HORuHGBVeR4kWJHekeGw08S+1J/MwVD4kYST2O3PA9PpUz1RabperRaodyjzVThEQyGi2Wkpc8JLbYOSAThPOe+/P1QKfynOHToJrq78Btdosl403bHocV1+SW90suqZdKGfMnKUkEDtyeeavrp3d50vo5NlXubPnRZEvw7fLmAl51tW3AUP8ACrcM9uM9qznZrRe5GlLhH8IGTHmNGQPGSNiSpKdpJOBnbjHy+VXFqHXc3UmpImjbbfoD1tuKVGGiJAwtDzRStDJc3kDIByoJHtjmqbo5KdfO1bifGHNHjSZt6yRpya7A+4LkFlRCkhwEkYzkAfLmpa9raanS0W+2m3F9uRwAf4McEkD2PFRNxdn085cpklh4TmSpSmSogqUeR5fXvRnR2q7bIsUa3Wj8+4fmKDKo6ktgklXm9EjNJr6ggLWA3TnD9I3Z9QXO8rQ27EcThJU4S2EhPp3BPrUt0LKmoj/cgv8A3ZPiKIKMHcV8EH1BBI+oqGwNWwZcRUVm2/c5iFbJDKU42K9efb51M7a+zp7TsKfclkMSQNq0AqDaVEnKvYfPnHeuxMInCRluYID5Ui8VxKshRzTy2qWmYFODG8UMkPtIa8UqBT7jmqr1H9oWytX6PYrDYZlymMuFqQpxxLKUqSccZzn19q05y2qWFDd2tCEcV8+Nf9E71/t3qD8NSEQvxOT92Ts+FvxVbR+2K2zofX9n1NYJ912u25u3OqZlCWUp2FKQonIJBGCOa8TeNFyz96E9lQe/MyW1c559vnWXDk9k3fKuyQmTR8LIusLLZnNLaavhS4XH0sPrVkELQ4kKUOOR8R4PIx7UT6p37TV4lG1XAT2Wos6MzIWyUrSW1scKBJB3JCSD6etR/pndzqDoneLI88lyTZVNSG2lJ3KUyHMHB9P+Nj6IrvqpbG49plXN9hliRcnbVJh+EQUOsmNJ3qGCcchvI45V2psTemV0YJFHW/dFRkeHRteRzylcrbIsmin4ticjoYuCm1mQy6XA+ttR8NKSSSkckEDuQM0f6QSrE/frNJS6F3iLfI0gpS2Ultl0FCkqPZW0qAyO4I5qCadD03ptqG3pZXIdS82+htKclpIC1qcSe4x4fJ9s1zofU6tFoXfxPYduT8cwUxnAouMpAbUlzAOFAbAkZ7HnuBXYhLTmuNkGv3wf4VLIMRIMYoEcelfP2jdPPx7u9dAhX3W4tgMyE923ADlB/fI/b0oT00s7yrcomBhx0edZcXs47HaVf3qLudY9SdRLZcrHNVFZgMqStjYwEuq852qWcnsAPhx35zQxi+63hOt22NIaQMYDys5IPGfam9EgtjQnQzxtAe/atC4GBaJrNitI8SbMcHiJCtyue5J9u5x6elMerfUa5WzVVn0vBhpkW5mI2hwPIcb8/wAJKVcbwARyMjJwaJdG9JOw3JF/urjkqc/wl13k49cewqK/aruwg22x2lpzbMVLXMSpJ8yEAbR+5Uf/ABNVxj2/oOybU5Jg6MvGgKICsix3NNu6VSZjXgqnNPFp05yUKScYP9/1FZd07OL/AFJeuSvMVyVOnHrlRNPInVfUjdln2iWmLJYmgeI4W9jgWP48p4z+noKi9lmfh80zWShbqRuShZxuPtViHD7MRZ7H9VGTJ7sgf+VqHphZNM66uF9suoYS97SkSI5bcLZ2qBBVx8RBA757iqD1Xru7WLVF2saLy66m3TXoiVpWcKDayjI49cVY/T7WD1v0zfeqUttuKqz+FATFaSSJBdQtSdxJ48yUYP1/TLsl92TJdkvuFx11ZW4s91KJySf1pX+fijoLXjjSlmZNuth5R3QmpZ2m7jK+6PIaZuUVUCXvTuHhLKST+hSDkc8Va/UOFcfu1stt/vURpFvgNhhLWVpLIBU32GCSFcH1BFUPR5vUcx6ytWiWvxW2VAsuq5UhIBARn+UZ49v7aMsJc8Paqccoa0tIRJV4lMMyIsJ9xph4bVkcKWBn9u54HvQRxBHIOcmvUHIB96/RT2tDeEkuJ5Xvp+7PWe5JlNeZJG1xH8yT3Faa6XW2NrS1tz2lIcYaI3L9c/y/I1lpSE55Hf1o1pbV2qNKplIsF0fgplpCH/C2+YDseQcHk8jBqMjC4fXlMikDT9uFsjWOtdP9P9OePdHt8gjbFhNn8x9QHYeyfdR4H1wKyDrjU9z1dqWVfLosF584ShJO1pA+FCfkB/qfWgkmfLnyVSJsh6Q+v4nHXCtavqTzXOahFAI9+VOacyaGgus8cmugrnvXFNJsoNDYjBWf6U6khO7lqC5Isr+nmJzybdIebfkMBXkW4gKCCfoFq/f5CgFInJyaVAaBwgm0qVKlXVxe7ElbYCT5kj09qfMvtufCrB9jQqlQhGjzwaSSfhP6UMirXuxvVj2zRDJ2D60IXYPm5GKTjrbacrWBTKatY7KUPoaZEknJoQnsicogpaGB/Me9MySTk8mvylQhKlSpUIX/2Q==";
const AFF = "https://amzlink.to/az0eUVygN5Bs1"; // Fallback-Link

// Maschinen-Datenbank
const MACHINES = {
  cecotec: {
    name: "Cecotec Baristeo Intima",
    price: "ca. 200–250 €",
    badge: "Einsteiger",
    why: "Für den Einstieg ins Siebträgerleben mit kleinem Budget. 58-mm-Siebträger, regelbare Temperatur, kompaktes Design. Der ideale erste Schritt, um zu lernen, ob Siebträger wirklich etwas für dich ist — ohne viel zu riskieren.",
    pros: ["58-mm-Siebträger (Profi-Maß)", "Temperatur regelbar", "Sehr kompakt & günstig", "Gute Lernmaschine"],
    cons: ["Etwas temperaturunstabil", "Materialqualität lässt zu wünschen übrig", "Kunststoff-lastig", "Kein Dual Boiler"],
    link: "https://amzn.to/3Nye8Ci"
  },
  victoria: {
    name: "Lelit Victoria",
    price: "ca. 700–800 €",
    badge: "Mittelklasse",
    why: "Die Lelit Victoria ist ein solider Einkreiser mit 58-mm-Siebträger und PID-Temperaturregelung. Perfekt für alle, die ernsthaft Espresso zubereiten wollen, ohne sofort ins Profi-Segment zu wechseln. Milchgetränke sind möglich, aber nicht gleichzeitig.",
    pros: ["PID-Temperaturregelung", "58-mm-Profi-Siebträger", "Kompaktes, hochwertiges Gehäuse", "Sehr gute Espresso-Qualität"],
    cons: ["Einkreiser: Espresso & Dampf nicht gleichzeitig", "Wartezeit zwischen Espresso & Milch", "Kein Dual Boiler", "Kein Druckprofiling"],
    link: "https://amzlink.to/az0reHp0PdjTp"
  },
  elizabeth: {
    name: "Lelit Elizabeth",
    price: "ca. 900–1.100 €",
    badge: "Dual Boiler – Einstieg",
    why: "Die Elizabeth ist der günstigste Weg in die Dual-Boiler-Welt. Zwei separate Kessel für Espresso und Dampf ermöglichen echten Parallelbetrieb — ideal, wenn du oft Cappuccino oder Latte machst oder Gäste bewirtest. Sehr gute Verarbeitung für den Preis.",
    pros: ["Echter Dual Boiler", "Espresso & Dampf gleichzeitig", "PID für beide Kessel", "Ideal für Milchgetränke & Gäste"],
    cons: ["Kein Druckprofiling", "Einige Minuten Aufwärmzeit", "Eher schlichtes Design", "Keine E61-Gruppe"],
    link: "https://amzlink.to/az07JNWwC4IMe"
  },
  sage_db: {
    name: "Sage Dual Boiler",
    price: "ca. 1.100–1.300 €",
    badge: "Dual Boiler – Feature-stark",
    why: "Einer der feature-reichsten Dual Boiler seiner Klasse. Mit eingebautem PID, vielen Einstellmöglichkeiten und intuitivem Display. Kein Druckprofiling, aber sehr viel Kontrolle über Temperatur und Bezug. Gut für alle, die Technik lieben ohne E61-Ästhetik zu brauchen.",
    pros: ["Echter Dual Boiler", "Sehr viele Einstellmöglichkeiten", "Intuitives Display", "Schnelle Aufwärmzeit"],
    cons: ["Kein Druckprofiling", "Eher technisches, weniger klassisches Design", "Kunststoffanteile im Gehäuse", "Reparatur oft nur beim Hersteller"],
    link: "https://amzlink.to/az01L1PDnYsvs"
  },
  mara: {
    name: "Lelit Mara V3",
    price: "ca. 1.100–1.300 €",
    badge: "E61 + Druckprofiling",
    why: "Die Lelit Mara V3 ist ein Einkreiser mit E61-Brühgruppe und Druckprofilierungsmöglichkeit. Für alle, die die klassische Ästhetik einer E61-Maschine wollen und trotzdem Druckprofiling nutzen möchten — zu einem deutlich günstigeren Preis als die Bianca.",
    pros: ["E61-Brühgruppe (klassische Ästhetik)", "Druckprofilierung möglich", "Sehr gute Espresso-Qualität", "Hochwertiges Gehäuse"],
    cons: ["Einkreiser: Espresso & Dampf nicht gleichzeitig", "Wartezeit beim Wechsel zu Dampf", "Kein Dual Boiler", "Längere Aufwärmzeit"],
    link: "https://amzlink.to/az0eUVygN5Bs1"
  },
  ascaso: {
    name: "Ascaso DUO PID",
    price: "ca. 1.800–2.000 €",
    badge: "Dual Boiler – Kompakt & schnell",
    why: "Die Ascaso DUO PID ist eine hervorragende Alternative zur Bianca, wenn Aufheizzeit und Energieeffizienz wichtiger sind als E61-Ästhetik. Schnell betriebsbereit, kompakter Dual Boiler mit PID, ansprechendes modernes Design.",
    pros: ["Schnelle Aufwärmzeit (unter 10 Min.)", "Dual Boiler mit PID-Regelung", "Energieeffizienter als E61-Maschinen", "Modernes, kompaktes Design"],
    cons: ["Keine E61-Brühgruppe", "Druckprofiling eingeschränkt", "Weniger klassische Optik", "Kein Paddle wie bei der Bianca"],
    link: "https://amzlink.to/az0eUVygN5Bs1"
  },
  bianca: {
    name: "Lelit Bianca V3",
    price: "ca. 1.800–2.000 €",
    badge: "E61 + Druckprofiling",
    why: "Die Bianca ist die Wahl für alle, die Ästhetik, Druckprofilierung und handwerkliche Qualität vereinen wollen. E61-Brühgruppe, Paddle-Drucksteuerung, Dual Boiler — und ein zeitloses Design aus Edelstahl. Eine Maschine, die man jahrzehntelang behalten kann.",
    pros: ["Dual Boiler + E61-Gruppe", "Manuelle Druckprofilierung (Paddle)", "Exzellente Verarbeitungsqualität", "Zeitloses Design, lange Lebensdauer"],
    cons: ["Ca. 20–25 Min. Aufwärmzeit", "Höheres Investment", "Größer & schwerer als Kompaktmodelle", "Druckprofiling manuell (kein digitales Chart)"],
    link: "https://amzlink.to/az0zADwBwF2T1"
  },
  ecm: {
    name: "ECM Synchronika",
    price: "ca. 2.500–3.000+ €",
    badge: "Premium – E61 & Druckprofiling",
    why: "Die Synchronika ist für alle, die maximale Qualität, E61-Ästhetik und Druckprofilierung vereinen wollen. Dual Boiler, E61-Gruppe, manuelles Druckprofiling und makellose Edelstahlverarbeitung Made in Germany. Nachrüstbar mit digitaler Druckprofilierung. Eine Maschine für die Ewigkeit.",
    pros: ["Premium-Verarbeitung (Made in Germany)", "Dual Boiler + E61 + Druckprofiling", "Nachrüstbar mit Flow Control", "Extrem langlebig und wartbar"],
    cons: ["Sehr hoher Preis", "Ca. 20–30 Min. Aufwärmzeit", "Schwer und groß", "Druckprofiling nachrüstbar, nicht serienmäßig digital"],
    link: "https://amzlink.to/az0eUVygN5Bs1"
  },
  nunc: {
    name: "Nunc Espresso Machine",
    price: "ca. 2.500–3.000 €",
    badge: "Premium – Einsteigerfreundlich & upgradebar",
    why: "Die Nunc ist ein neues Konzept: Eine hochwertige Maschine, die bewusst einsteigerfreundlich gestaltet ist — und sich trotzdem für die Zukunft mit Upgrades erweitern lässt. Ideal für alle, die langfristig in die Specialty-Welt einsteigen wollen, ohne sofort alles wissen zu müssen.",
    pros: ["Einsteigerfreundliche Bedienung", "Hochwertige Verarbeitung", "Upgrade-Möglichkeiten für die Zukunft", "Modernes, durchdachtes Design"],
    cons: ["Neueres Produkt (weniger Community-Erfahrungen)", "Kein klassischer E61-Charme", "Teurer Einstiegspreis", "Ersatzteile noch begrenzt verfügbar"],
    link: "https://nunc.coffee/thebaristagame"
  }
};

// Entscheidungsbaum
const TREE = {
  start: { type: 'intro' },

  budget: {
    type: 'choice', crumb: 'Budget',
    step: 'Schritt 1 von 7',
    title: 'Was ist dein Budget für die Maschine?',
    hint: 'Denk auch an Zubehör (Mühle, Waage) — das kostet nochmal ca. 150–400 € extra.',
    options: [
      { e: '&#x1f4b6;', l: 'Bis 250 €', d: 'Einstieg, Grundfunktionen', n: 'milk_cheap' },
      { e: '&#x1f4b6;', l: '700–800 €', d: 'Solide Mittelklasse', n: 'milk_mid' },
      { e: '&#x1f4b6;', l: '900–1.300 €', d: 'Dual Boiler & E61-Einstieg', n: 'milk_db' },
      { e: '&#x1f4b6;', l: '1.800–2.000 €', d: 'Enthusiast, E61', n: 'warmup_high' },
      { e: '&#x1f4b6;', l: '2.500–3.000+ €', d: 'Premium, keine Kompromisse', n: 'premium_style' }
    ]
  },

  // === GÜNSTIG-PFAD ===
  milk_cheap: {
    type: 'choice', crumb: 'Milchgetränke?',
    step: 'Schritt 2 von 7',
    title: 'Trinkst du hauptsächlich Espresso oder auch Cappuccino & Latte?',
    options: [
      { e: '&#x2615;', l: 'Hauptsächlich Espresso', d: 'Schwarz, pur', n: 'result_cecotec' },
      { e: '&#x1f95b;', l: 'Viel Milch & Cappuccino', d: 'Oft auch für andere', n: 'result_cecotec_milk' }
    ]
  },

  // === MITTELKLASSE-PFAD ===
  milk_mid: {
    type: 'choice', crumb: 'Milchgetränke?',
    step: 'Schritt 2 von 7',
    title: 'Trinkst du hauptsächlich Espresso oder auch Cappuccino & Latte?',
    options: [
      { e: '&#x2615;', l: 'Hauptsächlich Espresso', d: 'Schwarz, pur', n: 'guests_mid' },
      { e: '&#x1f95b;', l: 'Viel Milch & Cappuccino', d: 'Regelmäßig Milchgetränke', n: 'guests_mid_milk' }
    ]
  },
  guests_mid: {
    type: 'choice', crumb: 'Gäste?',
    step: 'Schritt 3 von 7',
    title: 'Bereitest du Espresso auch häufiger für Gäste zu?',
    options: [
      { e: '&#x1f9cd;', l: 'Eher für mich allein', d: '1–2 Personen', n: 'result_victoria' },
      { e: '&#x1f468;&#x200d;&#x1f469;&#x200d;&#x1f467;', l: 'Ja, mehrere Personen', d: 'Öfter 3+ Tassen hintereinander', n: 'result_victoria_note' }
    ]
  },
  guests_mid_milk: {
    type: 'choice', crumb: 'Gäste?',
    step: 'Schritt 3 von 7',
    title: 'Bereitest du Espresso auch häufiger für Gäste zu?',
    options: [
      { e: '&#x1f9cd;', l: 'Eher für mich allein', d: '1–2 Personen', n: 'result_victoria' },
      { e: '&#x1f468;&#x200d;&#x1f469;&#x200d;&#x1f467;', l: 'Ja, mehrere Personen', d: 'Öfter 3+ Tassen gleichzeitig', n: 'budget_stretch_db' }
    ]
  },
  budget_stretch_db: {
    type: 'choice', crumb: 'Budget erhöhen?',
    step: 'Schritt 4 von 7',
    title: 'Für viele Milchgetränke und Gäste ist ein Dual Boiler sinnvoll.',
    hint: 'Die Lelit Elizabeth (ca. 1.000 €) ermöglicht Espresso & Dampf gleichzeitig. Wäre das Budget streckbar?',
    options: [
      { e: '&#x2705;', l: 'Ja, auf ~1.000 € möglich', d: 'Lieber einmal mehr investieren', n: 'result_elizabeth' },
      { e: '&#x274c;', l: 'Nein, maximal 800 €', d: 'Budget bleibt fix', n: 'result_victoria' }
    ]
  },

  // === DUAL BOILER / E61 PFAD (900–1300€) ===
  milk_db: {
    type: 'choice', crumb: 'Milchgetränke?',
    step: 'Schritt 2 von 7',
    title: 'Trinkst du hauptsächlich Espresso oder auch Cappuccino & Latte?',
    options: [
      { e: '&#x2615;', l: 'Hauptsächlich Espresso', d: 'Schwarz, pur', n: 'aesthetic_db' },
      { e: '&#x1f95b;', l: 'Viel Milch & Cappuccino', d: 'Regelmäßig Milchgetränke', n: 'guests_db' }
    ]
  },
  aesthetic_db: {
    type: 'choice', crumb: 'E61-Ästhetik?',
    step: 'Schritt 3 von 7',
    title: 'Ist dir eine E61-Brühgruppe oder klassische Ästhetik wichtig?',
    hint: 'Die E61-Gruppe ist das klassische Erkennungsmerkmal von Profi-Siebträgern — optisch markant, thermisch stabil.',
    options: [
      { e: '&#x2728;', l: 'Ja, klassisches Design', d: 'E61 und Druckprofiling klingen gut', n: 'result_mara' },
      { e: '&#x1f527;', l: 'Nein, Funktion zählt', d: 'Hauptsache guter Espresso', n: 'warmup_db' }
    ]
  },
  guests_db: {
    type: 'choice', crumb: 'Gäste?',
    step: 'Schritt 3 von 7',
    title: 'Bereitest du Espresso auch häufiger für Gäste zu?',
    options: [
      { e: '&#x1f9cd;', l: 'Eher für mich allein', d: '1–2 Personen', n: 'aesthetic_db' },
      { e: '&#x1f468;&#x200d;&#x1f469;&#x200d;&#x1f467;', l: 'Ja, mehrere Personen', d: 'Öfter 3+ Tassen gleichzeitig', n: 'warmup_db' }
    ]
  },
  warmup_db: {
    type: 'choice', crumb: 'Aufwärmzeit?',
    step: 'Schritt 4 von 7',
    title: 'Wie wichtig ist dir eine schnelle Aufwärmzeit?',
    hint: 'Die Lelit Elizabeth braucht ca. 10–15 Min., der Sage Dual Boiler ist etwas schneller einsatzbereit.',
    options: [
      { e: '&#x26a1;', l: 'Wichtig — ich will schnell starten', d: 'Morgens wenig Zeit', n: 'result_sage_db' },
      { e: '&#x1f550;', l: 'Egal, ich warte gern', d: 'Ritual gehört dazu', n: 'result_elizabeth' }
    ]
  },

  // === ENTHUSIAST-PFAD (1800–2000€) ===
  warmup_high: {
    type: 'choice', crumb: 'Aufwärmzeit?',
    step: 'Schritt 2 von 7',
    title: 'Wie wichtig ist dir eine schnelle Aufwärmzeit?',
    hint: 'E61-Maschinen wie die Bianca brauchen 20–25 Min. Die Ascaso DUO PID ist in unter 10 Min. einsatzbereit.',
    options: [
      { e: '&#x26a1;', l: 'Sehr wichtig', d: 'Ich will morgens schnell starten', n: 'energy_ascaso' },
      { e: '&#x1f550;', l: 'Kein Problem', d: 'Ich plane die Aufwärmzeit ein', n: 'pressure_high' }
    ]
  },
  energy_ascaso: {
    type: 'choice', crumb: 'Energiesparen?',
    step: 'Schritt 3 von 7',
    title: 'Möchtest du auch beim Stromverbrauch sparen?',
    hint: 'Die Ascaso DUO PID ist deutlich energieeffizienter als klassische E61-Maschinen.',
    options: [
      { e: '&#x1f331;', l: 'Ja, gerne effizienter', d: 'Weniger Verbrauch ist besser', n: 'result_ascaso' },
      { e: '&#x26a1;', l: 'Nicht so wichtig', d: 'Effizienz ist mir egal', n: 'result_ascaso' }
    ]
  },
  pressure_high: {
    type: 'choice', crumb: 'Druckprofiling?',
    step: 'Schritt 3 von 7',
    title: 'Möchtest du den Druck beim Bezug manuell steuern (Druckprofiling)?',
    hint: 'Die Lelit Bianca hat eine Paddle-Steuerung für manuelle Druckprofilierung — ein echtes Highlight für Enthusiasten.',
    options: [
      { e: '&#x1f39b;', l: 'Ja, auf jeden Fall', d: 'Ich will volle Kontrolle', n: 'result_bianca' },
      { e: '&#x2615;', l: 'Nicht so wichtig', d: 'Guter Espresso ohne Komplexität', n: 'result_bianca' }
    ]
  },

  // === PREMIUM-PFAD (2500–3000+€) ===
  premium_style: {
    type: 'choice', crumb: 'Stil & Priorität?',
    step: 'Schritt 2 von 7',
    title: 'Was ist dir bei deiner Premium-Maschine am wichtigsten?',
    options: [
      { e: '&#x2728;', l: 'Ästhetik & E61 & Druckprofiling', d: 'Klassisches Design, Made in Germany', n: 'result_ecm' },
      { e: '&#x1f680;', l: 'Einsteigerfreundlich & upgradebar', d: 'Moderne Maschine mit Zukunft', n: 'result_nunc' }
    ]
  },

  // === RESULTS ===
  result_cecotec:   { type: 'result', machine: 'cecotec' },
  result_cecotec_milk: { type: 'result', machine: 'cecotec',
    extra: '&#x26a0; Für häufige Milchgetränke ist ein Thermoblock-System nicht ideal — der Dampf ist zwar kräftig, aber feuchter als bei einem Dual Boiler. Außerdem musst du zwischen Espresso und Dampfen umschalten. Sie reicht für gelegentlichen Cappuccino, aber bei mehr Milch lohnt sich langfristig mehr Budget.' },
  result_victoria:  { type: 'result', machine: 'victoria' },
  result_victoria_note: { type: 'result', machine: 'victoria',
    extra: '&#x26a0; Die Victoria ist ein Einkreiser: Du kannst Espresso und Dampf nicht gleichzeitig nutzen. Für viele Gäste bedeutet das Wartezeiten. Wenn das ein Problem ist, empfehle ich, auf die Lelit Elizabeth zu schauen.' },
  result_elizabeth: { type: 'result', machine: 'elizabeth' },
  result_sage_db:   { type: 'result', machine: 'sage_db' },
  result_mara:      { type: 'result', machine: 'mara' },
  result_ascaso:    { type: 'result', machine: 'ascaso' },
  result_bianca:    { type: 'result', machine: 'bianca' },
  result_bianca_note: { type: 'result', machine: 'bianca',
    extra: '&#x1f4a1; Tipp: Mit einer Smart Plug-Steckdose oder Zeitschaltuhr kannst du die Bianca automatisch vorheizen lassen — so ist sie morgens direkt einsatzbereit.' },
  result_ecm:       { type: 'result', machine: 'ecm' },
  result_nunc:      { type: 'result', machine: 'nunc' }
};

// === STATE ===
let path = [];
let current = 'start';
const TOTAL = 6;

function go(id) {
  if (current !== 'start') path.push(current);
  current = id;
  render();
}
function goBack() {
  if (!path.length) return;
  current = path.pop();
  render();
}
function restart() {
  path = [];
  current = 'start';
  render();
}

function render() {
  const node = TREE[current];
  if (!node) return;

  // breadcrumb
  const crumbsEl = document.getElementById('crumbs');
  if (current === 'start') {
    crumbsEl.innerHTML = '';
  } else {
    const parts = path.map(id => {
      const n = TREE[id];
      return n && n.crumb ? `<span class="crumb">${n.crumb}</span><span class="crumb-sep">›</span>` : '';
    }).join('');
    const cur = node.crumb ? `<span class="crumb-cur">${node.crumb}</span>` : '';
    crumbsEl.innerHTML = parts + cur;
  }

  // progress
  const pw = document.getElementById('progWrap');
  const pf = document.getElementById('progFill');
  if (current === 'start') { pw.style.display = 'none'; }
  else {
    pw.style.display = 'block';
    const depth = Math.min(path.length + 1, TOTAL);
    pf.style.width = (depth / TOTAL * 100) + '%';
  }

  // nav
  document.getElementById('navBar').style.display = current === 'start' ? 'none' : 'flex';

  const screen = document.getElementById('screen');

  // INTRO
  if (node.type === 'intro') {
    screen.innerHTML = `
      <div class="screen">
        <div class="intro">
          <img decoding="async" class="intro-logo" src="${LOGO}" alt="Jan">
          <h2>Welcher Siebträger passt zu dir?</h2>
          <p>6 kurze Fragen — und du bekommst eine persönliche Empfehlung, die wirklich zu deinem Alltag und Budget passt.</p>
          <div class="intro-features">
            <div class="feat"><span class="feat-icon">&#x1f4b6;</span><span class="feat-label">Budget-Check</span></div>
            <div class="feat"><span class="feat-icon">&#x2615;</span><span class="feat-label">Nutzungsverhalten</span></div>
            <div class="feat"><span class="feat-icon">&#x1f3c6;</span><span class="feat-label">Persönliche Empfehlung</span></div>
          </div>
          <button class="start-btn" onclick="go('budget')">Jetzt starten →</button>
        </div>
      </div>`;
    return;
  }

  // CHOICE
  if (node.type === 'choice') {
    const hintHtml = node.hint ? `<p class="hint">${node.hint}</p>` : '';
    const opts = node.options.map(o => `
      <button class="opt-btn" onclick="go('${o.n}')">
        <span class="opt-emoji">${o.e}</span>
        <span class="opt-txt">
          <div class="opt-label">${o.l}</div>
          ${o.d ? `<div class="opt-desc">${o.d}</div>` : ''}
        </span>
        <span class="opt-arrow">›</span>
      </button>`).join('');
    screen.innerHTML = `
      <div class="screen">
        <div class="q-card">
          <div class="step-label">${node.step || ''}</div>
          <h2>${node.title}</h2>
          ${hintHtml}
          <div class="options">${opts}</div>
        </div>
      </div>`;
    return;
  }

  // RESULT
  if (node.type === 'result') {
    const m = MACHINES[node.machine];
    const pros = m.pros.map(p => `<div class="pc-item">${p}</div>`).join('');
    const cons = m.cons.map(c => `<div class="pc-item">${c}</div>`).join('');
    const extraHtml = node.extra ? `<div class="ctx-box" style="margin-bottom:1.1rem">${node.extra}</div>` : '';
    const linkUrl = m.link || AFF;
    screen.innerHTML = `
      <div class="screen">
        <div class="res-card">
          <div class="res-head">
            <span class="res-badge">✓ Empfehlung</span>
            <h2>${m.name}</h2>
            <div class="res-price">${m.price}</div>
          </div>
          <div class="res-body">
            ${extraHtml}
            <p class="res-why">${m.why}</p>
            <div class="pros-cons">
              <div class="pc-box pc-pros">
                <div class="pc-title">Vorteile</div>
                ${pros}
              </div>
              <div class="pc-box pc-cons">
                <div class="pc-title">Nachteile</div>
                ${cons}
              </div>
            </div>
            <div class="res-cta">
              <div class="res-cta-txt">
                <strong>Direkt in meinem Amazon-Store ansehen</strong>
                Equipment, das ich selbst täglich benutze und guten Gewissens weiterempfehlen kann — in allen Preiskategorien.
              </div>
              <a class="res-cta-btn" href="${linkUrl}" target="_blank" rel="noopener">Jetzt ansehen →</a>
            </div>
          </div>
        </div>
        <div class="disclaimer">* Affiliate-Link: Bei einem Kauf über diesen Link erhalte ich eine kleine Provision – für dich entstehen keine Mehrkosten. Ich empfehle nur Equipment, das ich selbst nutze. &#x2615;</div>
      </div>`;
  }
}

render();
</script>
</body>
</html>



<figure class="wp-block-embed is-type-video is-provider-youtube wp-block-embed-youtube wp-embed-aspect-16-9 wp-has-aspect-ratio"><div class="wp-block-embed__wrapper">
<iframe title="Welchen Siebträger solltest du DIR kaufen?" width="720" height="405" src="https://www.youtube.com/embed/f2C3FSKte-A?feature=oembed" frameborder="0" allow="accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture; web-share" referrerpolicy="strict-origin-when-cross-origin" allowfullscreen></iframe>
</div></figure>
]]></content:encoded>
					
					<wfw:commentRss>https://thebaristagame.de/guide/guide-zum-passenden-siebtraeger/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
			</item>
		<item>
		<title>Guide zum perfekten Espresso</title>
		<link>https://thebaristagame.de/guide/guide-zum-perfekten-espresso/</link>
					<comments>https://thebaristagame.de/guide/guide-zum-perfekten-espresso/#respond</comments>
		
		<dc:creator><![CDATA[TheBaristaGame]]></dc:creator>
		<pubDate>Tue, 17 Mar 2026 15:22:21 +0000</pubDate>
				<category><![CDATA[Guide]]></category>
		<category><![CDATA[perfekter espresso]]></category>
		<category><![CDATA[problemlöser]]></category>
		<guid isPermaLink="false">https://thebaristagame.de/?p=302</guid>

					<description><![CDATA[Espresso Problemlöser – TheBaristaGame TheBaristaGame Espresso verstehen &#38; perfektionieren ← Zurück ↺ Neu starten]]></description>
										<content:encoded><![CDATA[
<div class="wp-block-group alignwide"><div class="wp-block-group__inner-container is-layout-constrained wp-block-group-is-layout-constrained">
<!DOCTYPE html>
<html lang="de">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>Espresso Problemlöser – TheBaristaGame</title>
<link href="https://fonts.googleapis.com/css2?family=Playfair+Display:ital,wght@0,400;0,700;1,400&#038;family=Source+Sans+3:wght@300;400;600;700&#038;display=swap" rel="stylesheet">
<style>
:root {
  --bg: #F5EDE0;
  --surface: #FFF7EB;
  --surface-h: #FFF2DF;
  --surface-2: #F5E3CF;
  --gold: #C9A96E;
  --gold-l: #E8C98A;
  --cream: #F5EDE0;
  --muted: #A08870;
  --border: rgba(160,136,112,0.25);
  --border-h: rgba(160,136,112,0.45);
  --green: #5DB85D;
  --green-bg: #F0F7F0;
  --green-border: rgba(93,184,93,0.35);
}
*{margin:0;padding:0;box-sizing:border-box;}
body{font-family:'Source Sans 3',sans-serif;background:var(--bg);color:#3D2B1A;min-height:100vh;}


/* GESCHMACK INFO */
.geschmack-info{margin-bottom:1.25rem;background:var(--surface);border:1px solid var(--border);border-radius:16px;padding:1.5rem;}
.gi-title{font-family:'Playfair Display',serif;font-size:1.1rem;color:var(--gold);margin-bottom:.3rem;}
.gi-sub{font-size:.8rem;color:var(--muted);font-weight:300;margin-bottom:1rem;line-height:1.5;}
.gi-grid{display:grid;grid-template-columns:1fr 1fr;gap:.9rem;}
.gi-box{border-radius:12px;padding:1rem;border:1px solid;}
.gi-bitter{background:#FFF0E0;border-color:rgba(201,169,110,.45);}
.gi-sauer{background:#EAF4F7;border-color:rgba(100,170,190,.45);}
.gi-icon{font-size:1.4rem;margin-bottom:.4rem;}
.gi-name{font-weight:700;font-size:.9rem;color:#3D2B1A;margin-bottom:.15rem;}
.gi-where{font-size:.72rem;color:#9B6D30;font-weight:600;margin-bottom:.5rem;font-style:italic;}
.gi-desc{font-size:.77rem;color:var(--muted);font-weight:300;line-height:1.55;}
@media(max-width:500px){.gi-grid{grid-template-columns:1fr;}}

/* AFFILIATE BANNER */
.affiliate-banner{margin-top:1rem;background:var(--surface);border:1px solid var(--border);border-radius:14px;padding:1rem 1.3rem;display:flex;align-items:center;justify-content:space-between;gap:1rem;flex-wrap:wrap;font-size:.85rem;color:var(--muted);font-weight:300;}
.aff-banner-btn{background:var(--gold);color:#0D0B09;text-decoration:none;border-radius:8px;padding:.45rem 1rem;font-size:.8rem;font-weight:700;white-space:nowrap;transition:background .2s;flex-shrink:0;}
.aff-banner-btn:hover{background:var(--gold-l);}

/* YOUTUBE */
.yt-wrap{margin-top:1rem;}
.yt-label{font-size:.72rem;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:var(--gold);margin-bottom:.6rem;}
.yt-frame{position:relative;padding-bottom:56.25%;height:0;border-radius:14px;overflow:hidden;border:1px solid var(--border);}
.yt-frame iframe{position:absolute;top:0;left:0;width:100%;height:100%;}

/* HEADER */
.header{background:var(--surface);border-bottom:1px solid var(--border);padding:.9rem 2rem;display:flex;align-items:center;gap:1rem;}
.logo-img{width:52px;height:52px;border-radius:50%;border:2px solid var(--gold);object-fit:cover;flex-shrink:0;}
.brand-title{font-family:'Playfair Display',serif;font-size:1.15rem;color:var(--gold);font-weight:700;line-height:1.2;}
.brand-sub{font-size:.72rem;color:var(--muted);font-weight:300;letter-spacing:.03em;}



/* TAB CONTENT */
.tab-content{display:none;}
.tab-content.active{display:block;}
.content{max-width:720px;margin:0 auto;padding:2rem 1.5rem;}

/* SCREEN */
.screen{animation:fadeUp .35s ease;}
@keyframes fadeUp{from{opacity:0;transform:translateY(14px);}to{opacity:1;transform:translateY(0);}}

/* PROGRESS */
.prog-wrap{height:3px;background:rgba(201,169,110,.1);border-radius:2px;margin-bottom:1.5rem;overflow:hidden;}
.prog-fill{height:100%;background:var(--gold);border-radius:2px;transition:width .4s ease;}

/* BREADCRUMB */
.crumbs{display:flex;align-items:center;flex-wrap:wrap;gap:.3rem;margin-bottom:1.25rem;min-height:1.2rem;}
.crumb{font-size:.68rem;color:var(--muted);font-weight:300;}
.crumb-sep{font-size:.6rem;color:rgba(160,136,112,0.4);}
.crumb-cur{font-size:.68rem;color:var(--gold);font-weight:600;}

/* INTRO CARD */
.intro{background:var(--surface);border:1px solid var(--border);border-radius:16px;padding:3rem 2rem;text-align:center;}
.intro-logo{width:84px;height:84px;border-radius:50%;border:3px solid var(--gold);object-fit:cover;display:block;margin:0 auto 1.5rem;}
.intro h2{font-family:'Playfair Display',serif;font-size:2rem;color:var(--gold);margin-bottom:.6rem;}
.intro p{font-size:.95rem;color:var(--muted);font-weight:300;line-height:1.65;margin-bottom:2rem;max-width:480px;margin-left:auto;margin-right:auto;}
.intro-features{display:flex;justify-content:center;gap:2rem;margin-bottom:2rem;flex-wrap:wrap;}
.feat{text-align:center;}
.feat-icon{font-size:1.4rem;display:block;margin-bottom:.3rem;}
.feat-label{font-size:.72rem;color:var(--muted);font-weight:300;}

/* QUESTION CARD */
.q-card{background:var(--surface);border:1px solid var(--border);border-radius:16px;padding:2rem;}
.step-label{font-size:.65rem;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:var(--gold);margin-bottom:.65rem;}
.q-card h2{font-family:'Playfair Display',serif;font-size:1.45rem;color:#3D2B1A;margin-bottom:.4rem;line-height:1.3;}
.hint{font-size:.82rem;color:var(--muted);font-weight:300;margin-bottom:.65rem;line-height:1.5;}
.ctx-box{background:rgba(201,169,110,.12);border:1px solid rgba(201,169,110,.30);border-radius:8px;padding:.6rem 1rem;font-size:.8rem;color:#7A4E1A;margin-bottom:1.25rem;line-height:1.4;}
.options{display:flex;flex-direction:column;gap:.7rem;margin-top:1.25rem;}
.opt-btn{background:var(--surface-2);border:1px solid var(--border);border-radius:11px;padding:.9rem 1.1rem;cursor:pointer;transition:all .2s;text-align:left;color:#3D2B1A;display:flex;align-items:center;gap:.9rem;}
.opt-btn:hover{background:var(--surface-h);border-color:var(--border-h);transform:translateX(4px);}
.opt-emoji{font-size:1.3rem;min-width:2rem;text-align:center;}
.opt-txt{flex:1;}
.opt-label{font-size:.9rem;font-weight:600;margin-bottom:.1rem;}
.opt-desc{font-size:.75rem;color:var(--muted);font-weight:300;}
.opt-arrow{color:var(--gold);opacity:0;transition:opacity .2s;font-size:1rem;}
.opt-btn:hover .opt-arrow{opacity:1;}

/* SOLUTION CARD */
.sol-card{background:var(--surface);border:1px solid var(--border);border-radius:16px;overflow:hidden;}
.sol-head{background:linear-gradient(135deg,#E8F5E8,#D4EDDA);border-bottom:1px solid var(--green-border);padding:1.5rem 2rem;}
.sol-cat{font-size:.65rem;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:var(--green);margin-bottom:.4rem;}
.sol-head h2{font-family:'Playfair Display',serif;font-size:1.45rem;color:#1E5C1E;line-height:1.3;}
.sol-body{padding:1.5rem 2rem;}
.prob-text{font-size:.87rem;color:var(--muted);margin-bottom:1.25rem;font-weight:300;line-height:1.65;border-left:2px solid rgba(201,169,110,.25);padding-left:.9rem;}
.tips-label{font-size:.63rem;font-weight:700;letter-spacing:.11em;text-transform:uppercase;color:var(--gold);margin-bottom:.6rem;}
.tip{padding:.6rem .9rem;border-radius:8px;font-size:.85rem;line-height:1.5;margin-bottom:.4rem;background:var(--surface-2);border:1px solid var(--border);}
.info-box{margin-top:1rem;background:rgba(201,169,110,.1);border:1px solid rgba(201,169,110,.25);border-radius:8px;padding:.9rem 1rem;font-size:.8rem;color:var(--muted);font-style:italic;line-height:1.6;}
.equip-hint{margin-top:1rem;background:rgba(201,169,110,.08);border:1px solid rgba(201,169,110,.22);border-radius:9px;padding:.9rem 1rem;display:flex;align-items:center;gap:.75rem;}
.equip-hint-txt{flex:1;font-size:.8rem;color:var(--muted);}
.equip-hint-btn{background:var(--gold);color:#0D0B09;border:none;border-radius:7px;padding:.45rem .95rem;font-size:.78rem;font-weight:700;cursor:pointer;font-family:'Source Sans 3',sans-serif;transition:background .2s;white-space:nowrap;}
.equip-hint-btn:hover{background:var(--gold-l);}

/* BUTTONS */
.start-btn{background:var(--gold);color:#0D0B09;border:none;border-radius:10px;padding:.85rem 2.2rem;font-size:.9rem;font-weight:700;cursor:pointer;font-family:'Source Sans 3',sans-serif;transition:all .2s;letter-spacing:.02em;}
.start-btn:hover{background:var(--gold-l);transform:translateY(-2px);}
.nav-bar{display:flex;gap:.65rem;margin-top:1.4rem;flex-wrap:wrap;}
.back-btn{background:transparent;border:1px solid var(--border);color:var(--muted);border-radius:8px;padding:.55rem 1.1rem;font-size:.82rem;cursor:pointer;font-family:'Source Sans 3',sans-serif;transition:all .2s;}
.back-btn:hover{border-color:var(--border-h);color:#3D2B1A;}
.restart-btn{background:transparent;border:1px solid var(--border);color:var(--muted);border-radius:8px;padding:.55rem 1.1rem;font-size:.82rem;cursor:pointer;font-family:'Source Sans 3',sans-serif;transition:all .2s;}
.restart-btn:hover{border-color:var(--border-h);color:#3D2B1A;}



@media(max-width:600px){
  .content{padding:1.2rem 1rem;}
  .q-card,.sol-body{padding:1.2rem;}
  .intro{padding:2rem 1.2rem;}
  .sol-head{padding:1.2rem;}
  .tabs{padding:0 1rem;}
  .header{padding:.75rem 1rem;}
  .intro h2{font-size:1.5rem;}
}
</style>
</head>
<body>

<div class="header">
  <img decoding="async" class="logo-img" src="data:image/jpeg;base64,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" alt="Jan – TheBaristaGame">
  <div>
    <div class="brand-title">TheBaristaGame</div>
    <div class="brand-sub">Espresso verstehen &amp; perfektionieren</div>
  </div>
</div>



<div id="tab-solver">
  <div class="content">
    <div class="crumbs" id="crumbs"></div>
    <div class="prog-wrap" id="progWrap" style="display:none"><div class="prog-fill" id="progFill" style="width:0%"></div></div>
    <div id="screen"></div>
    <div class="nav-bar" id="navBar" style="display:none">
      <button class="back-btn" onclick="goBack()">← Zurück</button>
      <button class="restart-btn" onclick="restart()">↺ Neu starten</button>
    </div>
  </div>
</div>



<script>
const LOGO = "data:image/jpeg;base64,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";

const TREE = {
  start: {
    type:'intro',
    next:'main'
  },
  main: {
    type:'choice',
    step:'Schritt 1 von 3',
    title:'Was beschreibt dein Problem am besten?',
    hint:'Wähle das Symptom, das am deutlichsten zutrifft.',
    crumb:'Problem wählen',
    options:[
      {e:'&#x1f62c;', l:'Zu bitter', d:'Scharf, brennend, unangenehm', n:'bitter_timing'},
      {e:'&#x1f34b;', l:'Zu sauer', d:'Fruchtig-scharf, beißend, spitz', n:'sauer_timing'},
      {e:'&#x1f4a7;', l:'Zu wässrig / flach', d:'Kein Körper, dünn, leer', n:'watery_dose'},
      {e:'&#x1f914;', l:'Schwer zu beschreiben', d:'Irgendwie nicht stimmig', n:'general_timing'}
    ]
  },

  // BITTER PATH
  bitter_timing: {
    type:'choice',
    step:'Schritt 2 von 3',
    title:'Wie lange läuft dein Espresso durch?',
    hint:'Miss die Zeit vom Start des Pumpens bis zum Ende des Bezugs.',
    ctx:'&#x1f3af; Ziel: 25–35 Sekunden (klassischer Doppelter, 1:2 Ratio)',
    crumb:'Bitter → Durchlaufzeit',
    options:[
      {e:'&#x26a1;', l:'Zu schnell', d:'Unter 20 Sekunden', n:'bitter_fast_tamp'},
      {e:'&#x2705;', l:'Passt', d:'20–35 Sekunden', n:'bitter_ok_roast'},
      {e:'&#x1f422;', l:'Zu langsam', d:'Über 35 Sekunden', n:'sol_bitter_slow'}
    ]
  },
  bitter_fast_tamp: {
    type:'choice',
    step:'Schritt 3 von 3',
    title:'Wie fest tampst du?',
    hint:'Kurz + bitter ist ungewöhnlich – oft liegt es am Tampen oder der Dosierung.',
    crumb:'Bitter → Schnell → Tampen',
    options:[
      {e:'&#x1fab6;', l:'Eher locker', d:'Wenig Druck beim Tampen', n:'sol_tamp_loose'},
      {e:'&#x1f4aa;', l:'Normal bis fest', d:'Ca. 15–20 kg Druck', n:'sol_bitter_fast_dose'}
    ]
  },
  bitter_ok_roast: {
    type:'choice',
    step:'Schritt 3 von 3',
    title:'Wie dunkel sind deine Bohnen geröstet?',
    hint:'Zeit passt – jetzt suchen wir den Geschmacksfehler in der Bohne oder Temperatur.',
    crumb:'Bitter → Zeit OK → Röstgrad',
    options:[
      {e:'&#x26ab;', l:'Sehr dunkel', d:'Ölig glänzend, fast schwarz', n:'sol_dark_bitter'},
      {e:'&#x1f7eb;', l:'Medium', d:'Braun, leicht matt', n:'bitter_ok_temp'},
      {e:'&#x1f7e1;', l:'Hell', d:'Hellbraun, trocken', n:'sol_light_bitter'}
    ]
  },
  bitter_ok_temp: {
    type:'choice',
    step:'Zusatzinfo',
    title:'Wie hoch ist deine Brühtemperatur?',
    crumb:'Bitter → Zeit OK → Temperatur',
    options:[
      {e:'&#x1f321;', l:'Über 94°C', d:'Eher hoch eingestellt', n:'sol_temp_high'},
      {e:'&#x1f321;', l:'Um 92–94°C', d:'Normalbereich', n:'sol_recipe_check'},
      {e:'&#x2753;', l:'Weiß ich nicht', d:'Keine Temperaturregelung', n:'sol_no_temp_bitter'}
    ]
  },

  // SOUR PATH
  sauer_timing: {
    type:'choice',
    step:'Schritt 2 von 3',
    title:'Wie lange läuft dein Espresso durch?',
    ctx:'&#x1f3af; Ziel: 25–35 Sekunden (klassischer Doppelter, 1:2 Ratio)',
    crumb:'Sauer → Durchlaufzeit',
    options:[
      {e:'&#x26a1;', l:'Zu schnell', d:'Unter 20 Sekunden', n:'sol_sour_fast'},
      {e:'&#x2705;', l:'Passt', d:'20–35 Sekunden', n:'sauer_ok_roast'},
      {e:'&#x1f422;', l:'Zu langsam', d:'Über 35 Sekunden', n:'sauer_slow_channel'}
    ]
  },
  sauer_ok_roast: {
    type:'choice',
    step:'Schritt 3 von 3',
    title:'Wie dunkel sind deine Bohnen geröstet?',
    crumb:'Sauer → Zeit OK → Röstgrad',
    options:[
      {e:'&#x1f7e1;', l:'Hell (Light Roast)', d:'Hellbraun, trocken, fruchtig', n:'sauer_light_altitude'},
      {e:'&#x1f7eb;', l:'Medium', d:'Braun, leicht matt', n:'sauer_medium_temp'},
      {e:'&#x26ab;', l:'Dunkel', d:'Ölig, fast schwarz', n:'sol_dark_sour'}
    ]
  },
  sauer_light_altitude: {
    type:'choice',
    step:'Zusatzinfo',
    title:'Auf welcher Höhe wurden die Bohnen angebaut?',
    hint:'Hochgewachsene Bohnen haben natürlich mehr Säure — das ist ein Qualitätsmerkmal, kein Fehler.',
    crumb:'Sauer → Hell → Anbauhöhe',
    options:[
      {e:'&#x26f0;', l:'Hoch (über 1500 m)', d:'Äthiopien, Kenia, Guatemala', n:'sol_high_alt_sour'},
      {e:'&#x1f3d4;', l:'Mittel (900–1500 m)', d:'Kolumbien, Honduras', n:'sauer_medium_temp'},
      {e:'&#x1f30a;', l:'Niedrig / unbekannt', d:'Unter 900 m oder keine Angabe', n:'sauer_medium_temp'}
    ]
  },
  sauer_medium_temp: {
    type:'choice',
    step:'Zusatzinfo',
    title:'Wie hoch ist deine Brühtemperatur?',
    crumb:'Sauer → Temperatur',
    options:[
      {e:'&#x2744;', l:'Unter 90°C', d:'Eher kühl', n:'sol_temp_low'},
      {e:'&#x1f321;', l:'Um 90–94°C', d:'Normalbereich', n:'sol_sour_temp_ok'},
      {e:'&#x2753;', l:'Keine Ahnung', d:'Keine Temperaturkontrolle', n:'sol_no_temp_sour'}
    ]
  },
  sauer_slow_channel: {
    type:'choice',
    step:'Schritt 3 von 3',
    title:'Siehst du Risse oder Löcher im Puck nach dem Bezug?',
    hint:'Channeling: Das Wasser sucht den schnellsten Weg und extrahiert ungleichmäßig.',
    crumb:'Sauer → Langsam → Channeling?',
    options:[
      {e:'&#x1f573;', l:'Ja, Löcher/Risse', d:'Puck ungleichmäßig', n:'sol_channeling'},
      {e:'&#x2705;', l:'Nein, sieht gut aus', d:'Puck gleichmäßig', n:'sol_sour_slow_ok'}
    ]
  },

  // WATERY PATH
  watery_dose: {
    type:'choice',
    step:'Schritt 2 von 3',
    title:'Wie viel Kaffee verwendest du?',
    hint:'Zu wenig Kaffee ist die häufigste Ursache für wässrigen Espresso.',
    crumb:'Wässrig → Dosierung',
    options:[
      {e:'&#x2753;', l:'Ich wiege nicht', d:'Schätze die Menge', n:'sol_weigh'},
      {e:'&#x2696;', l:'Unter 15g', d:'Für einen Doppelten', n:'sol_more_coffee'},
      {e:'&#x2705;', l:'15–20g', d:'Normalbereich für Doppelten', n:'watery_timing'}
    ]
  },
  watery_timing: {
    type:'choice',
    step:'Schritt 3 von 3',
    title:'Wie lange läuft der Bezug?',
    crumb:'Wässrig → Dosierung OK → Zeit',
    options:[
      {e:'&#x26a1;', l:'Zu schnell', d:'Unter 20 Sekunden', n:'sol_watery_fast'},
      {e:'&#x2705;', l:'Passt', d:'20–35 Sekunden', n:'sol_watery_ok'},
      {e:'&#x1f422;', l:'Zu langsam', d:'Über 35 Sekunden', n:'sol_watery_slow'}
    ]
  },

  // GENERAL PATH
  general_timing: {
    type:'choice',
    step:'Schritt 2 von 3',
    title:'Wie lange läuft dein Espresso durch?',
    ctx:'&#x1f3af; Ziel: 25–35 Sekunden (klassischer Doppelter, 1:2 Ratio)',
    crumb:'Allgemein → Durchlaufzeit',
    options:[
      {e:'&#x26a1;', l:'Zu schnell', d:'Unter 20 Sekunden', n:'sol_gen_fast'},
      {e:'&#x2705;', l:'Passt', d:'20–35 Sekunden', n:'general_roast'},
      {e:'&#x1f422;', l:'Zu langsam', d:'Über 35 Sekunden', n:'sol_gen_slow'}
    ]
  },
  general_roast: {
    type:'choice',
    step:'Schritt 3 von 3',
    title:'Wie dunkel sind deine Bohnen geröstet?',
    hint:'Der Röstgrad bestimmt das Grundprofil des Espressos.',
    crumb:'Allgemein → Zeit OK → Röstgrad',
    options:[
      {e:'&#x26ab;', l:'Sehr dunkel', d:'Ölig glänzend, fast schwarz', n:'sol_very_dark'},
      {e:'&#x1f7eb;', l:'Medium', d:'Braun, leicht matt', n:'general_altitude'},
      {e:'&#x1f7e1;', l:'Hell', d:'Hellbraun, fruchtig', n:'general_altitude_light'}
    ]
  },
  general_altitude: {
    type:'choice',
    step:'Zusatzinfo',
    title:'Auf welcher Höhe wurden die Bohnen angebaut?',
    crumb:'Allgemein → Medium → Anbauhöhe',
    options:[
      {e:'&#x26f0;', l:'Hoch (über 1500 m)', d:'Äthiopien, Kenia, Guatemala', n:'sol_high_medium'},
      {e:'&#x1f3d4;', l:'Mittel / unbekannt', d:'Kolumbien, Honduras oder unbekannt', n:'sol_water_check'},
      {e:'&#x1f30a;', l:'Niedrig (unter 900 m)', d:'Brasilien, Vietnam', n:'sol_low_alt'}
    ]
  },
  general_altitude_light: {
    type:'choice',
    step:'Zusatzinfo',
    title:'Auf welcher Höhe wurden die Bohnen angebaut?',
    hint:'Helle Röstungen + große Höhe = intensivste Säure und Komplexität.',
    crumb:'Allgemein → Hell → Anbauhöhe',
    options:[
      {e:'&#x26f0;', l:'Hoch (über 1500 m)', d:'Äthiopien, Kenia, Guatemala', n:'sol_light_high'},
      {e:'&#x1f3d4;', l:'Mittel (900–1500 m)', d:'Kolumbien, Honduras', n:'sol_light_medium'},
      {e:'&#x1f30a;', l:'Niedrig (unter 900 m)', d:'Unter 900 m oder unbekannt', n:'sol_light_low'}
    ]
  },

  // ─── SOLUTIONS ───────────────────────────────────────────────────────────────
  sol_bitter_slow: {
    type:'solution', cat:'Mahlgrad',
    title:'Mahlgrad zu fein — gröber einstellen!',
    prob:'Langsame Laufzeit + Bitterkeit = klassische Überextraktion. Das Wasser hat zu viel Widerstand und löst zu viele Bitterstoffe.',
    tips:[
      '&#x1f527; Mahlgrad schrittweise 1–2 Stufen gröber einstellen',
      '&#x23f1; Ziel: 25–35 Sekunden Bezugszeit',
      '&#x2696; Kaffeemenge prüfen — evtl. auch etwas weniger Kaffee versuchen',
      '&#x1f4dd; Immer nur eine Variable auf einmal verändern und Bezug wiederholen'
    ],
    info:'Bei zu feinem Mahlgrad baut sich zu viel Druck auf. Das Wasser braucht länger und extrahiert Bitterstoffe, die erst spät aus dem Kaffee gelöst werden.'
  },
  sol_tamp_loose: {
    type:'solution', cat:'Tampen',
    title:'Fester tampen — gleichmäßiger Druck!',
    prob:'Zu lockeres Tampen gibt dem Wasser zu wenig Widerstand. Es rauscht durch und extrahiert ungleichmäßig — Channeling ist die häufige Folge.',
    tips:[
      '&#x1f4aa; Tampe mit ca. 15–20 kg Druck (so fest wie nötig, um eine gerade Oberfläche zu erzielen)',
      '&#x1f4d0; Tamper immer gerade halten — keine Schräglage!',
      '&#x1f504; Vor dem Tampen Kaffee gleichmäßig verteilen (WDT-Tool empfohlen)',
      '&#x1f9f9; Prüfe nach dem Bezug den Puck — er sollte fest und gleichmäßig sein'
    ],
    info:'Gleichmäßiges Tampen ist eine Fertigkeit. Es braucht Übung — aber mit dem richtigen Tool ist es deutlich einfacher.'
  },
  sol_bitter_fast_dose: {
    type:'solution', cat:'Dosis & Mahlgrad',
    title:'Kaffeemenge und Mahlgrad prüfen',
    prob:'Schnell + bitter ist eine ungewöhnliche Kombination. Meistens stimmt hier die Grundeinstellung aus Dosis, Mahlgrad und Tampen nicht zusammen.',
    tips:[
      '&#x2696; Kaffeemenge wiegen — Ziel: 16–20g für einen Doppelten',
      '&#x1f527; Mahlgrad etwas feiner einstellen',
      '&#x1f4cf; Verhältnis dokumentieren: Kaffee IN / Espresso OUT / Zeit',
      '&#x1f3af; Ziel-Ratio: 18g → 36g in 28–32 Sekunden'
    ],
    info:'Systematisches Protokollieren ist der schnellste Weg zur perfekten Einstellung. Was du nicht misst, kannst du nicht optimieren.',
    eq:true
  },
  sol_dark_bitter: {
    type:'solution', cat:'Röstgrad',
    title:'Dunkelröstung — Bitterkeit ist typisch',
    prob:'Sehr dunkle Röstungen haben von Natur aus mehr Röst- und Bitterstoffe. Das ist kein Fehler, sondern ein Stilmerkmal.',
    tips:[
      '&#x1f4a1; Das ist das normale Profil einer Dunkelröstung — kein Extraktionsfehler',
      '&#x1f7eb; Probiere eine mittlere Röstung (Medium Roast) für mehr Nuancen und weniger Bitterkeit',
      '&#x1f321; Brühtemperatur etwas senken (89–91°C) hilft bei Dunkelröstungen',
      '&#x2615; Dunkelröstungen sind ideal mit Milch — als Cappuccino oder Flat White',
      '&#x23f1; Kürzere Bezugszeit (20–25 Sek.) für weniger Bitterkeit'
    ],
    info:'Dunkel geröstete Bohnen verlieren durch den Röstprozess Frucht- und Blumensäuren. Stattdessen entstehen Röst-, Karamell- und Bitterstoffe — typisch für den klassischen italienischen Espresso.'
  },
  sol_light_bitter: {
    type:'solution', cat:'Temperatur & Röstung',
    title:'Helle Bohne bitter? Temperatur und Überextraktion prüfen!',
    prob:'Helle Röstungen sollten fruchtig-süß schmecken, nicht bitter. Bitterkeit deutet auf Überextraktion oder zu hohe Temperatur hin.',
    tips:[
      '&#x1f321; Temperatur prüfen — für helle Bohnen optimal: 92–94°C',
      '&#x23f1; Bezugszeit kontrollieren — zu langsam? → Mahlgrad gröber',
      '&#x1f4a7; Wasserqualität prüfen — hartes Wasser (>200 ppm) kann Bitterkeit verstärken',
      '&#x1fad8; Wie alt sind die Bohnen? Über 3 Monate alte Bohnen schmecken oft schal'
    ],
    info:'Helle Röstungen brauchen oft höhere Temperaturen als dunkle, weil ihre Zellstruktur noch dichter ist. Trotzdem sollten sie nie bitter schmecken.'
  },
  sol_temp_high: {
    type:'solution', cat:'Temperatur',
    title:'Brühtemperatur reduzieren',
    prob:'Zu hohe Temperatur extrahiert früher und mehr Bitterstoffe als erwünscht.',
    tips:[
      '&#x1f321; Temperatur auf 91–93°C reduzieren',
      '&#x23f3; 1–2 Minuten nach dem Aufheizen warten vor dem ersten Bezug',
      '&#x1f504; Ein kurzer Leerbezug (ohne Siebträger) kann die Brühgruppe kühlen',
      '&#x1f4ca; Für mittlere Röstungen: 92–93°C ist meist der Sweet Spot'
    ],
    info:'Jeder Grad Temperaturunterschied hat einen messbaren Einfluss auf die Extraktion. Immer nur eine Variable auf einmal ändern!'
  },
  sol_recipe_check: {
    type:'solution', cat:'Rezept & Parameter',
    title:'Gesamtrezept überprüfen',
    prob:'Temperatur und Zeit stimmen, aber trotzdem bitter? Dann lohnt sich ein kompletter Check aller Parameter.',
    tips:[
      '&#x1f4dd; Protokollieren: Kaffeemenge IN / Espresso OUT / Zeit',
      '&#x1f3af; Ziel: 18g → 36–40g in 28–33 Sekunden',
      '&#x1f4a7; Wasserqualität prüfen — Filterwasser empfohlen (70–150 ppm)',
      '&#x1fad8; Röstdatum prüfen — ideal: 2–6 Wochen nach Röstung',
      '&#x1f9f9; Maschine sauber? Kaffeeöl-Rückstände können bitter schmecken'
    ],
    info:'Wenn alle Parameter stimmen und es trotzdem nicht passt, liegt es meist an der Bohne selbst. Ein Wechsel auf eine andere Sorte kann helfen.'
  },
  sol_no_temp_bitter: {
    type:'solution', cat:'Equipment',
    title:'Ohne Temperaturkontrolle: So geht es trotzdem',
    prob:'Ohne PID oder Temperaturanzeige ist das Einstellen schwerer — aber nicht unmöglich.',
    tips:[
      '&#x23f3; Konsequent vorheizen: mind. 20–30 Minuten',
      '&#x1f504; Leerbezug direkt vor dem Espresso zieht die Brühgruppe ein',
      '&#x1f4ca; Einsteiger-Maschinen: Temperatur variiert ±5°C — auf Konsistenz achten',
      '&#x1f4a1; Langfristig: Eine Maschine mit PID-Regelung lohnt sich'
    ],
    info:'PID-Temperaturregelung ist eines der wichtigsten Upgrades beim Siebträger. Es macht die Extraktion reproduzierbar.',
    eq:true
  },

  // SOUR SOLUTIONS
  sol_sour_fast: {
    type:'solution', cat:'Mahlgrad',
    title:'Mahlgrad feiner einstellen!',
    prob:'Zu schnell + sauer = klassische Unterextraktion. Das Wasser hat zu wenig Widerstand und zu kurzen Kontakt mit dem Kaffee.',
    tips:[
      '&#x1f527; Mahlgrad 1–2 Stufen feiner einstellen',
      '&#x23f1; Ziel: 25–35 Sekunden Bezugszeit',
      '&#x1f4cf; Bezugsmenge messen: 18g Kaffee → ~36g Espresso',
      '&#x1f504; Nach jeder Änderung: Einen Bezug ziehen und Ergebnis bewerten'
    ],
    info:'Feineres Mahlen erhöht den Widerstand im Puck. Das Wasser hat mehr Kontaktzeit mit dem Kaffee und kann mehr Aromen und Süße lösen — und weniger rohe Säure zurücklassen.'
  },
  sol_high_alt_sour: {
    type:'solution', cat:'Bohnen & Herkunft',
    title:'Hochland-Bohne — die Säure ist beabsichtigt!',
    prob:'Bohnen aus über 1500 m Höhe haben von Natur aus mehr Säure, Komplexität und Fruchtigkeit. Das ist ein Qualitätsmerkmal — kein Fehler.',
    tips:[
      '&#x1f321; Temperatur leicht erhöhen (93–95°C) für mehr Extraktion der Süße',
      '&#x23f1; Bezugszeit etwas länger anstreben (30–35 Sek.)',
      '&#x1fad8; Als Filter-Kaffee zubereiten — da kommen Säure und Fruchtigkeit besser zur Geltung',
      '&#x2615; Wenn du Säure generell nicht magst: Bohnen aus Brasilien (unter 1000 m) probieren'
    ],
    info:'Äthiopische, kenianische oder guatemaltekische Bohnen aus über 1800 m sind für ihre lebendige Säure und Fruchtigkeit weltberühmt. Das ist wie Terroir beim Wein — ortsgebunden und einzigartig.'
  },
  sol_temp_low: {
    type:'solution', cat:'Temperatur',
    title:'Brühtemperatur erhöhen',
    prob:'Zu niedrige Temperatur führt zu Unterextraktion: Die Süße bleibt im Kaffee, nur die Säuren werden gelöst.',
    tips:[
      '&#x1f321; Temperatur auf 92–94°C erhöhen',
      '&#x23f3; Ausreichend vorheizen (mind. 20 Min.)',
      '&#x1f504; Kein Leerbezug direkt vor dem Espresso — das kühlt die Brühgruppe ab',
      '&#x1f4ca; Für helle Röstungen: 93–95°C kann sogar sinnvoll sein'
    ],
    info:'Kühles Wasser kann keine schwerlöslichen Zucker und Öle aus dem Kaffee lösen. Die Säuren sind leichtlöslich und dominant — das Ergebnis schmeckt spitz.'
  },
  sol_sour_temp_ok: {
    type:'solution', cat:'Bohnen',
    title:'Die Säure gehört zu dieser Bohne',
    prob:'Alle Parameter stimmen, aber trotzdem zu sauer? Die Ursache ist wahrscheinlich die Bohne selbst.',
    tips:[
      '&#x1fad8; Wechsle auf eine Bohne mit weniger Säure (z.B. Brasilien, Sumatra, Timor)',
      '&#x26ab; Probiere eine dunklere Röstung derselben Herkunft',
      '&#x1f4a7; Wasserqualität prüfen — weiches Wasser (unter 70 ppm) verstärkt Säure',
      '&#x1f321; Noch etwas mehr Temperatur (94–95°C) für mehr Süße probieren'
    ],
    info:'Säure im Espresso ist kein Fehler — sie ist eine Dimension des Geschmacks. Manche lieben sie (Third Wave), andere wollen sie nicht (klassisch-italienisch). Beides ist legitim.'
  },
  sol_no_temp_sour: {
    type:'solution', cat:'Temperatur & Equipment',
    title:'Ohne Temperaturkontrolle — so hilfst du dir',
    prob:'Säure deutet oft auf Unterextraktion hin. Temperatur ist einer der Hauptfaktoren.',
    tips:[
      '&#x23f3; Länger vorheizen — mind. 20–30 Min. bei Einsteigermaschinen',
      '&#x1f504; Warm-up Bezug direkt vor dem Espresso zieht Wärme in die Brühgruppe',
      '&#x1fad8; Mittlere bis dunkle Röstungen sind weniger temperaturkritisch',
      '&#x1f4a1; Maschine mit PID löst das Problem dauerhaft'
    ],
    info:'Einsteiger-Maschinen schwanken teils ±5°C — das ist genug, um den Geschmack erheblich zu verändern.',
    eq:true
  },
  sol_dark_sour: {
    type:'solution', cat:'Diagnose',
    title:'Dunkle Bohne und trotzdem sauer — ungewöhnlich!',
    prob:'Dunkelröstungen sollten kaum Säure haben. Wenn doch: Es liegt an Unterextraktion oder Temperaturproblemen.',
    tips:[
      '&#x1f321; Temperatur prüfen — läuft die Maschine vollständig warm?',
      '&#x23f1; Bezugszeit messen — unter 20 Sek. → Mahlgrad feiner',
      '&#x23f3; Länger vorheizen (30+ Min.)',
      '&#x1f9f9; Kalkablagerungen prüfen — Kalk isoliert den Heizstab'
    ],
    info:'Dunkelröstungen verlieren durch den Röstprozess fast alle Frucht- und Milchsäuren. Wenn sie trotzdem sauer schmecken, liegt ein Extraktionsfehler vor.'
  },
  sol_channeling: {
    type:'solution', cat:'Distribution & Tampen',
    title:'Channeling — das Wasser findet seinen eigenen Weg',
    prob:'Wenn Wasser durch Risse oder Kanäle im Puck strömt, wird ein Teil des Kaffees über-extrahiert und ein anderer Teil gar nicht.',
    tips:[
      '&#x1f504; Kaffee vor dem Tampen gleichmäßig verteilen — WDT-Tool verwenden',
      '&#x1f4d0; Gerade tampen — Schräglage verursacht Channeling auf der Seite',
      '&#x2696; Kaffeemenge prüfen — zu wenig Kaffee begünstigt Channeling',
      '&#x1f9f9; Sieb auf Rückstände und Verstopfungen prüfen',
      '&#x1f6e0; Puck-Screen für die Brühgruppe reduziert Channeling deutlich'
    ],
    info:'Channeling ist der häufigste Fehler beim Heimbarista. Ein WDT-Tool (Weiss Distribution Technique) — schon für unter 20€ — löst das Problem in den meisten Fällen.',
    eq:true
  },
  sol_sour_slow_ok: {
    type:'solution', cat:'Extraktion',
    title:'Langsam + sauer — Temperatur oder Bohne',
    prob:'Lange Bezugszeit mit Säure ist ungewöhnlich. Meist ist die Temperatur zu niedrig oder die Bohne sehr hell geröstet.',
    tips:[
      '&#x1f321; Brühtemperatur auf 93–95°C erhöhen',
      '&#x1fad8; Bohne und Röstgrad prüfen — helle Bohnen brauchen mehr Temperatur',
      '&#x2696; Etwas weniger Kaffee → kürzere Laufzeit',
      '&#x1f4dd; Parameter protokollieren und schrittweise anpassen'
    ],
    info:'Lange Bezugszeit + Säure = die Zuckermoleküle werden trotz langer Zeit nicht gelöst. Das ist ein klares Temperaturproblem.'
  },

  // WATERY SOLUTIONS
  sol_weigh: {
    type:'solution', cat:'Grundlagen',
    title:'Fang an zu wiegen — sofort!',
    prob:'Ohne Waage ist präzises Einstellen nicht möglich. Schätzen führt zu inkonsistenten Ergebnissen.',
    tips:[
      '&#x2696; Eine Kaffeewaage ist das wichtigste Zubehör — ab ~15€ gibt es gute Modelle',
      '&#x1f3af; Ziel: 16–18g Kaffee für einen Doppelten',
      '&#x1f4cf; Auch die Bezugsmenge wiegen: IN × 2 = OUT',
      '&#x23f1; Stoppuhr mitlaufen lassen (viele Waagen haben Timer)'
    ],
    info:'Alle Profis — ob in Weltmeisterschaften oder in Spitzen-Cafés — wiegen jeden Bezug. Es ist nicht Perfektionismus, es ist Grundlage.',
    eq:true
  },
  sol_more_coffee: {
    type:'solution', cat:'Dosierung',
    title:'Mehr Kaffee verwenden!',
    prob:'Zu wenig Kaffee = zu wenig Extrakt = wässriger, flacher Espresso. Das ist einer der häufigsten Anfängerfehler.',
    tips:[
      '&#x2696; Ziel: 16–18g für einen Doppelten (Double Basket)',
      '&#x1f4e6; Prüfen: Hast du ein Single- oder Double-Sieb eingesetzt?',
      '&#x1f527; Nach Mengenänderung Mahlgrad und Zeit neu prüfen',
      '&#x1f4a1; Single-Siebe: 7–10g / Double-Siebe: 14–21g'
    ],
    info:'Viele Menschen mahlen für einen Doppelten, haben aber ein Single-Sieb eingesetzt — oder umgekehrt. Prüfe zuerst, welches Sieb du verwendest.'
  },
  sol_watery_fast: {
    type:'solution', cat:'Mahlgrad',
    title:'Mahlgrad feiner — mehr Widerstand!',
    prob:'Wässrig + schnell = Unterextraktion. Das Wasser hat zu wenig Kontakt mit dem Kaffee.',
    tips:[
      '&#x1f527; Mahlgrad deutlich feiner einstellen',
      '&#x23f1; Ziel: 25–35 Sekunden Bezugszeit',
      '&#x1f4cf; Bezugsmenge reduzieren: 1:2 Ratio (18g → 36g)',
      '&#x1f4aa; Tampen prüfen — gleichmäßig und fest?'
    ],
    info:'Wässriger Espresso ist fast immer Unterextraktion. Der Mahlgrad ist der erste und wichtigste Hebel.'
  },
  sol_watery_ok: {
    type:'solution', cat:'Bohnen & Frische',
    title:'Zeit passt — Bohne und Frische prüfen',
    prob:'Wenn Zeit und Menge stimmen, aber trotzdem wässrig: Es liegt an der Bohne oder ihrer Frische.',
    tips:[
      '&#x1fad8; Röstdatum prüfen — Bohnen älter als 3 Monate verlieren CO₂ und Aroma',
      '&#x26ab; Dunklere Röstung für mehr Körper probieren',
      '&#x1f321; Temperatur leicht erhöhen für mehr Extraktion',
      '&#x1f4a7; Weiches Wasser (unter 70 ppm) kann zu flachem Espresso führen'
    ],
    info:'Frische ist beim Espresso kritisch. Ideal: 2–6 Wochen nach Röstdatum. Danach nimmt die Qualität spürbar ab.'
  },
  sol_watery_slow: {
    type:'solution', cat:'Diagnose',
    title:'Langsam + wässrig — Channeling prüfen!',
    prob:'Das ist ungewöhnlich — meist steckt Channeling dahinter. Das Wasser fließt schnell durch Kanäle, der Rest wird kaum extrahiert.',
    tips:[
      '&#x1f504; Distribution vor dem Tampen verbessern',
      '&#x1f527; Mahlgrad etwas gröber',
      '&#x2696; Kaffeemenge prüfen — evtl. zu viel im Sieb?',
      '&#x1f573; Puck nach dem Bezug inspizieren — Risse oder Löcher?'
    ],
    info:'Channeling täuscht über die tatsächliche Extraktion hinweg. Der Gesamtbezug dauert lang, weil es an manchen Stellen blockiert — gleichzeitig strömt Wasser unkontrolliert durch Kanäle.'
  },

  // GENERAL SOLUTIONS
  sol_gen_fast: {
    type:'solution', cat:'Mahlgrad',
    title:'Mahlgrad feiner — alles beginnt hier',
    prob:'Zu schnelle Laufzeit: Das Wasser hat zu wenig Zeit, Aromen zu lösen.',
    tips:[
      '&#x1f527; Mahlgrad schrittweise feiner einstellen',
      '&#x23f1; Ziel: 25–35 Sekunden',
      '&#x1f4dd; Jede Änderung dokumentieren',
      '&#x1f3af; Ratio: 18g → 36g Espresso in ~30 Sekunden'
    ],
    info:'Der Mahlgrad ist die wichtigste Variable. Halbe Stufen können großen Unterschied machen. Geduld und Protokoll helfen.'
  },
  sol_gen_slow: {
    type:'solution', cat:'Mahlgrad',
    title:'Mahlgrad gröber einstellen',
    prob:'Zu langsame Laufzeit = Überextraktion = zu schwer, zu bitter, zu dunkel.',
    tips:[
      '&#x1f527; Mahlgrad schrittweise gröber einstellen',
      '&#x23f1; Ziel: 25–35 Sekunden',
      '&#x2696; Kaffeemenge prüfen — evtl. zu viel',
      '&#x1f4d0; Tampen-Druck reduzieren wenn zu fest'
    ],
    info:'Gröber mahlen = weniger Widerstand = kürzere Bezugszeit und weniger Extraktion. Immer schrittweise vorgehen.'
  },
  sol_very_dark: {
    type:'solution', cat:'Röstgrad',
    title:'Sehr dunkle Röstung — das Profil ist typisch',
    prob:'Ölig glänzende Bohnen sind sehr dunkel geröstet. Das Profil ist naturgemäß kräftig, rauchig und kann bitter sein.',
    tips:[
      '&#x1f4a1; Das ist kein Fehler — das ist das Profil dieser Röstung',
      '&#x1f7eb; Mittlere Röstung für mehr Nuancen und weniger Dominanz probieren',
      '&#x2615; Dunkelröstungen harmonieren gut mit Milch (Cappuccino, Flat White)',
      '&#x1f321; Temperatur niedrig halten (89–91°C) reduziert Bitterkeit etwas'
    ],
    info:'Dunkel gerösteter Kaffee ist für den klassischen Markt gemacht — Espresso zur Zigarette, so wie in Neapel. Dort trinkt man das gerne so. Nicht jedem liegt das.'
  },
  sol_high_medium: {
    type:'solution', cat:'Herkunft',
    title:'Hochland-Bohne (Medium) — Komplexität erleben',
    prob:'Mittlere Röstungen aus großen Höhen haben fruchtigen, komplexen Charakter mit lebendiger Säure.',
    tips:[
      '&#x1f321; Temperatur auf 92–94°C',
      '&#x23f1; 28–33 Sekunden anstreben',
      '&#x1f4a7; Gefiltertes Wasser (100–150 ppm) bringt die Aromen besser raus',
      '&#x1fad8; Als Filter-Kaffee erleben — Komplexität kommt da oft klarer rüber'
    ],
    info:'Kolumbien, Honduras oder Guatemala auf über 1500 m produzieren Bohnen mit besonderer Dichte und Zuckerentwicklung. Das ist keine Fehlfunktion — das ist Terroir.'
  },
  sol_water_check: {
    type:'solution', cat:'Wasserqualität',
    title:'Wasserqualität — der unterschätzte Faktor',
    prob:'Alle Parameter stimmen, aber er macht nicht glücklich? Wasser ist der häufigste blinde Fleck.',
    tips:[
      '&#x1f4a7; Leitungswasser-Härte prüfen (Teststreifen, ~5€, online)',
      '&#x1f3af; Zielbereich: 70–150 ppm Gesamthärte (TDS)',
      '&#x1f527; Filterkartusche für die Maschine erwägen (BWT Bestsave, Brita)',
      '&#x1f4a1; Weiches Wasser (unter 50 ppm) → flach und sauer',
      '&#x1f4a1; Hartes Wasser (über 250 ppm) → metallisch, blendet Aromen'
    ],
    info:'Wasser macht 98% des Espressos aus. Seine Zusammensetzung beeinflusst Löslichkeit, Pufferwirkung und Geschmacksprofil erheblich — und wird fast immer ignoriert.',
    eq:true
  },
  sol_low_alt: {
    type:'solution', cat:'Herkunft',
    title:'Tieflagen-Bohne — mildes Profil',
    prob:'Bohnen aus unter 900 m Höhe sind milder, weniger komplex und haben geringe Säure.',
    tips:[
      '&#x2615; Das ist ein mildes, zugängliches Profil — gut für Einsteiger',
      '&#x1f4a1; Mehr Charakteristik gewünscht? → Hochland-Bohnen probieren',
      '&#x1f321; Niedrigere Temperatur (89–92°C) für schonende Extraktion',
      '&#x1f7eb; Nussig, schokoladig, rund — das ist das typische Profil dieser Bohnen'
    ],
    info:'Brasilien, Vietnam und Sumatra wachsen auf niedrigen Höhen. Sie bilden die Basis der meisten Espresso-Blends — günstig, mild und sehr beständig.'
  },
  sol_light_high: {
    type:'solution', cat:'Bohnen',
    title:'Helle Hochland-Bohne — intensivst und komplex!',
    prob:'Helle Röstung + große Höhe = maximale Fruchtigkeit, Säure und Komplexität. Das ist Third Wave Specialty Coffee.',
    tips:[
      '&#x1f321; Hohe Temperatur: 94–96°C',
      '&#x23f1; Längere Bezugszeit: 30–35 Sekunden',
      '&#x1f4a7; Weiches Filterwasser empfohlen',
      '&#x1fad8; Als Filter-Kaffee (Pour-over, Aeropress) wird das Profil noch zugänglicher',
      '&#x1f4a1; Das ist der anspruchsvollste Espresso-Stil — und der lohnendste'
    ],
    info:'Äthiopische Naturals, kenianische AA oder kolumbianische Geisha in heller Röstung sind Spezialitäten für erfahrene Gaumen. Sie polarisieren — und das ist gewollt.'
  },
  sol_light_medium: {
    type:'solution', cat:'Bohnen',
    title:'Helle Mittellagen-Bohne — gut optimierbar',
    prob:'Moderate Komplexität, schöne Ausgewogenheit. Ein guter Ausgangspunkt.',
    tips:[
      '&#x1f321; Temperatur: 92–94°C',
      '&#x23f1; Ziel: 28–33 Sekunden',
      '&#x2696; Ratio 1:2 bis 1:2,5',
      '&#x1f4a1; Typische Beispiele: Kolumbien, Costa Rica, Honduras'
    ],
    info:'Mittellagen-Bohnen in heller Röstung sind ideal zum Einarbeiten. Zugänglich, gut optimierbar und trotzdem charaktervoll.'
  },
  sol_light_low: {
    type:'solution', cat:'Bohnen & Röstung',
    title:'Helle Tieflagen-Bohne — eher für Filter!',
    prob:'Diese Kombination ist für Espresso schwierig. Helle Röstung + niedrige Lage = oft flach mit störender Säure.',
    tips:[
      '&#x1fad8; Diese Bohne als Filter-Kaffee genießen — da funktioniert sie besser',
      '&#x26ab; Für Espresso: Dunklere Röstung derselben Herkunft kaufen',
      '&#x1f321; Niedrige Temperatur (88–90°C) für schonende Extraktion',
      '&#x1f4a1; Helle Röstungen brauchen Dichte und Zucker — Tieflagen-Bohnen haben weniger davon'
    ],
    info:'Traditionell werden Tieflagen-Bohnen dunkler geröstet — aus gutem Grund. Helle Röstungen bei diesen Sorten entfernt Röstaromen ohne sie durch Fruchtigkeit zu ersetzen.'
  }
};

// ─── APP STATE ──────────────────────────────────────────────────────────────
let path = []; // history of node ids
let current = 'start';
const TOTAL_STEPS = 4;

function depth() { return path.length; }
function progress() { return Math.min((depth() / TOTAL_STEPS) * 100, 100); }

// ─── RENDER ─────────────────────────────────────────────────────────────────
function go(nodeId) {
  if (current !== 'start') path.push(current);
  current = nodeId;
  render();
}

function goBack() {
  if (path.length === 0) return;
  current = path.pop();
  render();
}

function restart() {
  path = [];
  current = 'start';
  render();
}

function render() {
  const node = TREE[current];
  if (!node) return;
  
  // breadcrumb
  const crumbs = document.getElementById('crumbs');
  if (current === 'start') {
    crumbs.innerHTML = '';
  } else {
    const parts = path.map(id => {
      const n = TREE[id];
      return n && n.crumb ? `<span class="crumb">${n.crumb}</span><span class="crumb-sep">›</span>` : '';
    }).join('');
    const cur = node.crumb ? `<span class="crumb-cur">${node.crumb}</span>` : '';
    crumbs.innerHTML = parts + cur;
  }
  
  // progress
  const pw = document.getElementById('progWrap');
  const pf = document.getElementById('progFill');
  if (current === 'start') {
    pw.style.display = 'none';
  } else {
    pw.style.display = 'block';
    pf.style.width = progress() + '%';
  }
  
  // nav bar
  const nav = document.getElementById('navBar');
  nav.style.display = (current === 'start') ? 'none' : 'flex';
  
  // screen
  const screen = document.getElementById('screen');
  
  if (node.type === 'intro') {
    screen.innerHTML = `
      <div class="screen">
        <div class="intro">
          <img decoding="async" class="intro-logo" src="${LOGO}" alt="Jan">
          <h2>Dein Espresso macht Probleme?</h2>
          <p>Ich führe dich Schritt für Schritt zur Lösung. Klicke dich durch die Fragen – wie ein Barista an deiner Seite.</p>
          <div class="intro-features">
            <div class="feat"><span class="feat-icon">&#x1f3af;</span><span class="feat-label">Schritt für Schritt</span></div>
            <div class="feat"><span class="feat-icon">&#x2615;</span><span class="feat-label">Expertenwissen</span></div>
            <div class="feat"><span class="feat-icon">&#x1f527;</span><span class="feat-label">Konkrete Tipps</span></div>
          </div>
          <button class="start-btn" onclick="go('main')">Problemlöser starten →</button>
        </div>
        <div class="geschmack-info">
          <div class="gi-title">&#x2615; Kurz bevor du startest</div>
          <p class="gi-sub">Zwei Begriffe, die im Problemlöser immer wieder auftauchen – und wie du sie erkennst:</p>
          <div class="gi-grid">
            <div class="gi-box gi-bitter">
              <div class="gi-icon">&#x1f62c;</div>
              <div class="gi-name">Bitterkeit</div>
              <div class="gi-where">Hinten auf der Zunge &amp; im Rachen</div>
              <p class="gi-desc">Bitterkeit spürst du ganz am Ende des Schluckens – ein trockenes, kratzendes Gefühl im Rachen. Bei Espresso kann sie von der Röstung kommen (gewollt) oder von Überextraktion (ungewollt).</p>
            </div>
            <div class="gi-box gi-sauer">
              <div class="gi-icon">&#x1f34b;</div>
              <div class="gi-name">Säure</div>
              <div class="gi-where">Seiten der Zunge – Speichelfluss</div>
              <p class="gi-desc">Säure sitzt an den Seiten der Zunge und lässt den Mund „zusammenziehen" – du produzierst mehr Speichel. Das ist das verlässlichste Erkennungszeichen. Säure kann ein Qualitätsmerkmal sein oder ein Zeichen von Unterextraktion.</p>
            </div>
          </div>
        </div>
        <div class="affiliate-banner">
          &#x1f6d2; Hier zu verschiedenen Siebträgerempfehlungen in unterschiedlichen Preiskategorien!
          <a href="https://amzlink.to/az0eUVygN5Bs1" target="_blank" rel="noopener" class="aff-banner-btn">Jetzt ansehen →</a>
        </div>
        <div class="yt-wrap">
          <div class="yt-label">&#x1f3ac; Mehr dazu auf dem Kanal</div>
          <div class="yt-frame">
            <iframe src="https://www.youtube.com/embed/hC-WKBcTwJ0" title="TheBaristaGame – Espresso Grundlagen" frameborder="0" allow="accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture; web-share" allowfullscreen></iframe>
          </div>
        </div>
      </div>`;
  }
  
  else if (node.type === 'choice') {
    const ctxHtml = node.ctx ? `<div class="ctx-box">${node.ctx}</div>` : '';
    const hintHtml = node.hint ? `<p class="hint">${node.hint}</p>` : '';
    const opts = node.options.map(o => `
      <button class="opt-btn" onclick="go('${o.n}')">
        <span class="opt-emoji">${o.e}</span>
        <span class="opt-txt">
          <div class="opt-label">${o.l}</div>
          ${o.d ? `<div class="opt-desc">${o.d}</div>` : ''}
        </span>
        <span class="opt-arrow">›</span>
      </button>`).join('');
    screen.innerHTML = `
      <div class="screen">
        <div class="q-card">
          <div class="step-label">${node.step || ''}</div>
          <h2>${node.title}</h2>
          ${hintHtml}${ctxHtml}
          <div class="options">${opts}</div>
        </div>
      </div>`;
  }
  
  else if (node.type === 'solution') {
    const tips = node.tips.map(t => `<div class="tip">${t}</div>`).join('');
    const eqHint = node.eq ? `
      <div class="equip-hint">
        <div class="equip-hint-txt">&#x1f4a1; Das richtige Equipment kann dieses Problem dauerhaft lösen.</div>
        <a class="equip-hint-btn" href="https://amzlink.to/az0eUVygN5Bs1" target="_blank" rel="noopener">Equipment ansehen →</a>
      </div>` : '';
    screen.innerHTML = `
      <div class="screen">
        <div class="sol-card">
          <div class="sol-head">
            <div class="sol-cat">✓ Diagnose: ${node.cat}</div>
            <h2>${node.title}</h2>
          </div>
          <div class="sol-body">
            <p class="prob-text">${node.prob}</p>
            <div class="tips-label">Was du jetzt tun kannst</div>
            ${tips}
            <div class="info-box">&#x1f4ac; ${node.info}</div>
            ${eqHint}
          </div>
        </div>
      </div>`;
  }
}

// ─── TAB SWITCHING ───────────────────────────────────────────────────────────
function switchTab(tab) {}

// ─── INIT ────────────────────────────────────────────────────────────────────
render();
</script>
</body>
</html>
</div></div>
]]></content:encoded>
					
					<wfw:commentRss>https://thebaristagame.de/guide/guide-zum-perfekten-espresso/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
			</item>
	</channel>
</rss>
