{"id":41206,"date":"2026-06-26T16:17:57","date_gmt":"2026-06-26T16:17:57","guid":{"rendered":"https:\/\/happieanimals.com\/?page_id=41206"},"modified":"2026-06-26T18:36:34","modified_gmt":"2026-06-26T18:36:34","slug":"checkliste-fuer-dein-reitturnier","status":"publish","type":"page","link":"https:\/\/happieanimals.com\/de\/checkliste-fuer-dein-reitturnier\/","title":{"rendered":"Checkliste f\u00fcr dein Reitturnier"},"content":{"rendered":"\t\t<div data-elementor-type=\"wp-page\" data-elementor-id=\"41206\" class=\"elementor elementor-41206\" data-elementor-post-type=\"page\">\n\t\t\t\t<div class=\"elementor-element elementor-element-ec6697c e-flex e-con-boxed e-con e-parent\" data-id=\"ec6697c\" data-element_type=\"container\" data-e-type=\"container\">\n\t\t\t\t\t<div class=\"e-con-inner\">\n\t\t\t\t<div class=\"elementor-element elementor-element-83a1340 elementor-widget elementor-widget-html\" data-id=\"83a1340\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"html.default\">\n\t\t\t\t\t\n\n<div id=\"hh-tournament-tool\">\n\n  <!-- ================= HERO ================= -->\n  <header class=\"hh-tournament-hero\">\n  \n\n    <h1 class=\"hh-tournament-h1\">Pferde-Checkliste \u2013 Turnier, Training &amp; Urlaub<\/h1>\n    <p class=\"hh-tournament-sub\">\n      W\u00e4hle deinen Anlass, stell dein Profil ein und hake alles ab \u2013 vom Turnier (F\u00fchrz\u00fcgelklasse\n      bis Grand Prix) \u00fcbers externe Training bis zum Urlaub mit Pferd. Inklusive Zugfahrzeug-Check,\n      Futter, Impfschutz und Anti-Doping. Anschlie\u00dfend druckst du deine pers\u00f6nliche Liste sauber im A4-Format.\n    <\/p>\n    <div class=\"hh-tournament-hero-cta hh-tournament-noprint\">\n      <button type=\"button\" class=\"hh-tournament-btn hh-tournament-btn-primary\" onclick=\"HHT.scrollToConfig()\">Checkliste erstellen<\/button>\n      <button type=\"button\" class=\"hh-tournament-btn\" onclick=\"HHT.print()\">\ud83d\udda8\ufe0f Als PDF speichern \/ drucken<\/button>\n    <\/div>\n  <\/header>\n\n  <!-- ================= KONFIGURATOR ================= -->\n  <section class=\"hh-tournament-config hh-tournament-noprint\" id=\"hhConfig\">\n\n    <div class=\"hh-tournament-field\">\n      <label class=\"hh-tournament-flabel\">Anlass<\/label>\n      <div class=\"hh-tournament-chips\" id=\"hhModeChips\" data-single=\"1\"><\/div>\n    <\/div>\n\n    <div class=\"hh-tournament-field\" id=\"hhClassField\">\n      <label class=\"hh-tournament-flabel\">Leistungsklasse<\/label>\n      <div class=\"hh-tournament-chips\" id=\"hhClassChips\" data-single=\"1\"><\/div>\n    <\/div>\n\n    <div class=\"hh-tournament-field\">\n      <label class=\"hh-tournament-flabel\">Disziplin <span class=\"hh-tournament-hint\">(Mehrfachauswahl m\u00f6glich)<\/span><\/label>\n      <div class=\"hh-tournament-chips\" id=\"hhDiscChips\"><\/div>\n    <\/div>\n\n    <div class=\"hh-tournament-row2\">\n      <div class=\"hh-tournament-field\">\n        <label class=\"hh-tournament-flabel\">Jahreszeit <span class=\"hh-tournament-hint\" id=\"hhSeasonAuto\"><\/span><\/label>\n        <div class=\"hh-tournament-chips\" id=\"hhSeasonChips\" data-single=\"1\"><\/div>\n      <\/div>\n      <div class=\"hh-tournament-field\">\n        <label class=\"hh-tournament-flabel\">Dauer<\/label>\n        <div class=\"hh-tournament-chips\" id=\"hhDurChips\" data-single=\"1\"><\/div>\n      <\/div>\n    <\/div>\n\n    <div class=\"hh-tournament-field\">\n      <label class=\"hh-tournament-flabel\" id=\"hhBasicsLabel\">Basisdaten <span class=\"hh-tournament-hint\">(erscheinen oben auf dem Ausdruck)<\/span><\/label>\n      <div class=\"hh-tournament-basics\">\n        <input class=\"hh-tournament-input\" data-basic=\"pferd\"    placeholder=\"Pferdename\">\n        <input class=\"hh-tournament-input\" data-basic=\"reiter\"   placeholder=\"Reitername\">\n        <input class=\"hh-tournament-input\" data-basic=\"datum\"    placeholder=\"Turnierdatum\" type=\"date\">\n        <input class=\"hh-tournament-input\" data-basic=\"ort\"      placeholder=\"Turnierort\">\n        <input class=\"hh-tournament-input\" data-basic=\"startnr\"  placeholder=\"Startnummer\" id=\"hhStartnrInput\">\n        <input class=\"hh-tournament-input\" data-basic=\"pruefung\" placeholder=\"Pr\u00fcfungen \/ Klassen\">\n      <\/div>\n    <\/div>\n  <\/section>\n\n  <!-- ================= KONTEXTBOX ================= -->\n  <div class=\"hh-tournament-context hh-tournament-noprint\" id=\"hhContext\"><\/div>\n\n  <!-- ================= DRUCK-KOPF (nur Druck) ================= -->\n  <div class=\"hh-tournament-printhead\">\n    <img decoding=\"async\" class=\"hh-tournament-print-logo\" src=\"https:\/\/happieanimals.com\/wp-content\/uploads\/2021\/11\/happie-19.png\" alt=\"Happie Horse\"\n         onerror=\"this.style.display='none';document.getElementById('hhPrintLogoFallback').style.display='block';\">\n    <div id=\"hhPrintLogoFallback\" class=\"hh-tournament-print-logo-fallback\" style=\"display:none;\">Happie Horse<\/div>\n    <div class=\"hh-tournament-print-title\" id=\"hhPrintTitle\">Turnier-Checkliste<\/div>\n    <div class=\"hh-tournament-print-basics\" id=\"hhPrintBasics\"><\/div>\n  <\/div>\n\n  <!-- ================= FORTSCHRITT ================= -->\n  <div class=\"hh-tournament-progress hh-tournament-noprint\">\n    <div class=\"hh-tournament-progress-text\" id=\"hhProgText\">0 von 0 Punkten erledigt<\/div>\n    <div class=\"hh-tournament-progress-bar\"><span id=\"hhProgFill\"><\/span><\/div>\n  <\/div>\n\n  <!-- ================= AKTIONEN ================= -->\n  <div class=\"hh-tournament-actions hh-tournament-noprint\">\n    <button type=\"button\" class=\"hh-tournament-btn hh-tournament-btn-primary\" onclick=\"HHT.print()\">\ud83d\udda8\ufe0f Checkliste drucken<\/button>\n    <button type=\"button\" class=\"hh-tournament-btn\" onclick=\"HHT.checkAll()\">\u2713 Alle anhaken<\/button>\n    <button type=\"button\" class=\"hh-tournament-btn\" onclick=\"HHT.resetChecks()\">\u21ba H\u00e4kchen zur\u00fccksetzen<\/button>\n    <button type=\"button\" class=\"hh-tournament-btn\" onclick=\"HHT.clearCustom()\">\ud83d\uddd1\ufe0f Eigene l\u00f6schen<\/button>\n    <label class=\"hh-tournament-toggle\">\n      <input type=\"checkbox\" id=\"hhOpenOnly\"> Nur offene Punkte drucken\n    <\/label>\n  <\/div>\n\n  <!-- ================= CHECKLISTE ================= -->\n  <div class=\"hh-tournament-list\" id=\"hhList\"><\/div>\n\n  <!-- ================= BOTTOM PDF\/DRUCK CTA ================= -->\n  <div class=\"hh-tournament-printcta hh-tournament-noprint\">\n    <strong>Fertig gepackt?<\/strong>\n    <button type=\"button\" class=\"hh-tournament-btn hh-tournament-btn-primary\" onclick=\"HHT.print()\">\ud83d\udda8\ufe0f Checkliste als PDF speichern \/ drucken<\/button>\n    <span class=\"hh-tournament-printcta-hint\">Tipp: Im Druckdialog als Ziel \u201eAls PDF speichern\u201c w\u00e4hlen \u2013 oder direkt ausdrucken.<\/span>\n  <\/div>\n\n  <!-- ================= OFFIZIELLE QUELLEN & LINKS ================= -->\n  <section class=\"hh-tournament-links hh-tournament-noprint\">\n    <div class=\"hh-tournament-links-title\">\ud83d\udd17 Offizielle Quellen &amp; wichtige Links<\/div>\n    <div class=\"hh-tournament-links-grid\">\n      <div class=\"hh-tournament-links-col\">\n        <span class=\"hh-tournament-links-h\">Doping &amp; Medikation<\/span>\n        <a href=\"https:\/\/www.pferd-aktuell.de\/fairersport\/listen-der-verbotenen-substanzen-und-methoden\/listen-der-verbotenen-substanzen-und-methoden\" target=\"_blank\" rel=\"noopener\">FN: Listen der verbotenen Substanzen &amp; Methoden<\/a>\n        <a href=\"https:\/\/www.pferd-aktuell.de\/fairersport\/erlaubte-substanzen-und-substanzen-mit-empfohlenen-karenzzeiten\" target=\"_blank\" rel=\"noopener\">FN: Erlaubte Substanzen &amp; Karenzzeiten (ADMR-Suchmaschine)<\/a>\n        <a href=\"https:\/\/www.pferd-aktuell.de\/turniersport\/anti-doping-und-medikation\" target=\"_blank\" rel=\"noopener\">FN: Anti-Doping &amp; Medikation (\u00dcbersicht)<\/a>\n        <a href=\"https:\/\/prohibitedsubstancesdatabase.feicleansport.org\/\" target=\"_blank\" rel=\"noopener\">FEI: Clean Sport \u2013 Prohibited Substances Database<\/a>\n      <\/div>\n      <div class=\"hh-tournament-links-col\">\n        <span class=\"hh-tournament-links-h\">Impfung &amp; Gesundheit<\/span>\n        <a href=\"https:\/\/www.pferd-aktuell.de\/ausbildung\/pferdehaltung\/impfung\/influenza-impfung\" target=\"_blank\" rel=\"noopener\">FN: Influenza-Impfung \u2013 Turnierregeln<\/a>\n        <a href=\"https:\/\/www.pferd-aktuell.de\/ausbildung\/pferdehaltung\/impfung\" target=\"_blank\" rel=\"noopener\">FN: Impfungen beim Pferd (\u00dcbersicht)<\/a>\n      <\/div>\n    <\/div>\n    <p class=\"hh-tournament-links-note\">Externe Links. Inhalte und aktuelle Regelst\u00e4nde liegen bei FN bzw. FEI \u2013 Details immer dort und in der jeweiligen Ausschreibung pr\u00fcfen.<\/p>\n  <\/section>\n\n  <!-- ================= APP-PROMO ================= -->\n  <section class=\"hh-tournament-promo hh-tournament-noprint\">\n    <div class=\"hh-tournament-promo-text\">\n      <strong>Noch einfacher organisierst du dein Pferd mit der Happie Horse App.<\/strong>\n      <span>Termine, Gesundheit, Impfungen, Training, F\u00fctterung und Erinnerungen \u2013 digital auf deinem Smartphone.<\/span>\n    <\/div>\n    <a class=\"hh-tournament-btn hh-tournament-btn-primary\" href=\"https:\/\/happieanimals.com\" target=\"_blank\" rel=\"noopener\">App entdecken<\/a>\n  <\/section>\n\n  <!-- ================= DRUCK-FUSS (nur Druck) ================= -->\n  <div class=\"hh-tournament-printfoot\" id=\"hhPrintFoot\">Erstellt mit der Happie Horse Turnier-Checkliste \u2013 happieanimals.com<\/div>\n\n  <p class=\"hh-tournament-privacy hh-tournament-noprint\">\n    Deine Eingaben werden nur lokal in deinem Browser gespeichert und nicht an uns \u00fcbertragen.\n  <\/p>\n<\/div>\n\n\n<style>\n\/* ===========================================================================\n   HAPPIE HORSE CHECKLISTE \u2013 STYLES\n   Alles unter #hh-tournament-tool gescoped + !important fuer Elementor-Resilienz\n   =========================================================================== *\/\n@import url('https:\/\/fonts.googleapis.com\/css2?family=Roboto:wght@400;500;700&display=swap');\n\n#hh-tournament-tool{\n  --hh-b:#359DBF; --hh-b-dark:#2A7E9A;\n  --hh-green:#7CD180; --hh-coral:#F9736C;\n  --hh-bg:#13232B; --hh-card:#1B2F39; --hh-card2:#22404D;\n  --hh-text:#EAF2F5; --hh-muted:#9FB6C0; --hh-border:#2C4753;\n\n  font-family:'Roboto',-apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif !important;\n  color:var(--hh-text) !important;\n  background:var(--hh-bg) !important;\n  max-width:920px !important; margin:0 auto !important;\n  padding:24px 16px 40px !important;\n  border-radius:18px !important;\n  box-sizing:border-box !important;\n  line-height:1.5 !important;\n}\n#hh-tournament-tool *,#hh-tournament-tool *::before,#hh-tournament-tool *::after{box-sizing:border-box !important;}\n\n\/* ---------- HERO ---------- *\/\n#hh-tournament-tool .hh-tournament-hero{text-align:center !important;padding:8px 4px 24px !important;}\n#hh-tournament-tool .hh-tournament-logo{max-height:56px !important;width:auto !important;margin-bottom:14px !important;}\n#hh-tournament-tool .hh-tournament-logo-fallback{display:inline-block !important;font-size:26px !important;font-weight:700 !important;color:var(--hh-b) !important;margin-bottom:14px !important;}\n#hh-tournament-tool .hh-tournament-h1{font-size:30px !important;font-weight:700 !important;margin:6px 0 10px !important;color:var(--hh-text) !important;line-height:1.2 !important;}\n#hh-tournament-tool .hh-tournament-sub{font-size:16px !important;color:var(--hh-muted) !important;max-width:660px !important;margin:0 auto 20px !important;}\n\n\/* ---------- BUTTONS ---------- *\/\n#hh-tournament-tool .hh-tournament-btn{\n  display:inline-block !important;cursor:pointer !important;border:1px solid var(--hh-border) !important;\n  background:var(--hh-card2) !important;color:var(--hh-text) !important;\n  font-family:inherit !important;font-size:15px !important;font-weight:500 !important;\n  padding:11px 18px !important;border-radius:10px !important;min-height:44px !important;\n  text-decoration:none !important;transition:transform .08s ease,background .15s ease !important;\n}\n#hh-tournament-tool .hh-tournament-btn:hover{background:#294c5b !important;}\n#hh-tournament-tool .hh-tournament-btn:active{transform:translateY(1px) !important;}\n#hh-tournament-tool .hh-tournament-btn-primary{background:var(--hh-b) !important;border-color:var(--hh-b) !important;color:#fff !important;font-weight:700 !important;}\n#hh-tournament-tool .hh-tournament-btn-primary:hover{background:var(--hh-b-dark) !important;}\n\n\/* ---------- KONFIGURATOR ---------- *\/\n#hh-tournament-tool .hh-tournament-config{\n  background:var(--hh-card) !important;border:1px solid var(--hh-border) !important;\n  border-radius:14px !important;padding:20px !important;margin:8px 0 18px !important;\n  display:flex !important;flex-direction:column !important;gap:18px !important;\n}\n#hh-tournament-tool .hh-tournament-field{display:flex !important;flex-direction:column !important;gap:9px !important;}\n#hh-tournament-tool .hh-tournament-row2{display:grid !important;grid-template-columns:1fr 1fr !important;gap:18px !important;}\n#hh-tournament-tool .hh-tournament-flabel{font-size:14px !important;font-weight:700 !important;color:var(--hh-text) !important;text-transform:uppercase !important;letter-spacing:.4px !important;}\n#hh-tournament-tool .hh-tournament-hint{font-weight:400 !important;text-transform:none !important;letter-spacing:0 !important;color:var(--hh-muted) !important;font-size:12px !important;}\n\n#hh-tournament-tool .hh-tournament-chips{display:flex !important;flex-wrap:wrap !important;gap:8px !important;}\n#hh-tournament-tool .hh-tournament-chip{\n  cursor:pointer !important;user-select:none !important;border:1px solid var(--hh-border) !important;\n  background:var(--hh-card2) !important;color:var(--hh-muted) !important;\n  padding:8px 14px !important;border-radius:999px !important;font-size:14px !important;font-weight:500 !important;\n  min-height:40px !important;display:inline-flex !important;align-items:center !important;transition:all .15s ease !important;\n}\n#hh-tournament-tool .hh-tournament-chip:hover{border-color:var(--hh-b) !important;color:var(--hh-text) !important;}\n#hh-tournament-tool .hh-tournament-chip.is-active{background:var(--hh-b) !important;border-color:var(--hh-b) !important;color:#fff !important;font-weight:700 !important;}\n\n#hh-tournament-tool .hh-tournament-basics{display:grid !important;grid-template-columns:1fr 1fr 1fr !important;gap:10px !important;}\n#hh-tournament-tool .hh-tournament-input{\n  font-family:inherit !important;font-size:15px !important;padding:11px 13px !important;\n  border:1px solid var(--hh-border) !important;border-radius:9px !important;\n  background:var(--hh-bg) !important;color:var(--hh-text) !important;min-height:44px !important;width:100% !important;\n}\n#hh-tournament-tool .hh-tournament-input::placeholder{color:var(--hh-muted) !important;}\n#hh-tournament-tool .hh-tournament-input:focus{outline:none !important;border-color:var(--hh-b) !important;box-shadow:0 0 0 3px rgba(53,157,191,.25) !important;}\n\n\/* ---------- KONTEXTBOX ---------- *\/\n#hh-tournament-tool .hh-tournament-context{\n  background:linear-gradient(135deg,rgba(53,157,191,.14),rgba(124,209,128,.10)) !important;\n  border:1px solid var(--hh-b) !important;border-left:4px solid var(--hh-b) !important;\n  border-radius:12px !important;padding:15px 18px !important;margin:0 0 18px !important;font-size:15px !important;color:var(--hh-text) !important;\n}\n#hh-tournament-tool .hh-tournament-context strong{color:var(--hh-b) !important;}\n#hh-tournament-tool .hh-tournament-context .hh-tournament-cnote{display:block !important;margin-top:8px !important;font-size:12.5px !important;color:var(--hh-muted) !important;}\n#hh-tournament-tool .hh-tournament-context .hh-tournament-cnote strong{color:var(--hh-coral) !important;}\n\n\/* ---------- FORTSCHRITT ---------- *\/\n#hh-tournament-tool .hh-tournament-progress{margin:0 0 16px !important;}\n#hh-tournament-tool .hh-tournament-progress-text{font-size:14px !important;font-weight:500 !important;color:var(--hh-muted) !important;margin-bottom:7px !important;}\n#hh-tournament-tool .hh-tournament-progress-bar{height:10px !important;background:var(--hh-card2) !important;border-radius:999px !important;overflow:hidden !important;}\n#hh-tournament-tool .hh-tournament-progress-bar span{display:block !important;height:100% !important;width:0% !important;background:linear-gradient(90deg,var(--hh-b),var(--hh-green)) !important;transition:width .3s ease !important;}\n\n\/* ---------- AKTIONEN ---------- *\/\n#hh-tournament-tool .hh-tournament-actions{display:flex !important;flex-wrap:wrap !important;gap:10px !important;align-items:center !important;margin:0 0 20px !important;}\n#hh-tournament-tool .hh-tournament-toggle{display:inline-flex !important;align-items:center !important;gap:7px !important;font-size:14px !important;color:var(--hh-muted) !important;cursor:pointer !important;}\n#hh-tournament-tool .hh-tournament-toggle input{width:18px !important;height:18px !important;accent-color:var(--hh-b) !important;}\n\n\/* ---------- CHECKLISTE ---------- *\/\n#hh-tournament-tool .hh-tournament-cat{\n  background:var(--hh-card) !important;border:1px solid var(--hh-border) !important;\n  border-radius:13px !important;margin-bottom:14px !important;overflow:hidden !important;\n}\n#hh-tournament-tool .hh-tournament-cat-head{\n  display:flex !important;align-items:center !important;gap:11px !important;cursor:pointer !important;\n  padding:15px 18px !important;background:var(--hh-card2) !important;user-select:none !important;\n}\n#hh-tournament-tool .hh-tournament-cat-icon{font-size:20px !important;}\n#hh-tournament-tool .hh-tournament-cat-name{font-size:16px !important;font-weight:700 !important;flex:1 !important;color:var(--hh-text) !important;}\n#hh-tournament-tool .hh-tournament-cat-count{font-size:13px !important;color:var(--hh-muted) !important;font-weight:500 !important;}\n#hh-tournament-tool .hh-tournament-cat-arrow{font-size:13px !important;color:var(--hh-muted) !important;transition:transform .2s ease !important;}\n#hh-tournament-tool .hh-tournament-cat.is-collapsed .hh-tournament-cat-arrow{transform:rotate(-90deg) !important;}\n#hh-tournament-tool .hh-tournament-cat.is-collapsed .hh-tournament-cat-body{display:none !important;}\n#hh-tournament-tool .hh-tournament-cat-body{padding:8px 18px 16px !important;}\n\n#hh-tournament-tool .hh-tournament-item{\n  display:flex !important;align-items:flex-start !important;gap:11px !important;\n  padding:9px 0 !important;border-bottom:1px solid var(--hh-border) !important;cursor:pointer !important;\n}\n#hh-tournament-tool .hh-tournament-item:last-child{border-bottom:none !important;}\n#hh-tournament-tool .hh-tournament-cb{position:absolute !important;opacity:0 !important;width:0 !important;height:0 !important;pointer-events:none !important;}\n#hh-tournament-tool .hh-tournament-box{\n  flex:0 0 auto !important;width:22px !important;height:22px !important;margin-top:1px !important;\n  border:2px solid var(--hh-muted) !important;border-radius:6px !important;position:relative !important;\n  transition:all .15s ease !important;background:transparent !important;\n}\n#hh-tournament-tool .hh-tournament-cb:checked + .hh-tournament-box{background:var(--hh-b) !important;border-color:var(--hh-b) !important;}\n#hh-tournament-tool .hh-tournament-cb:checked + .hh-tournament-box::after{\n  content:\"\" !important;position:absolute !important;left:6px !important;top:2px !important;\n  width:6px !important;height:11px !important;border:solid #fff !important;border-width:0 2.5px 2.5px 0 !important;transform:rotate(45deg) !important;\n}\n#hh-tournament-tool .hh-tournament-itxt{flex:1 !important;font-size:15px !important;color:var(--hh-text) !important;}\n#hh-tournament-tool .hh-tournament-item.is-checked .hh-tournament-itxt{color:var(--hh-muted) !important;text-decoration:line-through !important;}\n#hh-tournament-tool .hh-tournament-badge{\n  display:inline-block !important;font-size:10.5px !important;font-weight:700 !important;\n  padding:2px 7px !important;border-radius:999px !important;margin-left:7px !important;vertical-align:middle !important;\n  background:rgba(53,157,191,.18) !important;color:var(--hh-b) !important;white-space:nowrap !important;\n}\n#hh-tournament-tool .hh-tournament-badge.bdg-season{background:rgba(249,115,108,.18) !important;color:var(--hh-coral) !important;}\n#hh-tournament-tool .hh-tournament-badge.bdg-class{background:rgba(124,209,128,.18) !important;color:var(--hh-green) !important;}\n#hh-tournament-tool .hh-tournament-del{\n  flex:0 0 auto !important;background:none !important;border:none !important;color:var(--hh-coral) !important;\n  cursor:pointer !important;font-size:18px !important;line-height:1 !important;padding:2px 6px !important;opacity:.7 !important;\n}\n#hh-tournament-tool .hh-tournament-del:hover{opacity:1 !important;}\n\n\/* Eigenen Punkt hinzufuegen *\/\n#hh-tournament-tool .hh-tournament-add{display:flex !important;gap:8px !important;margin-top:12px !important;}\n#hh-tournament-tool .hh-tournament-add input{\n  flex:1 !important;font-family:inherit !important;font-size:14px !important;padding:9px 12px !important;\n  border:1px dashed var(--hh-border) !important;border-radius:8px !important;background:var(--hh-bg) !important;color:var(--hh-text) !important;min-height:42px !important;\n}\n#hh-tournament-tool .hh-tournament-add input::placeholder{color:var(--hh-muted) !important;}\n#hh-tournament-tool .hh-tournament-add button{\n  flex:0 0 auto !important;background:var(--hh-card2) !important;border:1px solid var(--hh-border) !important;color:var(--hh-b) !important;\n  font-family:inherit !important;font-size:14px !important;font-weight:700 !important;padding:9px 14px !important;border-radius:8px !important;cursor:pointer !important;min-height:42px !important;\n}\n#hh-tournament-tool .hh-tournament-add button:hover{background:#294c5b !important;}\n\n\/* ---------- PROMO ---------- *\/\n#hh-tournament-tool .hh-tournament-promo{\n  display:flex !important;align-items:center !important;justify-content:space-between !important;gap:18px !important;flex-wrap:wrap !important;\n  background:var(--hh-card) !important;border:1px solid var(--hh-border) !important;border-radius:13px !important;padding:20px !important;margin-top:8px !important;\n}\n#hh-tournament-tool .hh-tournament-promo-text{display:flex !important;flex-direction:column !important;gap:5px !important;}\n#hh-tournament-tool .hh-tournament-promo-text strong{font-size:16px !important;color:var(--hh-text) !important;}\n#hh-tournament-tool .hh-tournament-promo-text span{font-size:14px !important;color:var(--hh-muted) !important;}\n\n#hh-tournament-tool .hh-tournament-privacy{font-size:12px !important;color:var(--hh-muted) !important;text-align:center !important;margin:18px 0 0 !important;}\n\n\/* ---------- HERO CTA-GRUPPE ---------- *\/\n#hh-tournament-tool .hh-tournament-hero-cta{display:flex !important;gap:10px !important;justify-content:center !important;flex-wrap:wrap !important;}\n\n\/* ---------- BOTTOM PDF\/DRUCK CTA ---------- *\/\n#hh-tournament-tool .hh-tournament-printcta{\n  display:flex !important;flex-direction:column !important;align-items:center !important;gap:10px !important;text-align:center !important;\n  background:var(--hh-card) !important;border:1px solid var(--hh-border) !important;border-radius:13px !important;\n  padding:22px 18px !important;margin:6px 0 18px !important;\n}\n#hh-tournament-tool .hh-tournament-printcta strong{font-size:17px !important;color:var(--hh-text) !important;}\n#hh-tournament-tool .hh-tournament-printcta-hint{font-size:13px !important;color:var(--hh-muted) !important;}\n\n\/* ---------- LINKS-SEKTION ---------- *\/\n#hh-tournament-tool .hh-tournament-links{\n  background:var(--hh-card) !important;border:1px solid var(--hh-border) !important;border-radius:13px !important;\n  padding:20px !important;margin:0 0 14px !important;\n}\n#hh-tournament-tool .hh-tournament-links-title{font-size:16px !important;font-weight:700 !important;color:var(--hh-text) !important;margin-bottom:14px !important;}\n#hh-tournament-tool .hh-tournament-links-grid{display:grid !important;grid-template-columns:1fr 1fr !important;gap:18px !important;}\n#hh-tournament-tool .hh-tournament-links-col{display:flex !important;flex-direction:column !important;gap:8px !important;}\n#hh-tournament-tool .hh-tournament-links-h{font-size:12px !important;font-weight:700 !important;text-transform:uppercase !important;letter-spacing:.4px !important;color:var(--hh-b) !important;margin-bottom:2px !important;}\n#hh-tournament-tool .hh-tournament-links a{\n  color:var(--hh-text) !important;text-decoration:none !important;font-size:14px !important;\n  padding:9px 12px !important;border:1px solid var(--hh-border) !important;border-radius:8px !important;\n  background:var(--hh-card2) !important;transition:all .15s ease !important;line-height:1.3 !important;\n}\n#hh-tournament-tool .hh-tournament-links a::before{content:\"\u2197 \" !important;color:var(--hh-b) !important;}\n#hh-tournament-tool .hh-tournament-links a:hover{border-color:var(--hh-b) !important;background:#294c5b !important;}\n#hh-tournament-tool .hh-tournament-links-note{font-size:11.5px !important;color:var(--hh-muted) !important;margin:14px 0 0 !important;}\n\n\/* ---------- Nur-Druck-Elemente am Bildschirm ausblenden ---------- *\/\n#hh-tournament-tool .hh-tournament-printhead,\n#hh-tournament-tool .hh-tournament-printfoot{display:none !important;}\n\n\/* ---------- RESPONSIVE ---------- *\/\n@media (max-width:640px){\n  #hh-tournament-tool{padding:18px 12px 32px !important;}\n  #hh-tournament-tool .hh-tournament-h1{font-size:24px !important;}\n  #hh-tournament-tool .hh-tournament-basics{grid-template-columns:1fr 1fr !important;}\n  #hh-tournament-tool .hh-tournament-row2{grid-template-columns:1fr !important;}\n  #hh-tournament-tool .hh-tournament-links-grid{grid-template-columns:1fr !important;}\n  #hh-tournament-tool .hh-tournament-actions .hh-tournament-btn{flex:1 1 auto !important;text-align:center !important;}\n}\n\n\/* ===========================================================================\n   DRUCK-LAYOUT  \u2013  A4 Hochformat, sauberes Schwarz-Weiss\n   =========================================================================== *\/\n@media print{\n  @page{size:A4 portrait;margin:14mm 14mm;}\n\n  body * {visibility:hidden !important;}\n  #hh-tournament-tool, #hh-tournament-tool * {visibility:visible !important;}\n  #hh-tournament-tool{position:absolute !important;left:0 !important;top:0 !important;width:100% !important;}\n\n  #hh-tournament-tool .hh-tournament-noprint{display:none !important;}\n  #hh-tournament-tool .hh-tournament-hero,\n  #hh-tournament-tool .hh-tournament-add,\n  #hh-tournament-tool .hh-tournament-del,\n  #hh-tournament-tool .hh-tournament-badge{display:none !important;}\n\n  #hh-tournament-tool, #hh-tournament-tool *{\n    background:#fff !important;color:#000 !important;box-shadow:none !important;\n  }\n  #hh-tournament-tool{max-width:100% !important;padding:0 !important;border-radius:0 !important;}\n\n  #hh-tournament-tool .hh-tournament-printhead{display:block !important;text-align:center !important;border-bottom:2px solid #000 !important;padding-bottom:10px !important;margin-bottom:14px !important;}\n  #hh-tournament-tool .hh-tournament-print-logo{max-height:46px !important;margin-bottom:6px !important;}\n  #hh-tournament-tool .hh-tournament-print-logo-fallback{font-size:20px !important;font-weight:700 !important;color:#000 !important;margin-bottom:6px !important;}\n  #hh-tournament-tool .hh-tournament-print-title{font-size:22px !important;font-weight:700 !important;}\n  #hh-tournament-tool .hh-tournament-print-basics{font-size:12.5px !important;margin-top:6px !important;display:flex !important;flex-wrap:wrap !important;justify-content:center !important;gap:4px 16px !important;}\n  #hh-tournament-tool .hh-tournament-print-basics span{white-space:nowrap !important;}\n\n  #hh-tournament-tool .hh-tournament-cat{border:none !important;border-bottom:1px solid #000 !important;border-radius:0 !important;margin-bottom:10px !important;page-break-inside:avoid !important;break-inside:avoid !important;}\n  #hh-tournament-tool .hh-tournament-cat-head{background:#fff !important;padding:6px 0 4px !important;border-bottom:1px solid #999 !important;}\n  #hh-tournament-tool .hh-tournament-cat-arrow,#hh-tournament-tool .hh-tournament-cat-count{display:none !important;}\n  #hh-tournament-tool .hh-tournament-cat-name{font-size:14px !important;font-weight:700 !important;}\n  #hh-tournament-tool .hh-tournament-cat.is-collapsed .hh-tournament-cat-body{display:block !important;}\n  #hh-tournament-tool .hh-tournament-cat-body{padding:6px 0 4px !important;}\n\n  #hh-tournament-tool .hh-tournament-item{break-inside:avoid !important;border-bottom:none !important;padding:3px 0 !important;display:flex !important;}\n  #hh-tournament-tool .hh-tournament-box{width:14px !important;height:14px !important;border:1.4px solid #000 !important;border-radius:2px !important;}\n  #hh-tournament-tool .hh-tournament-cb:checked + .hh-tournament-box{background:#fff !important;}\n  #hh-tournament-tool .hh-tournament-cb:checked + .hh-tournament-box::after{border-color:#000 !important;left:4px !important;top:1px !important;width:4px !important;height:8px !important;border-width:0 2px 2px 0 !important;}\n  #hh-tournament-tool .hh-tournament-itxt{font-size:12.5px !important;color:#000 !important;text-decoration:none !important;}\n  #hh-tournament-tool .hh-tournament-item.is-checked .hh-tournament-itxt{color:#000 !important;text-decoration:none !important;}\n\n  #hh-tournament-tool.hh-tournament-print-open .hh-tournament-item.is-checked{display:none !important;}\n\n  #hh-tournament-tool .hh-tournament-printfoot{display:block !important;margin-top:14px !important;padding-top:8px !important;border-top:1px solid #000 !important;font-size:10.5px !important;text-align:center !important;color:#000 !important;}\n}\n<\/style>\n\n\n<script>\n(function(){\n\"use strict\";\n\n\/* ===========================================================================\n   DATENMODELL\n   Item-Quellen pro Kategorie:\n     base   -> immer (alle Anlaesse)\n     comp   -> nur Anlass \"Turnier\"\n     train  -> nur Anlass \"Training\"\n     urlaub -> nur Anlass \"Urlaub mit Pferd\"\n   Zusatz-Sets:\n     BY_CLASS    -> nur Turnier (Turnout\/Anmeldung je Leistungsklasse)\n     BY_DISC     -> alle; Eintraege koennen {l, comp:true} sein (turnier-only)\n     BY_SEASON   -> alle\n     BY_DURATION -> alle\n   =========================================================================== *\/\n\nvar CATS = [\n  {id:\"doku\", icon:\"\ud83d\udccb\", name:\"Dokumente & Anmeldung\",\n    base:[\"Equidenpass\",\"Adresse & Wegbeschreibung zum Ort\",\"Bargeld\",\"EC-\/Kreditkarte\",\n          \"Handy\",\"Powerbank\",\"Ladekabel\",\"Notfallkontakte (Tierarzt, Stall, H\u00e4nger-Hilfe)\"],\n    comp:[\"Nennbest\u00e4tigung \/ Startbereitschaft\",\"Zeiteinteilung \/ Startzeiten\",\n          \"Telefonnummer der Meldestelle\",\"Mitgliedsausweis \/ Reiterlizenz\"],\n    train:[\"Bargeld\/\u00dcberweisung f\u00fcr Trainerhonorar\",\"Trainingsplan \/ Ziele notiert\",\n           \"Treffpunkt & Uhrzeit mit Trainer best\u00e4tigt\"],\n    urlaub:[\"Reisepapiere f\u00fcrs Pferd gepr\u00fcft (EU: Equidenpass Pflicht)\",\n            \"Auslands-\/Transportdokumente je nach Zielland gekl\u00e4rt\",\n            \"Einfuhrbestimmungen \/ Quarant\u00e4ne des Ziellandes gepr\u00fcft\",\n            \"Gesundheitszeugnis \/ TRACES, falls Zielland erfordert\",\n            \"Buchungsbest\u00e4tigung Unterkunft Pferd\",\n            \"Buchungsbest\u00e4tigung Unterkunft Mensch\",\n            \"Tierarzt & Hufschmied am Zielort recherchiert\",\n            \"Notfallplan: R\u00fccktransport & Versicherungshotline\"]},\n\n  {id:\"impf\", icon:\"\ud83d\udc89\", name:\"Impfungen & Gesundheit\",\n    base:[\"Influenza-Grundimmunisierung vollst\u00e4ndig\",\n          \"Influenza-Auffrischung g\u00fcltig (Intervall eingehalten)\",\n          \"Impfungen korrekt & l\u00fcckenlos im Equidenpass eingetragen\",\n          \"Tetanus-Impfung aktuell\",\n          \"Herpes\/EHV-Status je nach Ausschreibung\/Stall gepr\u00fcft\",\n          \"Pferd gesundheitlich fit (kein Husten, Fieber, Lahmheit)\",\n          \"Erste-Hilfe-Set Pferd\",\"Fieberthermometer\"],\n    comp:[\"Letzte Impfung min. 7 Tage vor dem Start (LPO-Regel)\",\n          \"Karenzzeiten aller Medikamente gepr\u00fcft (FN-ADMR \/ FEI Clean Sport)\",\n          \"Erg\u00e4nzungsfutter & Kr\u00e4uter auf verbotene Stoffe gepr\u00fcft (z. B. Teufelskralle, Baldrian)\",\n          \"Behandlungsbelege \/ Medikamentengaben dokumentiert\",\n          \"Salben, Sprays & Hustenmittel auf verbotene Substanzen gepr\u00fcft\",\n          \"Bei Medikation: Startf\u00e4higkeit mit Tierarzt gekl\u00e4rt\"],\n    train:[],\n    urlaub:[\"EHV\/Herpes-Impfung empfohlen (Kontakt mit fremden Pferden)\",\n            \"Wurmkur-Status aktuell \/ Kotprobe\",\n            \"Hufschmied-Termin vor der Reise\",\n            \"Hufzustand f\u00fcr lange Ritte gepr\u00fcft (Beschlag\/Barhuf)\",\n            \"Erweiterte Reiseapotheke Pferd (Zeckenzange, Wundversorgung)\",\n            \"Versicherung (OP-\/Haftpflicht) & Auslandsschutz gepr\u00fcft\"]},\n\n  {id:\"pferd\", icon:\"\ud83d\udc34\", name:\"Pferd & Versorgung\",\n    base:[\"Halfter\",\"F\u00fchrstrick\",\"Ersatzhalfter\",\"Anbindestrick\",\"Eimer\",\n          \"Abschwitzdecke\",\"Zweite Abschwitzdecke (eine bleibt trocken)\",\"Schwamm\",\"Handt\u00fccher\",\"Fliegenspray\"],\n    comp:[], train:[],\n    urlaub:[\"Reflektoren \/ Leuchtband f\u00fcrs Ausreiten (Stra\u00dfe\/Gel\u00e4nde)\",\n            \"Fliegen-\/Wetterschutz f\u00fcr die Weide am Zielort\",\n            \"Weide-\/Box-Sicherheit am Zielort gekl\u00e4rt\"]},\n\n  {id:\"futter\", icon:\"\ud83e\udd55\", name:\"Futter & Wasser\",\n    base:[\"Gewohntes Kraftfutter \/ M\u00fcsli (abgewogene Portionen)\",\n          \"Eigenes Heu vom Heimatstall (Futterwechsel vermeiden)\",\"Heunetz(e)\",\n          \"Mash \/ gewohntes Zusatzfutter\",\"Mineralfutter \/ gewohnte Zus\u00e4tze\",\"Leckerlis\",\n          \"Wasserkanister mit Wasser von zuhause\",\"Wassereimer\",\"Futtereimer \/ Sch\u00fcssel\"],\n    comp:[], train:[],\n    urlaub:[\"Gewohntes Futter f\u00fcr die ganze Reise \/ Nachschub kl\u00e4ren\",\n            \"Heu-Versorgung am Zielort abgekl\u00e4rt\",\n            \"Futterumstellung langsam (bei Wechsel auf Ortsheu)\",\n            \"Salzleckstein\"]},\n\n  {id:\"sattel\", icon:\"\ud83d\udc0e\", name:\"Sattelzeug & Ausr\u00fcstung\",\n    base:[\"Sattel\",\"Sattelgurt\",\"Ersatzgurt\",\"Schabracke\",\"Trense\",\"Gebiss\",\"Z\u00fcgel\",\n          \"Ersatzriemen\",\"Putzbox\",\"Hufkratzer\",\"Sattelseife \/ Lederpflege\"],\n    comp:[], train:[],\n    urlaub:[\"Bequeme Ausreit-\/Wanderausr\u00fcstung\",\"Hufschuhe (lange Ritte \/ unbeschlagen)\",\n            \"Satteltaschen \/ Packtaschen\",\"Ersatz-Hufeisen \/ Schmied-Kontakt am Ziel\",\n            \"Reparaturset (Nadel, starker Zwirn, Lederriemchen)\",\"Horseman's Knife \/ Notfallmesser am Mann\"]},\n\n  {id:\"putz\", icon:\"\u2728\", name:\"Putzzeug & Pflege\",\n    base:[\"Kard\u00e4tsche\",\"Striegel\",\"Wurzelb\u00fcrste\",\"M\u00e4hnenkamm\",\"Schweifb\u00fcrste\",\"Glanzspray\",\n          \"M\u00e4hnengummis\",\"Huf\u00f6l \/ Huffett\",\"Feuchtt\u00fccher\",\"Schere\",\"Pferdeshampoo\",\"Schwei\u00dfmesser\"],\n    comp:[], train:[]},\n\n  {id:\"reiter\", icon:\"\ud83d\udc55\", name:\"Reiter-Ausr\u00fcstung\",\n    base:[\"Reithelm\",\"Reithose\",\"Reitstiefel\",\"Handschuhe\",\"Wechselkleidung\",\"Aufstiegshilfe\",\"Snacks\",\"Getr\u00e4nke\"],\n    comp:[\"Stiefelputzzeug \/ Stiefelknecht\"],\n    train:[\"Bequeme Trainingskleidung\",\"Handy\/Halterung f\u00fcr Video-Aufnahmen\"],\n    urlaub:[\"Bequeme Freizeit-\/Ausreitkleidung\",\"Wetterfeste Kleidung & Sonnenschutz\",\n            \"Karte \/ GPS \/ Wander-App f\u00fcrs Ausreiten\",\"Waschzeug & Mikrofaser-Reisehandtuch\",\n            \"Reflektoren auch f\u00fcr den Reiter (Nachtritte)\"]},\n\n  {id:\"auto\", icon:\"\ud83d\ude97\", name:\"Zugfahrzeug-Check\",\n    base:[\"Tank voll \/ Reichweite gepr\u00fcft\",\"\u00d6l- & K\u00fchlwasserstand gepr\u00fcft\",\n          \"AdBlue aufgef\u00fcllt (falls Diesel)\",\"Reifendruck Zugfahrzeug (inkl. Beladung)\",\n          \"Scheibenwischwasser aufgef\u00fcllt\",\"Anh\u00e4ngerkupplung gepr\u00fcft & gefettet\",\n          \"Spiegel f\u00fcr Anh\u00e4ngerbetrieb eingestellt\",\"Fahrzeugpapiere & F\u00fchrerschein (passende Klasse f\u00fcrs Gespann)\",\n          \"Steckverbindung passt zum Zugfahrzeug (ggf. Adapter 7\/13-polig)\",\n          \"Versicherung \/ Gr\u00fcne Karte (bei Auslandsfahrt)\",\"Adresse ins Navi eingegeben\",\n          \"Tank- & Pausenstopp grob geplant\"],\n    comp:[\"Parkgeld \/ Kleingeld\"], train:[]},\n\n  {id:\"anhaenger\", icon:\"\ud83d\ude9a\", name:\"Anh\u00e4nger & Sicherheit\",\n    base:[\"Anh\u00e4nger-Boden auf F\u00e4ulnis & Stabilit\u00e4t gepr\u00fcft\",\n          \"Reifendruck & Reifenalter Anh\u00e4nger (inkl. Ersatzrad)\",\n          \"Beleuchtung des Anh\u00e4ngers getestet (mit 2. Person)\",\n          \"Bremsen & Auflaufeinrichtung gepr\u00fcft\",\"Abrei\u00dfseil eingeh\u00e4ngt\",\n          \"St\u00fctzrad hochgekurbelt & gesichert\",\"Trennwand fest & gesichert\",\n          \"Gummimatten \/ rutschfester Boden\",\"Rampe & Rampengummi gepr\u00fcft\",\n          \"Heunetz f\u00fcr die Fahrt\",\"Unterlegkeile\",\"Wagenheber \/ Radkreuz f\u00fcr Anh\u00e4nger\",\n          \"Sicherheitsmesser griffbereit (Notfall am Strick)\",\"Warndreieck\",\n          \"Warnweste (f\u00fcr jede Person)\",\"Erste-Hilfe-Set Auto\"],\n    comp:[], train:[]},\n\n  {id:\"platz\", icon:\"\ud83c\udfdf\ufe0f\", name:\"Am Turnierplatz\", nameTrain:\"Beim Trainer \/ vor Ort\", nameUrlaub:\"Am Zielort \/ unterwegs\",\n    base:[\"Wasser f\u00fcr das Pferd\",\"Wasser f\u00fcr Reiter\",\"Putzzeug griffbereit\",\"Sattelzeug griffbereit\",\n          \"Handy geladen\",\"Decke je nach Wetter\",\"Genug Zeit zum Satteln einplanen\"],\n    comp:[\"Startnummer\",\"Sicherheitsnadeln \/ Nummernhalter\",\"Meldestelle aufsuchen\",\n          \"Pr\u00fcfungszeiten pr\u00fcfen\",\"Abreiteplatz pr\u00fcfen\"],\n    train:[\"Notizm\u00f6glichkeit f\u00fcr Trainer-Feedback\",\"Eigene Stangen\/Hilfsmittel kl\u00e4ren (meist vor Ort)\"],\n    urlaub:[\"Wetterbericht der Zielregion gepr\u00fcft\",\"Erlaubte Reitwege & Strandzugang am Zielort gekl\u00e4rt\",\n            \"Trinkflasche & Snacks f\u00fcr unterwegs\",\n            \"Erste-Hilfe f\u00fcr unterwegs (Mensch & Pferd)\",\"Kontakt Unterkunft & Notfallnummern vor Ort\"]},\n\n  {id:\"notes\", icon:\"\ud83d\udcdd\", name:\"Eigene Notizen\", base:[], comp:[], train:[]}\n];\n\n\/* ---- Leistungsklasse (nur Turnier) ---- *\/\nvar BY_CLASS = {\n  fzk:{\n    reiter:[\"Jodhpurstiefel \/ Chaps (Kind)\",\"Sicherheitsweste (f\u00fcr Kinder empfohlen)\",\n            \"Besch\u00e4ftigung f\u00fcr die Wartezeit\",\"Kuscheltier \/ Trostspender\",\n            \"Kindgerechte Snacks & Getr\u00e4nke\",\"Wechselkleidung Kind\",\"Kamera f\u00fcr Erinnerungsfotos\"],\n    pferd:[\"F\u00fchrz\u00fcgel \/ extra F\u00fchrstrick\"],\n    platz:[\"Bequeme Schuhe f\u00fcr die f\u00fchrende Person\"]\n  },\n  e:{ reiter:[\"Turniershirt \/ Poloshirt\",\"Helle Reithose\"] },\n  a:{ reiter:[\"Turnierjackett\",\"Plastron \/ Krawatte\",\"Helle Reithose\"] },\n  l:{ reiter:[\"Turnierjackett\",\"Plastron \/ Krawatte\",\"Wei\u00dfe\/helle Reithose\"],\n      putz:[\"Einflechtzubeh\u00f6r (Nadel, Garn, Spray)\"],\n      sattel:[\"Kandare (falls laut Ausschreibung zul\u00e4ssig)\"] },\n  m:{ reiter:[\"Turnierjackett\",\"Wei\u00dfe Handschuhe\",\"Helle Turnierhose\"],\n      putz:[\"Gepflegtes Einflechten\"],\n      sattel:[\"Kandare (Dressur)\"] },\n  s:{ reiter:[\"Korrekte S-Turnierkleidung\",\"Frack (je nach Pr\u00fcfung)\"],\n      putz:[\"Premium-Pflegeprodukte\"],\n      pferd:[\"Logistik f\u00fcr mehrere Starts\/Pferde pr\u00fcfen\"] },\n  international:{\n    doku:[\"FEI-Pass\",\"FEI-Registrierung Pferd g\u00fcltig\",\"FEI-Registrierung Reiter\/Athlet g\u00fcltig\",\n          \"Boxen-\/Stallplatz reserviert & best\u00e4tigt\",\"Grooms-Akkreditierung\",\n          \"Gesundheits-\/Transportpapiere bei Grenz\u00fcbertritt pr\u00fcfen\"],\n    impf:[\"Influenza-Impfung nach FEI-Regel (alle 6 Mon. + 21 Tage, im Pass dokumentiert)\",\n          \"Mikrochip-Nummer notiert\"],\n    pferd:[\"Vorf\u00fchrhalfter \/ -trense f\u00fcr die Verfassungspr\u00fcfung\"],\n    reiter:[\"Outfit f\u00fcr die Verfassungspr\u00fcfung (Trot-up)\"],\n    platz:[\"Steward-\/Tierarztkontakt vor Ort\"]\n  }\n};\n\n\/* ---- Disziplin (beide Anlaesse; {l,comp:true} = turnier-only) ---- *\/\nvar BY_DISC = {\n  dressur:{\n    doku:[{l:\"Dressuraufgabe ausgedruckt\",comp:true},{l:\"Aufgabe auswendig gelernt\",comp:true}],\n    sattel:[\"Ersatzschabracke\",{l:\"Hinweis: Gamaschen nur beim Abreiten \u2013 in der Pr\u00fcfung verboten\",comp:true}],\n    platz:[{l:\"Viereckma\u00dfe pr\u00fcfen (20\u00d740 \/ 20\u00d760)\",comp:true}],\n    putz:[{l:\"Einflechtzubeh\u00f6r (Nadel, Garn, Spray)\",comp:true}]\n  },\n  springen:{\n    platz:[{l:\"Parcoursbesichtigung einplanen\",comp:true}],\n    sattel:[\"Gamaschen\",\"Hufglocken\",\"Stollen-Sortiment\",\"Stollenschl\u00fcssel\",\"Ersatzstollen\",\n            \"Vorderzeug \/ Martingal (falls erlaubt)\"],\n    reiter:[\"Springgerte (L\u00e4ngenregel beachten)\",\"Sicherheitsweste (optional)\"]\n  },\n  vielseitigkeit:{\n    reiter:[\"Sicherheitsweste\",\"R\u00fcckenprotektor \/ Airbag-Weste\",{l:\"Medical Card \/ Armband\",comp:true},\n            {l:\"Helm\u00fcberzug (Farben)\",comp:true},\"Stoppuhr\",\"Ersatzkleidung\"],\n    sattel:[\"Gel\u00e4ndegamaschen\",\"Stollen\",\"Stollenschl\u00fcssel\"],\n    pferd:[\"K\u00fchlmaterial f\u00fcr nach dem Gel\u00e4nde\"]\n  },\n  working:{ sattel:[\"Ausr\u00fcstung je nach Pr\u00fcfungsteil\",\"Garrocha (falls erforderlich)\"] },\n  fahren:{\n    sattel:[\"Geschirr\",\"Ersatzteile Geschirr\",\"Peitsche\"],\n    anhaenger:[\"Wagen-Check\",\"Ersatzr\u00e4der f\u00fcr den Wagen\"],\n    reiter:[\"Fahrhandschuhe\"]\n  },\n  wbo:{}\n};\n\n\/* ---- Jahreszeit (beide Anlaesse) ---- *\/\nvar BY_SEASON = {\n  hitze:{\n    pferd:[\"K\u00fchldecke\",\"K\u00fchlgamaschen \/ K\u00fchlpads\",\"Fliegenhaube \/ Ohrenhaube\",\"Fliegenmaske\",\"Extra Fliegenspray\"],\n    futter:[\"Elektrolyte\",\"Extra Wasser zum Tr\u00e4nken & Abspritzen\"],\n    reiter:[\"Sonnencreme\",\"Cap \/ Sonnenhut f\u00fcr die Wartezeit\",\"Extra Getr\u00e4nke\",\"K\u00fchltuch\"],\n    platz:[\"Pavillon \/ Sonnenschutz\",\"Schatten organisieren\"]\n  },\n  kaelte:{\n    pferd:[\"Warme Stalldecke\",\"Nierendecke f\u00fcrs Abreiten\",\"Fleece-Abschwitzdecke\"],\n    futter:[\"Thermoskanne mit warmem Wasser (Mash)\"],\n    sattel:[\"Scharfe Stollen (Frost\/Matsch)\",\"Stollenschl\u00fcssel\",\"Ersatzstollen\"],\n    reiter:[\"Thermokleidung \/ Funktionsw\u00e4sche\",\"Handw\u00e4rmer\",\"Warme + d\u00fcnne Handschuhe\",\n            \"M\u00fctze f\u00fcr die Wartezeit\",\"Dicke Socken\",\"Warme Getr\u00e4nke \/ Thermoskanne\"],\n    platz:[\"L\u00e4ngeres Aufw\u00e4rmen einplanen\",\"Decke gegen Ausk\u00fchlen\"],\n    anhaenger:[\"Frostschutz f\u00fcr Wasser \/ Eimer beachten\"]\n  },\n  uebergang:{\n    pferd:[\"Regendecke\"],\n    reiter:[\"Regenjacke \/ Regenkleidung\",\"Wasserfeste Schuhe\",\"Extra Handt\u00fccher (Matsch)\",\"Wechselkleidung\"],\n    sattel:[\"Stollen je nach Bodenverh\u00e4ltnissen\"],\n    platz:[\"Matsch-Handt\u00fccher\"]\n  }\n};\n\n\/* ---- Dauer (beide Anlaesse) ---- *\/\nvar BY_DURATION = {\n  tag:{},\n  mehrtaegig:{\n    pferd:[\"Boxenschild\",\"Einstreu\",\"Decken f\u00fcr verschiedene Wetterlagen\",\"Stallapotheke\"],\n    futter:[\"Futter f\u00fcr alle Tage vorportioniert\",\"Heu f\u00fcr mehrere Tage\",\"Extra Wasserkanister\",\"Futtereimer extra\"],\n    reiter:[\"Schlafsachen\",\"Hygieneartikel\",\"Verpflegung f\u00fcr mehrere Tage\",\"Klappstuhl \/ Tisch\"],\n    platz:[\"Verl\u00e4ngerungskabel\",\"Stirnlampe \/ Lampe\",\"Mistgabel & Entsorgung kl\u00e4ren\"]\n  }\n};\n\n\/* ---- Konfigurator-Optionen ---- *\/\nvar MODE_OPTS  = [{v:\"turnier\",l:\"\ud83c\udfc6 Turnier\"},{v:\"training\",l:\"\ud83c\udfaf Training \/ Lehrgang\"},{v:\"urlaub\",l:\"\ud83c\udfd6\ufe0f Urlaub mit Pferd\"}];\nvar CLASS_OPTS = [{v:\"fzk\",l:\"F\u00fchrz\u00fcgel\"},{v:\"e\",l:\"E \/ RWB\"},{v:\"a\",l:\"A\"},{v:\"l\",l:\"L\"},\n                  {v:\"m\",l:\"M\"},{v:\"s\",l:\"S \/ GP national\"},{v:\"international\",l:\"International \/ GP\"}];\nvar DISC_OPTS  = [{v:\"dressur\",l:\"Dressur\"},{v:\"springen\",l:\"Springen\"},\n                  {v:\"vielseitigkeit\",l:\"Gel\u00e4nde \/ Vielseitigkeit\"},{v:\"working\",l:\"Working Equitation\"},\n                  {v:\"fahren\",l:\"Fahren\"},{v:\"wbo\",l:\"WBO \/ Jugend\"}];\nvar SEASON_OPTS= [{v:\"hitze\",l:\"\ud83d\udd25 Sommer \/ Hitze\"},{v:\"uebergang\",l:\"\ud83c\udf26\ufe0f \u00dcbergang\"},{v:\"kaelte\",l:\"\u2744\ufe0f Winter \/ K\u00e4lte\"}];\nvar DUR_OPTS   = [{v:\"tag\",l:\"Tagestrip\"},{v:\"mehrtaegig\",l:\"Mehrt\u00e4gig \/ \u00dcbernachtung\"}];\n\n\/* ---- Klassen-Kontexttexte (Turnier) ---- *\/\nvar CLASS_CTX = {\n  fzk:\"<strong>F\u00fchrz\u00fcgelklasse:<\/strong> Eine erwachsene Person f\u00fchrt das Pony am Strick. Es z\u00e4hlen ein sicherer, fr\u00f6hlicher Auftritt und ein entspanntes Pony \u2013 nicht die Ausr\u00fcstung. Sporen und Gerte sind kein Thema. Plane vor allem Wartezeit, Snacks und gute Laune f\u00fcrs Kind ein.\",\n  e:\"<strong>Klasse E \/ Einsteiger:<\/strong> Erste echte Turniererfahrung mit Trensenz\u00e4umung und einfachen Anforderungen. Fokus auf solide Grundausr\u00fcstung und einen ruhigen Ablauf.\",\n  a:\"<strong>Klasse A:<\/strong> Aufbauklasse, weiterhin Trensenz\u00e4umung. Korrekte, gepflegte Turnierkleidung wird wichtiger \u2013 aber noch ohne Kandare.\",\n  l:\"<strong>Klasse L:<\/strong> Je nach Ausschreibung ist hier in der Dressur erstmals die Kandare zul\u00e4ssig. Sauberes Einflechten und vollst\u00e4ndige Turnierkleidung sollten sitzen.\",\n  m:\"<strong>Klasse M:<\/strong> Mittelschwer. In der Dressur ist die Kandare \u00fcblich, im Springen werden Stollen und Parcoursstrategie entscheidend. Turnout und Vorbereitung auf h\u00f6herem Niveau.\",\n  s:\"<strong>Klasse S (bis Grand Prix national):<\/strong> H\u00f6chste Anspr\u00fcche an Turnout und Vorbereitung. In der Dressur Kandare; Frack-Regelungen je nach Pr\u00fcfung \u2013 der Helm ist heute Pflicht. H\u00e4ufig mehrere Pferde\/Starts und Helfer.\",\n  international:\"<strong>International \/ Grand Prix (FEI):<\/strong> Es gilt das FEI-Reglement. Du brauchst FEI-Pass und g\u00fcltige FEI-Registrierungen, die Influenza-Impfung nach FEI-Regel (alle 6 Monate + 21 Tage, im Pass dokumentiert), oft eine Verfassungspr\u00fcfung (Trot-up) und ein professionelles Setup mit reservierten Boxen. Bei Grenz\u00fcbertritt zus\u00e4tzlich Gesundheits-\/Transportpapiere pr\u00fcfen.\"\n};\nvar DOPING_NOTE = \"<span class='hh-tournament-cnote'><strong>Doping\/Medikation:<\/strong> Karenzzeiten nach FN-ADMR bzw. FEI Clean Sport beachten. Auch Kr\u00e4uter &amp; Erg\u00e4nzungsfutter (z. B. Teufelskralle, Baldrian) k\u00f6nnen verbotene Stoffe enthalten \u2013 im Zweifel die <a href='https:\/\/www.pferd-aktuell.de\/fairersport\/erlaubte-substanzen-und-substanzen-mit-empfohlenen-karenzzeiten' target='_blank' rel='noopener' style='color:var(--hh-b);'>FN-ADMR-Suchmaschine<\/a> nutzen.<\/span>\";\nvar RULE_NOTE   = \"<span class='hh-tournament-cnote'>Regel-Details (Z\u00e4umung, Sporen, Gerte, Kleidung, Impfintervalle) immer nach aktueller LPO\/FEI und der konkreten Ausschreibung pr\u00fcfen.<\/span>\";\nvar TRAIN_CTX   = \"<strong>Externes Training \/ Lehrgang:<\/strong> Kein Turnier \u2013 aber Equidenpass und g\u00fcltiger Impfschutz sind f\u00fcr den Transport und viele St\u00e4lle trotzdem Pflicht. Im Fokus stehen Zugfahrzeug- und Anh\u00e4nger-Check, gewohntes Futter & Wasser sowie deine normale Trainingsausr\u00fcstung. Turnierkleidung, Startnummer, Anmeldung und Einflechten entfallen.\";\nvar URLAUB_CTX  = \"<strong>Urlaub mit Pferd:<\/strong> Lange Anreise, fremde Umgebung, meist mehrere Tage. Der Equidenpass ist Pflicht, bei Auslandsreisen kommen Transport-\/Gesundheitspapiere und Versicherungsschutz dazu. Plane Futter f\u00fcr die ganze Reise (oder kl\u00e4re Heu vor Ort), achte wegen fremder Pferde auf EHV-Schutz und recherchiere Tierarzt & Hufschmied am Zielort vorab. Im Fokus: entspanntes Reiten, sichere Unterbringung und gute Vorbereitung statt Wettkampf.\";\n\n\/* ---- Mode-abhaengige Platzhalter \/ Texte ---- *\/\nvar BASIC_PH = {\n  turnier:{datum:\"Turnierdatum\",ort:\"Turnierort\",pruefung:\"Pr\u00fcfungen \/ Klassen\"},\n  training:{datum:\"Datum\",ort:\"Trainingsort\",pruefung:\"Trainingsfokus \/ Lektionen\"},\n  urlaub:{datum:\"Anreisedatum\",ort:\"Reiseziel\",pruefung:\"Aktivit\u00e4ten \/ Ausritte\"}\n};\nvar PRINT_TITLE = {turnier:\"Turnier-Checkliste\",training:\"Trainings-Checkliste\",urlaub:\"Urlaubs-Checkliste\"};\nvar PRINT_FOOT  = {turnier:\"Erstellt mit der Happie Horse Turnier-Checkliste \u2013 happieanimals.com\",\n                   training:\"Erstellt mit der Happie Horse Trainings-Checkliste \u2013 happieanimals.com\",\n                   urlaub:\"Erstellt mit der Happie Horse Urlaubs-Checkliste \u2013 happieanimals.com\"};\n\n\/* ===========================================================================\n   STATE + PERSISTENZ\n   =========================================================================== *\/\nvar LS_PROFILE=\"hhTournamentProfile\", LS_CHECKS=\"hhTournamentChecks\", LS_CUSTOM=\"hhTournamentCustom\";\n\nvar state = {\n  profile:{ mode:\"turnier\", klasse:\"a\", disc:[\"dressur\"], season:null, dur:\"tag\", basics:{}, seasonManual:false },\n  checks:{}, custom:{}\n};\n\nfunction load(){\n  try{ var p=JSON.parse(localStorage.getItem(LS_PROFILE)); if(p) state.profile=Object.assign(state.profile,p); }catch(e){}\n  try{ var c=JSON.parse(localStorage.getItem(LS_CHECKS)); if(c) state.checks=c; }catch(e){}\n  try{ var u=JSON.parse(localStorage.getItem(LS_CUSTOM)); if(u) state.custom=u; }catch(e){}\n  if(!state.profile.season){ state.profile.season=seasonFromMonth(new Date().getMonth()+1); }\n  if(!Array.isArray(state.profile.disc)||!state.profile.disc.length) state.profile.disc=[\"dressur\"];\n}\nfunction saveProfile(){ try{localStorage.setItem(LS_PROFILE,JSON.stringify(state.profile));}catch(e){} }\nfunction saveChecks(){ try{localStorage.setItem(LS_CHECKS,JSON.stringify(state.checks));}catch(e){} }\nfunction saveCustom(){ try{localStorage.setItem(LS_CUSTOM,JSON.stringify(state.custom));}catch(e){} }\n\nfunction seasonFromMonth(m){ if(m===12||m<=2)return\"kaelte\"; if(m>=6&&m<=8)return\"hitze\"; return\"uebergang\"; }\nfunction seasonFromDate(str){ if(!str)return null; var d=new Date(str); if(isNaN(d))return null; return seasonFromMonth(d.getMonth()+1); }\nfunction isTurnier(){ return state.profile.mode===\"turnier\"; }\nfunction keyOf(catId,label){ return catId+\"::\"+label; }\n\n\/* ===========================================================================\n   ITEMS BAUEN\n   =========================================================================== *\/\nfunction discLabel(v){ for(var i=0;i<DISC_OPTS.length;i++) if(DISC_OPTS[i].v===v) return DISC_OPTS[i].l; return v; }\nfunction classBadge(k){ var m={fzk:\"FZK\",e:\"E\",a:\"A\",l:\"L\",m:\"M\",s:\"S\",international:\"FEI\"}; return m[k]||k; }\nfunction seasonBadge(s){ var m={hitze:\"\ud83d\udd25 Hitze\",kaelte:\"\u2744\ufe0f K\u00e4lte\",uebergang:\"\ud83c\udf26\ufe0f \u00dcbergang\"}; return m[s]||s; }\n\nfunction entryLabel(e){ return (typeof e===\"string\")?e:e.l; }\nfunction entryComp(e){ return (typeof e!==\"string\") && !!e.comp; }\n\nfunction buildCategory(cat){\n  var seen={}, out=[];\n  function push(label, badge){\n    if(seen[label]) return; seen[label]=true;\n    out.push({key:keyOf(cat.id,label), label:label, badge:badge||null});\n  }\n  \/\/ 1) Basis (immer)\n  (cat.base||[]).forEach(function(l){ push(l,null); });\n  \/\/ 2) Anlass-spezifisch (Turnier=comp, Training=train, Urlaub=urlaub)\n  var anlassArr = state.profile.mode===\"turnier\" ? cat.comp\n                : state.profile.mode===\"training\" ? cat.train\n                : cat.urlaub;\n  (anlassArr||[]).forEach(function(l){ push(l,null); });\n  \/\/ 3) Leistungsklasse (nur Turnier)\n  if(isTurnier()){\n    var bc=BY_CLASS[state.profile.klasse];\n    if(bc&&bc[cat.id]) bc[cat.id].forEach(function(l){ push(l,{t:classBadge(state.profile.klasse),c:\"bdg-class\"}); });\n  }\n  \/\/ 4) Disziplin(en) \u2013 comp-Eintraege im Training ueberspringen\n  state.profile.disc.forEach(function(dk){\n    var bd=BY_DISC[dk];\n    if(bd&&bd[cat.id]) bd[cat.id].forEach(function(e){\n      if(entryComp(e) && !isTurnier()) return;\n      push(entryLabel(e),{t:discLabel(dk),c:\"\"});\n    });\n  });\n  \/\/ 5) Jahreszeit\n  var bs=BY_SEASON[state.profile.season];\n  if(bs&&bs[cat.id]) bs[cat.id].forEach(function(l){ push(l,{t:seasonBadge(state.profile.season),c:\"bdg-season\"}); });\n  \/\/ 6) Dauer\n  var bdur=BY_DURATION[state.profile.dur];\n  if(bdur&&bdur[cat.id]) bdur[cat.id].forEach(function(l){ push(l,{t:\"Mehrt\u00e4gig\",c:\"\"}); });\n  \/\/ 7) Eigene Punkte\n  (state.custom[cat.id]||[]).forEach(function(it){\n    out.push({key:keyOf(cat.id,it.label), label:it.label, badge:null, customId:it.id});\n  });\n  return out;\n}\n\n\/* ===========================================================================\n   RENDER\n   =========================================================================== *\/\nvar $=function(s){return document.querySelector(s);};\n\nfunction renderChips(containerId, opts, getActive, onPick){\n  var box=document.getElementById(containerId); box.innerHTML=\"\";\n  opts.forEach(function(o){\n    var el=document.createElement(\"span\");\n    el.className=\"hh-tournament-chip\"+(getActive(o.v)?\" is-active\":\"\");\n    el.textContent=o.l;\n    el.addEventListener(\"click\",function(){ onPick(o.v); });\n    box.appendChild(el);\n  });\n}\n\nfunction renderConfig(){\n\n  renderChips(\"hhModeChips\",MODE_OPTS,function(v){return state.profile.mode===v;},function(v){\n    state.profile.mode=v; saveProfile(); renderConfig(); renderContext(); renderList(); updatePrintMeta();\n  });\n\n  \/\/ Leistungsklasse nur bei Turnier\n  $(\"#hhClassField\").style.display = isTurnier() ? \"flex\" : \"none\";\n  renderChips(\"hhClassChips\",CLASS_OPTS,function(v){return state.profile.klasse===v;},function(v){\n    state.profile.klasse=v; saveProfile(); renderConfig(); renderContext(); renderList();\n  });\n\n  renderChips(\"hhDiscChips\",DISC_OPTS,function(v){return state.profile.disc.indexOf(v)>-1;},function(v){\n    var i=state.profile.disc.indexOf(v);\n    if(i>-1){ if(state.profile.disc.length>1) state.profile.disc.splice(i,1); }\n    else state.profile.disc.push(v);\n    saveProfile(); renderConfig(); renderList();\n  });\n\n  renderChips(\"hhSeasonChips\",SEASON_OPTS,function(v){return state.profile.season===v;},function(v){\n    state.profile.season=v; state.profile.seasonManual=true; saveProfile(); renderConfig(); renderList();\n    $(\"#hhSeasonAuto\").textContent=\"(manuell gew\u00e4hlt)\";\n  });\n\n  renderChips(\"hhDurChips\",DUR_OPTS,function(v){return state.profile.dur===v;},function(v){\n    state.profile.dur=v; saveProfile(); renderConfig(); renderList();\n  });\n\n  \/\/ Basisdaten: Platzhalter + Startnummer je nach Modus\n  var ph=BASIC_PH[state.profile.mode]||BASIC_PH.turnier;\n  document.querySelectorAll(\"#hh-tournament-tool [data-basic]\").forEach(function(inp){\n    var k=inp.getAttribute(\"data-basic\");\n    if(ph[k]) inp.placeholder=ph[k];\n    inp.value=state.profile.basics[k]||\"\";\n    inp.oninput=function(){\n      state.profile.basics[k]=inp.value;\n      if(k===\"datum\" && !state.profile.seasonManual){\n        var s=seasonFromDate(inp.value);\n        if(s){ state.profile.season=s; renderConfig(); renderList(); $(\"#hhSeasonAuto\").textContent=\"(automatisch aus Datum)\"; }\n      }\n      saveProfile(); renderPrintBasics();\n    };\n  });\n  $(\"#hhStartnrInput\").style.display = isTurnier() ? \"block\" : \"none\";\n\n  if(!state.profile.seasonManual) $(\"#hhSeasonAuto\").textContent=\"(automatisch ermittelt)\";\n}\n\nfunction renderContext(){\n  if(state.profile.mode===\"turnier\"){\n    $(\"#hhContext\").innerHTML = (CLASS_CTX[state.profile.klasse]||\"\") + DOPING_NOTE + RULE_NOTE;\n  } else if(state.profile.mode===\"urlaub\"){\n    $(\"#hhContext\").innerHTML = URLAUB_CTX + RULE_NOTE;\n  } else {\n    $(\"#hhContext\").innerHTML = TRAIN_CTX + RULE_NOTE;\n  }\n}\n\nfunction renderPrintBasics(){\n  var b=state.profile.basics, parts=[], m=state.profile.mode;\n  var ortLbl   = m===\"urlaub\"?\"Reiseziel\":(m===\"training\"?\"Trainingsort\":\"Ort\");\n  var fokusLbl = m===\"urlaub\"?\"Aktivit\u00e4ten\":(m===\"training\"?\"Fokus\":\"Pr\u00fcfung\");\n  var map=[[\"pferd\",\"Pferd\"],[\"reiter\",\"Reiter\"],[\"datum\",\"Datum\"],\n           [\"ort\", ortLbl],[\"pruefung\", fokusLbl]];\n  if(m===\"turnier\") map.splice(4,0,[\"startnr\",\"Startnr.\"]);\n  map.forEach(function(m2){ if(b[m2[0]]) parts.push(\"<span><strong>\"+m2[1]+\":<\/strong> \"+esc(b[m2[0]])+\"<\/span>\"); });\n  $(\"#hhPrintBasics\").innerHTML=parts.join(\"\");\n}\n\nfunction updatePrintMeta(){\n  $(\"#hhPrintTitle\").textContent = PRINT_TITLE[state.profile.mode];\n  $(\"#hhPrintFoot\").textContent  = PRINT_FOOT[state.profile.mode];\n  renderPrintBasics();\n}\n\nfunction renderList(){\n  var list=$(\"#hhList\"); list.innerHTML=\"\";\n  var total=0, done=0, first=true;\n\n  CATS.forEach(function(cat){\n    var items=buildCategory(cat);\n    var catEl=document.createElement(\"div\");\n    catEl.className=\"hh-tournament-cat\"+(window.innerWidth<=640&&!first?\" is-collapsed\":\"\");\n    first=false;\n\n    var head=document.createElement(\"div\"); head.className=\"hh-tournament-cat-head\";\n    var catTotal=items.length;\n    var catDone=items.filter(function(it){return state.checks[it.key];}).length;\n    total+=catTotal; done+=catDone;\n    var name = (state.profile.mode===\"urlaub\"&&cat.nameUrlaub) ? cat.nameUrlaub\n             : (state.profile.mode===\"training\"&&cat.nameTrain) ? cat.nameTrain\n             : cat.name;\n    head.innerHTML='<span class=\"hh-tournament-cat-icon\">'+cat.icon+'<\/span>'+\n                   '<span class=\"hh-tournament-cat-name\">'+name+'<\/span>'+\n                   '<span class=\"hh-tournament-cat-count\">'+catDone+'\/'+catTotal+'<\/span>'+\n                   '<span class=\"hh-tournament-cat-arrow\">\u25be<\/span>';\n    head.addEventListener(\"click\",function(){ catEl.classList.toggle(\"is-collapsed\"); });\n    catEl.appendChild(head);\n\n    var body=document.createElement(\"div\"); body.className=\"hh-tournament-cat-body\";\n\n    items.forEach(function(it){\n      var lab=document.createElement(\"label\");\n      lab.className=\"hh-tournament-item\"+(state.checks[it.key]?\" is-checked\":\"\");\n\n      var cb=document.createElement(\"input\");\n      cb.type=\"checkbox\"; cb.className=\"hh-tournament-cb\"; cb.checked=!!state.checks[it.key];\n      cb.addEventListener(\"change\",function(){\n        if(cb.checked) state.checks[it.key]=true; else delete state.checks[it.key];\n        lab.classList.toggle(\"is-checked\",cb.checked);\n        saveChecks(); updateCountsOnly();\n      });\n\n      var box=document.createElement(\"span\"); box.className=\"hh-tournament-box\";\n      var txt=document.createElement(\"span\"); txt.className=\"hh-tournament-itxt\"; txt.textContent=it.label;\n      if(it.badge){\n        var bd=document.createElement(\"span\"); bd.className=\"hh-tournament-badge \"+(it.badge.c||\"\");\n        bd.textContent=it.badge.t; txt.appendChild(bd);\n      }\n      lab.appendChild(cb); lab.appendChild(box); lab.appendChild(txt);\n\n      if(it.customId!=null){\n        var del=document.createElement(\"button\");\n        del.type=\"button\"; del.className=\"hh-tournament-del\"; del.innerHTML=\"&times;\"; del.title=\"Punkt l\u00f6schen\";\n        del.addEventListener(\"click\",function(ev){\n          ev.preventDefault(); ev.stopPropagation();\n          state.custom[cat.id]=(state.custom[cat.id]||[]).filter(function(x){return x.id!==it.customId;});\n          delete state.checks[it.key]; saveCustom(); saveChecks(); renderList();\n        });\n        lab.appendChild(del);\n      }\n      body.appendChild(lab);\n    });\n\n    var add=document.createElement(\"div\"); add.className=\"hh-tournament-add hh-tournament-noprint\";\n    var ai=document.createElement(\"input\"); ai.type=\"text\"; ai.placeholder=\"Eigenen Punkt hinzuf\u00fcgen \u2026\";\n    var ab=document.createElement(\"button\"); ab.type=\"button\"; ab.textContent=\"+ Hinzuf\u00fcgen\";\n    function addItem(){\n      var v=ai.value.trim(); if(!v)return;\n      state.custom[cat.id]=state.custom[cat.id]||[];\n      state.custom[cat.id].push({id:Date.now()+\"_\"+Math.random().toString(36).slice(2,7),label:v});\n      ai.value=\"\"; saveCustom(); renderList();\n    }\n    ab.addEventListener(\"click\",addItem);\n    ai.addEventListener(\"keydown\",function(e){ if(e.key===\"Enter\"){ e.preventDefault(); addItem(); } });\n    add.appendChild(ai); add.appendChild(ab);\n    body.appendChild(add);\n\n    catEl.appendChild(body);\n    list.appendChild(catEl);\n  });\n\n  setProgress(done,total);\n  updatePrintMeta();\n}\n\nfunction updateCountsOnly(){\n  var total=0,done=0;\n  document.querySelectorAll(\"#hh-tournament-tool .hh-tournament-cat\").forEach(function(catEl){\n    var labs=catEl.querySelectorAll(\".hh-tournament-item\");\n    var ct=labs.length, cd=0;\n    labs.forEach(function(l){ if(l.classList.contains(\"is-checked\")) cd++; });\n    total+=ct; done+=cd;\n    var cnt=catEl.querySelector(\".hh-tournament-cat-count\");\n    if(cnt) cnt.textContent=cd+\"\/\"+ct;\n  });\n  setProgress(done,total);\n}\nfunction setProgress(done,total){\n  $(\"#hhProgText\").textContent=done+\" von \"+total+\" Punkten erledigt\";\n  $(\"#hhProgFill\").style.width=(total?Math.round(done\/total*100):0)+\"%\";\n}\n\n\/* ===========================================================================\n   AKTIONEN\n   =========================================================================== *\/\nvar HHT = {\n  scrollToConfig:function(){ var c=$(\"#hhConfig\"); if(c) c.scrollIntoView({behavior:\"smooth\",block:\"start\"}); },\n  print:function(){\n    var t=document.getElementById(\"hh-tournament-tool\");\n    t.classList.toggle(\"hh-tournament-print-open\", $(\"#hhOpenOnly\").checked);\n    window.print();\n  },\n  checkAll:function(){\n    document.querySelectorAll(\"#hh-tournament-tool .hh-tournament-item\").forEach(function(l){\n      var cb=l.querySelector(\".hh-tournament-cb\"); if(cb&&!cb.checked){ cb.checked=true; cb.dispatchEvent(new Event(\"change\")); }\n    });\n  },\n  resetChecks:function(){ state.checks={}; saveChecks(); renderList(); },\n  clearCustom:function(){\n    if(!confirm(\"Alle eigenen Punkte l\u00f6schen?\")) return;\n    Object.keys(state.custom).forEach(function(cid){\n      (state.custom[cid]||[]).forEach(function(it){ delete state.checks[keyOf(cid,it.label)]; });\n    });\n    state.custom={}; saveCustom(); saveChecks(); renderList();\n  }\n};\nwindow.HHT=HHT;\n\n\/* ===========================================================================\n   HELFER + INIT\n   =========================================================================== *\/\nfunction esc(s){ return String(s).replace(\/[&<>\"']\/g,function(c){return {\"&\":\"&amp;\",\"<\":\"&lt;\",\">\":\"&gt;\",'\"':\"&quot;\",\"'\":\"&#39;\"}[c];}); }\n\nfunction boot(){ load(); renderConfig(); renderContext(); renderList(); updatePrintMeta(); }\nif(document.readyState===\"loading\"){ document.addEventListener(\"DOMContentLoaded\",boot); } else { boot(); }\n\n})();\n<\/script>\t\t\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t","protected":false},"excerpt":{"rendered":"<p>Pferde-Checkliste \u2013 Turnier, Training &amp; Urlaub W\u00e4hle deinen Anlass, stell dein Profil ein und hake alles ab \u2013 vom Turnier (F\u00fchrz\u00fcgelklasse bis Grand Prix) \u00fcbers externe Training bis zum Urlaub mit Pferd. Inklusive Zugfahrzeug-Check, Futter, Impfschutz und Anti-Doping. Anschlie\u00dfend druckst du deine pers\u00f6nliche Liste sauber im A4-Format. Checkliste erstellen \ud83d\udda8\ufe0f Als PDF speichern \/ drucken [&hellip;]<\/p>\n","protected":false},"author":2366,"featured_media":0,"parent":0,"menu_order":0,"comment_status":"closed","ping_status":"closed","template":"","meta":{"om_disable_all_campaigns":false,"footnotes":""},"class_list":["post-41206","page","type-page","status-publish","hentry"],"yoast_head":"<!-- This site is optimized with the Yoast SEO Premium plugin v25.2 (Yoast SEO v25.2) - https:\/\/yoast.com\/wordpress\/plugins\/seo\/ -->\n<title>Checkliste f\u00fcr dein Reitturnier<\/title>\n<meta name=\"description\" content=\"Erstelle deine personalisierte Checkliste f\u00fcr dein Reitturnier, hake alle Punkte ab und drucke sie aus oder speichere sie in deinen Notizen.\" \/>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/happieanimals.com\/de\/checkliste-fuer-dein-reitturnier\/\" \/>\n<meta property=\"og:locale\" content=\"de_DE\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"Checkliste f\u00fcr dein Reitturnier\" \/>\n<meta property=\"og:description\" content=\"Erstelle deine personalisierte Checkliste f\u00fcr dein Reitturnier, hake alle Punkte ab und drucke sie aus oder speichere sie in deinen Notizen.\" \/>\n<meta property=\"og:url\" content=\"https:\/\/happieanimals.com\/de\/checkliste-fuer-dein-reitturnier\/\" \/>\n<meta property=\"og:site_name\" content=\"Happie Horse Management App\" \/>\n<meta property=\"article:modified_time\" content=\"2026-06-26T18:36:34+00:00\" \/>\n<meta property=\"og:image\" content=\"https:\/\/happieanimals.com\/wp-content\/uploads\/2021\/11\/happie-19.png\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:label1\" content=\"Gesch\u00e4tzte Lesezeit\" \/>\n\t<meta name=\"twitter:data1\" content=\"20\u00a0Minuten\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\/\/schema.org\",\"@graph\":[{\"@type\":\"WebPage\",\"@id\":\"https:\/\/happieanimals.com\/de\/checkliste-fuer-dein-reitturnier\/\",\"url\":\"https:\/\/happieanimals.com\/de\/checkliste-fuer-dein-reitturnier\/\",\"name\":\"Checkliste f\u00fcr dein Reitturnier\",\"isPartOf\":{\"@id\":\"https:\/\/happieanimals.com\/de\/#website\"},\"primaryImageOfPage\":{\"@id\":\"https:\/\/happieanimals.com\/de\/checkliste-fuer-dein-reitturnier\/#primaryimage\"},\"image\":{\"@id\":\"https:\/\/happieanimals.com\/de\/checkliste-fuer-dein-reitturnier\/#primaryimage\"},\"thumbnailUrl\":\"https:\/\/happieanimals.com\/wp-content\/uploads\/2021\/11\/happie-19.png\",\"datePublished\":\"2026-06-26T16:17:57+00:00\",\"dateModified\":\"2026-06-26T18:36:34+00:00\",\"description\":\"Erstelle deine personalisierte Checkliste f\u00fcr dein Reitturnier, hake alle Punkte ab und drucke sie aus oder speichere sie in deinen Notizen.\",\"breadcrumb\":{\"@id\":\"https:\/\/happieanimals.com\/de\/checkliste-fuer-dein-reitturnier\/#breadcrumb\"},\"inLanguage\":\"de\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\/\/happieanimals.com\/de\/checkliste-fuer-dein-reitturnier\/\"]}]},{\"@type\":\"ImageObject\",\"inLanguage\":\"de\",\"@id\":\"https:\/\/happieanimals.com\/de\/checkliste-fuer-dein-reitturnier\/#primaryimage\",\"url\":\"https:\/\/happieanimals.com\/wp-content\/uploads\/2021\/11\/happie-19.png\",\"contentUrl\":\"https:\/\/happieanimals.com\/wp-content\/uploads\/2021\/11\/happie-19.png\"},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\/\/happieanimals.com\/de\/checkliste-fuer-dein-reitturnier\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https:\/\/happieanimals.com\/de\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Checkliste f\u00fcr dein Reitturnier\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\/\/happieanimals.com\/de\/#website\",\"url\":\"https:\/\/happieanimals.com\/de\/\",\"name\":\"Happie Horse App\",\"description\":\"Let\u00b4s create a more happie world for horses, pets and people\",\"publisher\":{\"@id\":\"https:\/\/happieanimals.com\/de\/#organization\"},\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\/\/happieanimals.com\/de\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"de\"},{\"@type\":\"Organization\",\"@id\":\"https:\/\/happieanimals.com\/de\/#organization\",\"name\":\"Happie Horse App\",\"url\":\"https:\/\/happieanimals.com\/de\/\",\"logo\":{\"@type\":\"ImageObject\",\"inLanguage\":\"de\",\"@id\":\"https:\/\/happieanimals.com\/de\/#\/schema\/logo\/image\/\",\"url\":\"https:\/\/happieanimals.com\/wp-content\/uploads\/2021\/11\/happie-19.png\",\"contentUrl\":\"https:\/\/happieanimals.com\/wp-content\/uploads\/2021\/11\/happie-19.png\",\"width\":1290,\"height\":530,\"caption\":\"Happie Horse App\"},\"image\":{\"@id\":\"https:\/\/happieanimals.com\/de\/#\/schema\/logo\/image\/\"}}]}<\/script>\n<!-- \/ Yoast SEO Premium plugin. -->","yoast_head_json":{"title":"Checkliste f\u00fcr dein Reitturnier","description":"Erstelle deine personalisierte Checkliste f\u00fcr dein Reitturnier, hake alle Punkte ab und drucke sie aus oder speichere sie in deinen Notizen.","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/happieanimals.com\/de\/checkliste-fuer-dein-reitturnier\/","og_locale":"de_DE","og_type":"article","og_title":"Checkliste f\u00fcr dein Reitturnier","og_description":"Erstelle deine personalisierte Checkliste f\u00fcr dein Reitturnier, hake alle Punkte ab und drucke sie aus oder speichere sie in deinen Notizen.","og_url":"https:\/\/happieanimals.com\/de\/checkliste-fuer-dein-reitturnier\/","og_site_name":"Happie Horse Management App","article_modified_time":"2026-06-26T18:36:34+00:00","og_image":[{"url":"https:\/\/happieanimals.com\/wp-content\/uploads\/2021\/11\/happie-19.png","type":"","width":"","height":""}],"twitter_card":"summary_large_image","twitter_misc":{"Gesch\u00e4tzte Lesezeit":"20\u00a0Minuten"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"WebPage","@id":"https:\/\/happieanimals.com\/de\/checkliste-fuer-dein-reitturnier\/","url":"https:\/\/happieanimals.com\/de\/checkliste-fuer-dein-reitturnier\/","name":"Checkliste f\u00fcr dein Reitturnier","isPartOf":{"@id":"https:\/\/happieanimals.com\/de\/#website"},"primaryImageOfPage":{"@id":"https:\/\/happieanimals.com\/de\/checkliste-fuer-dein-reitturnier\/#primaryimage"},"image":{"@id":"https:\/\/happieanimals.com\/de\/checkliste-fuer-dein-reitturnier\/#primaryimage"},"thumbnailUrl":"https:\/\/happieanimals.com\/wp-content\/uploads\/2021\/11\/happie-19.png","datePublished":"2026-06-26T16:17:57+00:00","dateModified":"2026-06-26T18:36:34+00:00","description":"Erstelle deine personalisierte Checkliste f\u00fcr dein Reitturnier, hake alle Punkte ab und drucke sie aus oder speichere sie in deinen Notizen.","breadcrumb":{"@id":"https:\/\/happieanimals.com\/de\/checkliste-fuer-dein-reitturnier\/#breadcrumb"},"inLanguage":"de","potentialAction":[{"@type":"ReadAction","target":["https:\/\/happieanimals.com\/de\/checkliste-fuer-dein-reitturnier\/"]}]},{"@type":"ImageObject","inLanguage":"de","@id":"https:\/\/happieanimals.com\/de\/checkliste-fuer-dein-reitturnier\/#primaryimage","url":"https:\/\/happieanimals.com\/wp-content\/uploads\/2021\/11\/happie-19.png","contentUrl":"https:\/\/happieanimals.com\/wp-content\/uploads\/2021\/11\/happie-19.png"},{"@type":"BreadcrumbList","@id":"https:\/\/happieanimals.com\/de\/checkliste-fuer-dein-reitturnier\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https:\/\/happieanimals.com\/de\/"},{"@type":"ListItem","position":2,"name":"Checkliste f\u00fcr dein Reitturnier"}]},{"@type":"WebSite","@id":"https:\/\/happieanimals.com\/de\/#website","url":"https:\/\/happieanimals.com\/de\/","name":"Happie Horse App","description":"Let\u00b4s create a more happie world for horses, pets and people","publisher":{"@id":"https:\/\/happieanimals.com\/de\/#organization"},"potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/happieanimals.com\/de\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"de"},{"@type":"Organization","@id":"https:\/\/happieanimals.com\/de\/#organization","name":"Happie Horse App","url":"https:\/\/happieanimals.com\/de\/","logo":{"@type":"ImageObject","inLanguage":"de","@id":"https:\/\/happieanimals.com\/de\/#\/schema\/logo\/image\/","url":"https:\/\/happieanimals.com\/wp-content\/uploads\/2021\/11\/happie-19.png","contentUrl":"https:\/\/happieanimals.com\/wp-content\/uploads\/2021\/11\/happie-19.png","width":1290,"height":530,"caption":"Happie Horse App"},"image":{"@id":"https:\/\/happieanimals.com\/de\/#\/schema\/logo\/image\/"}}]}},"_links":{"self":[{"href":"https:\/\/happieanimals.com\/de\/wp-json\/wp\/v2\/pages\/41206","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/happieanimals.com\/de\/wp-json\/wp\/v2\/pages"}],"about":[{"href":"https:\/\/happieanimals.com\/de\/wp-json\/wp\/v2\/types\/page"}],"author":[{"embeddable":true,"href":"https:\/\/happieanimals.com\/de\/wp-json\/wp\/v2\/users\/2366"}],"replies":[{"embeddable":true,"href":"https:\/\/happieanimals.com\/de\/wp-json\/wp\/v2\/comments?post=41206"}],"version-history":[{"count":7,"href":"https:\/\/happieanimals.com\/de\/wp-json\/wp\/v2\/pages\/41206\/revisions"}],"predecessor-version":[{"id":41227,"href":"https:\/\/happieanimals.com\/de\/wp-json\/wp\/v2\/pages\/41206\/revisions\/41227"}],"wp:attachment":[{"href":"https:\/\/happieanimals.com\/de\/wp-json\/wp\/v2\/media?parent=41206"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}