:root{--bg:#f8faf5;--bg2:#e9f7ef;--card:#ffffff;--text:#203128;--muted:#6f7f74;--brand:#2f8f5b;--brand2:#ffbd4a;--danger:#c64b4b;--line:#e2eadf;--shadow:0 18px 50px rgba(32,49,40,.10);--radius:26px}*{box-sizing:border-box}body{margin:0;font-family:Inter,ui-sans-serif,system-ui,-apple-system,"Segoe UI",Arial,sans-serif;background:radial-gradient(circle at 10% 0%,#fff7d7 0,#fff7d700 35%),radial-gradient(circle at 90% 10%,#d8f6e4 0,#d8f6e400 38%),var(--bg);color:var(--text)}a{color:var(--brand);text-decoration:none}a:hover{text-decoration:underline}.wrap{width:min(1180px,94vw);margin:0 auto;padding:28px 0 54px}.narrow{width:min(620px,94vw)}.nav{display:flex;align-items:center;justify-content:space-between;gap:18px;margin-bottom:24px}.logo{display:flex;align-items:center;gap:10px;font-weight:900;font-size:1.15rem;color:var(--text)}.logo-mark{display:grid;place-items:center;width:42px;height:42px;border-radius:15px;background:linear-gradient(135deg,#b9f4cc,#ffe5a4);box-shadow:var(--shadow)}.nav-links{display:flex;align-items:center;gap:12px;flex-wrap:wrap}.hero{display:grid;grid-template-columns:1.6fr .8fr;gap:22px;align-items:stretch;margin:12px 0 24px}.hero-card,.card,.auth-card,.feature{background:rgba(255,255,255,.88);border:1px solid rgba(226,234,223,.85);border-radius:var(--radius);box-shadow:var(--shadow);padding:28px;backdrop-filter:blur(10px)}.hero-card{position:relative;overflow:hidden;background:linear-gradient(135deg,#ffffff 0,#f4fff7 55%,#fff6d9 100%)}.hero-card:after{content:"";position:absolute;right:-70px;bottom:-80px;width:230px;height:230px;border-radius:50%;background:linear-gradient(135deg,#90e5a5,#ffd36f);opacity:.35}.badge{display:inline-flex;align-items:center;gap:8px;padding:8px 13px;border-radius:999px;background:#ecfff1;color:#21663d;font-weight:800;border:1px solid #d3f4dc}.hero h1{font-size:clamp(2.1rem,5vw,4.8rem);line-height:1;margin:18px 0 12px;letter-spacing:-.05em}.lead{font-size:1.18rem;line-height:1.55;color:#415248}.muted{color:var(--muted)}.center{text-align:center}.actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:18px}.btn,button.btn{border:0;border-radius:16px;background:linear-gradient(135deg,var(--brand),#45b875);color:#fff;font-weight:900;padding:12px 18px;box-shadow:0 9px 22px rgba(47,143,91,.22);cursor:pointer;display:inline-flex;align-items:center;justify-content:center;text-decoration:none}.btn:hover{text-decoration:none;transform:translateY(-1px)}.btn.secondary{background:#eef7f0;color:#27563b;box-shadow:none;border:1px solid #d9eadf}.btn.warn{background:#fff0ee;color:var(--danger);border:1px solid #ffd0cc;box-shadow:none}.wide{width:100%}.features{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.feature .icon{font-size:2.2rem}.feature h2,.card h2{margin:8px 0 10px}.stepper{display:grid;gap:14px}.step{display:flex;gap:13px;align-items:flex-start}.step-no,.rank{display:grid;place-items:center;flex:0 0 auto;width:34px;height:34px;border-radius:13px;background:#fff3c7;color:#805719;font-weight:900}.grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}.grid3{display:grid;grid-template-columns:1.5fr .6fr .6fr;gap:14px;margin-bottom:12px}.row{display:flex;gap:10px;align-items:center;justify-content:space-between;flex-wrap:wrap}.add-row{margin-top:16px;justify-content:flex-start}label{display:block;font-weight:800;margin:12px 0 7px}input,textarea,select{width:100%;border:1px solid var(--line);border-radius:16px;padding:12px 14px;background:#fff;color:var(--text);font:inherit}textarea{min-height:120px}.checkline{display:flex;align-items:center;gap:10px;font-weight:700}.checkline input{width:auto}.notice,.success{border-radius:20px;padding:16px 18px;margin:14px 0}.notice.error{background:#fff0ee;color:#923d3d;border:1px solid #ffd3cf}.success{background:#ecfff1;color:#21663d;border:1px solid #cff1d7}.auth-card{margin-top:50px}.footer{text-align:center;color:var(--muted);margin-top:32px}.score-big{font-size:4rem;line-height:1;font-weight:1000;color:var(--brand)}.stat-card{display:grid;place-items:center;text-align:center}.tabs{display:flex;gap:10px;overflow:auto;padding-bottom:8px}.tab{white-space:nowrap}.table-wrap{overflow:auto;border-radius:20px;border:1px solid var(--line)}.track-table{width:100%;border-collapse:collapse;background:#fff}.track-table th,.track-table td{border-bottom:1px solid var(--line);padding:12px;text-align:center}.track-table th:first-child,.track-table td:first-child{text-align:left;position:sticky;left:0;background:#fff;z-index:1}.check{width:28px;height:28px;accent-color:var(--brand)}.special{min-width:90px;text-align:center}.pill{display:inline-flex;align-items:center;gap:8px;background:#f3faf5;border:1px solid #dcefe2;border-radius:999px;padding:8px 12px}.score-list{display:grid;gap:12px}.score-item{display:grid;grid-template-columns:auto 1fr auto;gap:13px;align-items:center;padding:13px;border:1px solid var(--line);border-radius:18px;background:#fbfdfb}.progress{height:18px;border-radius:999px;background:#e5efdf;overflow:hidden;border:1px solid #d7e8d0}.progress span{display:block;height:100%;background:linear-gradient(90deg,#41ad6c,#ffd05d);border-radius:999px}.milestone{padding:13px 14px;border-radius:18px;background:#fbf7e8;border:1px solid #f1dfab;margin:10px 0}.milestone.done{background:#edfced;border-color:#ccefcf}.milestone-row{display:grid;grid-template-columns:1fr auto;gap:12px;align-items:center}.copybox{margin-top:16px}.copybox input{font-size:.92rem}.mobile-entry-list{display:none}.child-entry-card{background:#fbfdfb;border:1px solid var(--line);border-radius:20px;padding:16px;margin:12px 0}.factor-chips{display:flex;gap:8px;flex-wrap:wrap;margin:8px 0 12px}.chip-check{display:inline-flex;align-items:center;gap:8px;margin:0;background:#f3faf5;border:1px solid #dcefe2;border-radius:999px;padding:9px 12px}.chip-check input{width:auto;accent-color:var(--brand)}.danger-zone{border-color:#ffd0cc;background:#fffafa}.team-badge{font-size:2rem;font-weight:1000;padding:20px;border-radius:24px;background:#f3faf5;text-align:center}.public-hero .score-big{font-size:6rem}.display-mode{background:#102117;color:#fff}.display-mode .wrap{width:min(1400px,96vw)}.display-mode .hero-card,.display-mode .card{background:rgba(255,255,255,.95);color:#203128}.display-mode .hero h1{font-size:clamp(3rem,8vw,7rem)}.display-mode .lead{font-size:1.6rem}.display-mode .score-item,.display-mode .milestone{font-size:1.25rem}.display-mode .footer,.display-mode .nav{display:none}@media(max-width:860px){.hero,.grid,.features{grid-template-columns:1fr}.grid3{grid-template-columns:1fr}.nav{align-items:flex-start;flex-direction:column}.hero-card,.card,.auth-card,.feature{padding:20px}.table-wrap{display:none}.mobile-entry-list{display:block}.row{align-items:stretch}.row>*{flex:1 1 auto}.hero h1{font-size:2.35rem}.score-big{font-size:3rem}}@media(max-width:520px){.wrap{width:min(95vw,520px);padding-top:18px}.nav-links{width:100%}.nav-links .btn,.nav-links a{flex:1}.btn{width:100%}.hero-card,.card,.auth-card,.feature{border-radius:20px}.tabs .btn{width:auto}.milestone-row{grid-template-columns:1fr}.score-item{grid-template-columns:auto 1fr}.score-item>b:last-child{grid-column:2}}
.dashboard-list{display:flex;flex-direction:column;gap:14px}.dash-item{display:flex;justify-content:space-between;gap:18px;align-items:center;padding:16px;border:1px solid rgba(15,23,42,.10);border-radius:20px;background:rgba(255,255,255,.72)}.dash-actions{display:flex;gap:8px;flex-wrap:wrap;justify-content:flex-end}.team-badge{display:inline-flex;align-items:center;gap:8px;padding:12px 16px;border-radius:999px;background:#ecfdf5;font-weight:800}.center{text-align:center}.narrow{max-width:780px}.wide{width:100%;justify-content:center}@media(max-width:760px){.dash-item{display:block}.dash-actions{justify-content:flex-start;margin-top:12px}.nav-links{gap:8px}.nav-links a{font-size:14px}}

.stats-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;margin:18px 0}.mini-stat{display:flex;flex-direction:column;gap:4px;text-align:center}.mini-stat b{font-size:2.1rem;color:var(--brand)}.mini-stat span{color:var(--muted);font-weight:800}.factor-stat{display:grid;gap:8px;padding:13px 0;border-bottom:1px solid var(--line)}.factor-stat:last-child{border-bottom:0}.bar-chart{display:grid;gap:12px}.bar-row{display:grid;grid-template-columns:90px 1fr 60px;gap:12px;align-items:center}.bar{height:22px;border-radius:999px;background:#e5efdf;overflow:hidden;border:1px solid #d7e8d0}.bar span{display:block;height:100%;background:linear-gradient(90deg,#41ad6c,#ffd05d);border-radius:999px}.table-wrap.always{display:block}.score-item:hover{transform:translateY(-1px);text-decoration:none}@media(max-width:860px){.stats-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.bar-row{grid-template-columns:72px 1fr 48px}}@media(max-width:520px){.stats-grid{grid-template-columns:1fr}.mini-stat{text-align:left}.bar-row{grid-template-columns:1fr}.bar-row b{text-align:right}}
/* v6 product hardening */
.stat-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(145px,1fr));gap:14px;margin:24px 0}.stat{background:#fff;border:1px solid rgba(30,41,59,.08);border-radius:20px;padding:18px;box-shadow:0 12px 30px rgba(15,23,42,.06)}.stat b{display:block;font-size:2rem;line-height:1;color:#14532d}.stat span{color:#64748b;font-size:.9rem}.table-wrap{overflow:auto}table{width:100%;border-collapse:separate;border-spacing:0 8px}th{text-align:left;color:#64748b;font-size:.85rem;font-weight:700;padding:6px 10px}td{background:#f8fafc;padding:10px;border-top:1px solid #e2e8f0;border-bottom:1px solid #e2e8f0}td:first-child{border-left:1px solid #e2e8f0;border-radius:12px 0 0 12px}td:last-child{border-right:1px solid #e2e8f0;border-radius:0 12px 12px 0}.btn.danger{background:#dc2626;color:#fff}.btn.small{padding:8px 10px;font-size:.85rem}.inline-form{display:flex;gap:10px;align-items:end;flex-wrap:wrap}.inline-form input{max-width:340px}.checklist{display:grid;gap:10px}.checkrow{display:flex;gap:10px;align-items:center;padding:10px 12px;border-radius:14px;background:#f8fafc}.checkrow.ok{border:1px solid #bbf7d0}.checkrow.bad{border:1px solid #fecaca;background:#fff7f7}.center{text-align:center}.footer a{color:inherit}


/* v7 PWA, mobile quick entry and share tools */
.today-card { border: 1px solid rgba(47,125,70,.18); }
.today-list { display:grid; gap:12px; }
.today-item { display:flex; justify-content:space-between; align-items:center; gap:12px; padding:12px; border-radius:18px; background:rgba(47,125,70,.06); }
.qr-share { margin-top:16px; display:flex; align-items:center; gap:14px; padding:12px; border-radius:20px; background:#fff; border:1px solid rgba(47,125,70,.14); }
.qr-share img { width:104px; height:104px; border-radius:14px; background:#fff; }
.mini-share { margin-top:14px; display:inline-flex; padding:8px 12px; border-radius:999px; background:rgba(255,255,255,.7); border:1px solid rgba(47,125,70,.16); font-weight:700; }
.stepper { display:flex; align-items:center; gap:8px; }
.stepper .special { max-width:90px; text-align:center; }
.step-btn { width:42px; height:42px; border:0; border-radius:14px; font-size:1.3rem; font-weight:900; background:#e7f6dd; color:#215f35; box-shadow:0 6px 16px rgba(21,63,36,.10); }
.step-btn:active { transform:translateY(1px) scale(.98); }
.install-pwa-btn[hidden] { display:none!important; }
@media (max-width: 760px) {
  .today-item { align-items:stretch; flex-direction:column; }
  .today-item .btn { width:100%; text-align:center; }
  .qr-share { flex-direction:column; text-align:center; }
  .qr-share img { width:180px; height:180px; }
  .chip-check span { min-height:44px; display:flex; align-items:center; }
  .child-entry-card { scroll-margin-top:16px; }
  .tabs { max-height:168px; overflow:auto; padding-bottom:6px; }
  input.check, .check { width:28px; height:28px; }
}
.display-mode .public-hero h1 { font-size: clamp(3rem, 8vw, 7rem); }
.display-mode .progress { height:30px; }
.display-mode .score-item { font-size:1.25rem; padding:18px; }
.team-badge { display:inline-flex; font-size:1.25rem; font-weight:900; background:#fff2bc; padding:12px 16px; border-radius:20px; }

/* v9 Offline-Synchronisation */
.sync-status{margin:12px 0 18px;padding:12px 14px;border-radius:16px;background:#edf7ef;border:1px solid #cfe8d4;color:#245a32;font-weight:700}
.sync-status.offline{background:#fff0f0;border-color:#ffcaca;color:#8b1d1d}
.sync-status.pending{background:#fff8e6;border-color:#f5d77a;color:#775200}
.sync-status.syncing{background:#eef4ff;border-color:#c8d8ff;color:#234a89}
.sync-status.ok{background:#edf7ef;border-color:#cfe8d4;color:#245a32}
@media(max-width:760px){#sync-now-btn,#offline-save-btn{width:100%;justify-content:center}.sync-status{position:sticky;top:8px;z-index:5;box-shadow:0 8px 18px rgba(0,0,0,.08)}}

/* v10 language switcher */
.language-switcher{display:inline-flex;align-items:center;margin:0}
.language-switcher select{border:1px solid rgba(47,125,70,.22);border-radius:999px;padding:9px 12px;background:#fff;font-weight:800;color:#26583a;box-shadow:0 8px 22px rgba(31,79,51,.08)}
.nav .language-switcher select{max-width:130px}
/* v11 team roles */
.inline-form{display:inline-flex;gap:.4rem;align-items:center;margin:0}.inline-form select{min-width:130px}.team-role-badge{display:inline-flex;align-items:center;gap:.3rem;border-radius:999px;background:#eef8f0;color:#225d34;padding:.25rem .6rem;font-weight:700;font-size:.9rem}.invite-card{border:1px dashed rgba(47,125,70,.35);background:linear-gradient(135deg,#f7fff9,#fffdf4)}

/* v12 Vorlagen & Saison-Assistent */
.template-card{display:flex;flex-direction:column;gap:10px;align-items:flex-start}
.template-card .wide{margin-top:auto;width:100%;text-align:center}
.season-options{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:12px;margin:14px 0}
.season-option{border:1px solid rgba(47,125,70,.16);border-radius:18px;padding:14px;background:rgba(255,255,255,.72)}

/* ===== v13 Gamification ===== */
.gamified-hero{align-items:stretch}.big-progress{height:18px;border-radius:999px;overflow:hidden;background:#e6f3ea}.big-progress span{display:block;height:100%;background:linear-gradient(90deg,#58c878,#ffd166,#f77f00);border-radius:999px;transition:width .5s ease}.level-card{text-align:center;display:flex;flex-direction:column;align-items:center;justify-content:center;position:relative;overflow:hidden}.level-card:before{content:"";position:absolute;inset:-40%;background:radial-gradient(circle,#fff9 0,#fff0 55%);transform:rotate(12deg)}.level-card>*{position:relative}.level-ring{--p:calc(var(--level-progress)*1%);width:128px;height:128px;border-radius:50%;display:grid;place-items:center;background:conic-gradient(#ffd166 var(--p),#dceee2 0);box-shadow:0 20px 45px #1232;margin-bottom:12px}.level-ring:after{content:"";position:absolute;width:92px;height:92px;border-radius:50%;background:#fff}.level-ring span{position:relative;z-index:1;font-size:42px}.section-title{display:flex;justify-content:space-between;gap:16px;align-items:center;flex-wrap:wrap}.badge-board{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:14px}.achievement{border:1px solid #dbe9df;border-radius:22px;padding:16px;min-height:150px;display:flex;flex-direction:column;gap:7px;background:linear-gradient(145deg,#fff,#f8fbf8);box-shadow:0 12px 28px #1231}.achievement.unlocked{border-color:#ffd166;background:linear-gradient(145deg,#fffdf2,#f5fff7)}.achievement.locked{opacity:.72;filter:saturate(.75)}.ach-emoji{font-size:34px}.mini-progress{height:8px;border-radius:999px;background:#e4eee7;overflow:hidden;margin-top:auto}.mini-progress span{display:block;height:100%;border-radius:999px;background:#58c878}.gamified-score .rank{font-size:20px}.top-rank{background:#fff2c2!important;color:#6b4b00!important}.celebration-hero{min-height:78vh;display:grid;place-items:center;position:relative;overflow:hidden}.celebration-card{text-align:center;max-width:760px;padding:46px;border-radius:36px;background:linear-gradient(145deg,#fff,#fff8df);box-shadow:0 30px 90px #1233;position:relative;z-index:1;border:1px solid #ffe49a}.celebrate-emoji{font-size:88px;animation:bounce .9s ease infinite alternate}.celebrate-page{background:radial-gradient(circle at 20% 10%,#fff0c7 0,#fff0 30%),radial-gradient(circle at 80% 30%,#d8f8e1 0,#fff0 30%),#f8fbf8}.confetti,.confetti:before,.confetti:after{position:absolute;inset:0;content:"";background-image:radial-gradient(circle,#f77f00 0 5px,transparent 6px),radial-gradient(circle,#58c878 0 4px,transparent 5px),radial-gradient(circle,#6c63ff 0 4px,transparent 5px),radial-gradient(circle,#ffd166 0 6px,transparent 7px);background-size:120px 140px,160px 170px,190px 150px,220px 210px;animation:confetti 7s linear infinite;opacity:.75}.confetti:before{transform:translateY(-25%);animation-duration:9s}.confetti:after{transform:translateY(-50%);animation-duration:11s}@keyframes confetti{to{background-position:0 900px,0 820px,0 760px,0 880px}}@keyframes bounce{from{transform:translateY(0) rotate(-4deg)}to{transform:translateY(-10px) rotate(4deg)}}.display-mode .wrap{max-width:1500px}.display-mode .hero-card h1{font-size:clamp(48px,7vw,110px)}.display-mode .lead{font-size:clamp(22px,3vw,42px)}.display-mode .score-item{font-size:clamp(20px,2vw,34px);padding:22px}.display-mode .achievement{font-size:1.25rem}.display-mode .level-ring{width:180px;height:180px}.display-mode .level-ring:after{width:132px;height:132px}.display-mode .level-ring span{font-size:60px}.team-badge{display:inline-flex;padding:10px 16px;border-radius:999px;background:#e6f3ea;font-weight:700}@media(max-width:760px){.level-ring{width:104px;height:104px}.level-ring:after{width:76px;height:76px}.level-ring span{font-size:34px}.celebration-card{padding:28px;border-radius:26px}.celebrate-emoji{font-size:64px}.badge-board{grid-template-columns:1fr 1fr}.achievement{min-height:135px;padding:13px}}
.mini-ach-list{display:flex;gap:6px;margin-top:6px;flex-wrap:wrap}.mini-ach{font-size:22px;display:inline-grid;place-items:center;width:32px;height:32px;border-radius:50%;background:#fff3c9}.mini-ach.muted{background:#eef3ef;filter:grayscale(1)}


/* v13.1 Final Polish */
:root{
  --jt-green:#2f7d46;
  --jt-green-dark:#205b34;
  --jt-mint:#eaf8ef;
  --jt-cream:#fff9ed;
  --jt-sand:#f7e8c7;
  --jt-text:#213328;
  --jt-muted:#637567;
  --jt-border:#dfe9df;
  --jt-danger:#b42318;
  --jt-warning:#ad6800;
  --jt-ok:#1f7a3f;
}
body{background:linear-gradient(180deg,#f6fff8 0%,#fffaf0 42%,#ffffff 100%);color:var(--jt-text)}
.nav{position:sticky;top:0;z-index:20;background:rgba(255,255,255,.88);backdrop-filter:blur(14px);border:1px solid rgba(223,233,223,.7);box-shadow:0 12px 34px rgba(31,89,50,.07)}
.logo-mark{display:inline-flex;align-items:center;justify-content:center;width:36px;height:36px;border-radius:14px;background:linear-gradient(135deg,#e6f7ec,#ffe9b8);box-shadow:inset 0 0 0 1px rgba(47,125,70,.12)}
.hero{align-items:stretch}.hero-card,.card,.feature,.auth-card{border:1px solid var(--jt-border);box-shadow:0 18px 50px rgba(31,89,50,.09)}
.hero-card{background:radial-gradient(circle at 15% 15%,#fff3cb 0,#fffdf5 34%,#eefaf2 100%)}
.btn{border-radius:999px;font-weight:800;box-shadow:0 8px 18px rgba(47,125,70,.16)}
.btn.secondary{box-shadow:none}.badge{border-radius:999px;background:#eefaf2;color:var(--jt-green-dark);font-weight:800}.notice{border-radius:18px;border:1px solid var(--jt-border)}
.notice.error{border-color:#ffd0ca;background:#fff1ef;color:var(--jt-danger)}.notice.warning{border-color:#ffe3a3;background:#fff8e6;color:var(--jt-warning)}.notice.ok,.success{border-color:#bfe8cc;background:#eefaf2;color:var(--jt-ok)}
input,select,textarea{border:1px solid var(--jt-border);border-radius:14px;background:#fff;transition:border-color .15s,box-shadow .15s}input:focus,select:focus,textarea:focus{outline:none;border-color:#72b983;box-shadow:0 0 0 4px rgba(47,125,70,.13)}
.footer{border-top:1px solid var(--jt-border);padding-top:18px;margin-top:34px}.legal-grid,.check-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:14px}.check-item{border:1px solid var(--jt-border);border-radius:18px;padding:16px;background:#fff}.check-item strong{display:block;margin-bottom:5px}.check-ok{border-color:#bfe8cc;background:#f2fbf5}.check-warn{border-color:#ffe3a3;background:#fffaf0}.check-bad{border-color:#ffd0ca;background:#fff4f2}.small-code{font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;background:#f5f7f5;border:1px solid var(--jt-border);border-radius:10px;padding:2px 6px}.mail-preview{white-space:pre-wrap;background:#f8fbf8;border:1px solid var(--jt-border);border-radius:18px;padding:16px;line-height:1.55}.final-list li{margin:.45rem 0}.legal-placeholder{border-left:5px solid #f0b429;background:#fff9e8;padding:14px 16px;border-radius:14px;margin:14px 0}.hero-mini{padding:28px;border-radius:26px;background:linear-gradient(135deg,#eaf8ef,#fff7df);border:1px solid var(--jt-border)}
@media(max-width:720px){.nav{position:static}.nav-links{gap:8px}.hero-card,.card,.feature,.auth-card{box-shadow:0 12px 30px rgba(31,89,50,.07)}.actions{gap:8px}.btn{width:100%;justify-content:center}.nav .btn{width:auto}}
:root{--bg:#f8faf5;--bg2:#e9f7ef;--card:#ffffff;--text:#203128;--muted:#6f7f74;--brand:#2f8f5b;--brand2:#ffbd4a;--danger:#c64b4b;--line:#e2eadf;--shadow:0 18px 50px rgba(32,49,40,.10);--radius:26px}*{box-sizing:border-box}body{margin:0;font-family:Inter,ui-sans-serif,system-ui,-apple-system,"Segoe UI",Arial,sans-serif;background:radial-gradient(circle at 10% 0%,#fff7d7 0,#fff7d700 35%),radial-gradient(circle at 90% 10%,#d8f6e4 0,#d8f6e400 38%),var(--bg);color:var(--text)}a{color:var(--brand);text-decoration:none}a:hover{text-decoration:underline}.wrap{width:min(1180px,94vw);margin:0 auto;padding:28px 0 54px}.narrow{width:min(620px,94vw)}.nav{display:flex;align-items:center;justify-content:space-between;gap:18px;margin-bottom:24px}.logo{display:flex;align-items:center;gap:10px;font-weight:900;font-size:1.15rem;color:var(--text)}.logo-mark{display:grid;place-items:center;width:42px;height:42px;border-radius:15px;background:linear-gradient(135deg,#b9f4cc,#ffe5a4);box-shadow:var(--shadow)}.nav-links{display:flex;align-items:center;gap:12px;flex-wrap:wrap}.hero{display:grid;grid-template-columns:1.6fr .8fr;gap:22px;align-items:stretch;margin:12px 0 24px}.hero-card,.card,.auth-card,.feature{background:rgba(255,255,255,.88);border:1px solid rgba(226,234,223,.85);border-radius:var(--radius);box-shadow:var(--shadow);padding:28px;backdrop-filter:blur(10px)}.hero-card{position:relative;overflow:hidden;background:linear-gradient(135deg,#ffffff 0,#f4fff7 55%,#fff6d9 100%)}.hero-card:after{content:"";position:absolute;right:-70px;bottom:-80px;width:230px;height:230px;border-radius:50%;background:linear-gradient(135deg,#90e5a5,#ffd36f);opacity:.35}.badge{display:inline-flex;align-items:center;gap:8px;padding:8px 13px;border-radius:999px;background:#ecfff1;color:#21663d;font-weight:800;border:1px solid #d3f4dc}.hero h1{font-size:clamp(2.1rem,5vw,4.8rem);line-height:1;margin:18px 0 12px;letter-spacing:-.05em}.lead{font-size:1.18rem;line-height:1.55;color:#415248}.muted{color:var(--muted)}.center{text-align:center}.actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:18px}.btn,button.btn{border:0;border-radius:16px;background:linear-gradient(135deg,var(--brand),#45b875);color:#fff;font-weight:900;padding:12px 18px;box-shadow:0 9px 22px rgba(47,143,91,.22);cursor:pointer;display:inline-flex;align-items:center;justify-content:center;text-decoration:none}.btn:hover{text-decoration:none;transform:translateY(-1px)}.btn.secondary{background:#eef7f0;color:#27563b;box-shadow:none;border:1px solid #d9eadf}.btn.warn{background:#fff0ee;color:var(--danger);border:1px solid #ffd0cc;box-shadow:none}.wide{width:100%}.features{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.feature .icon{font-size:2.2rem}.feature h2,.card h2{margin:8px 0 10px}.stepper{display:grid;gap:14px}.step{display:flex;gap:13px;align-items:flex-start}.step-no,.rank{display:grid;place-items:center;flex:0 0 auto;width:34px;height:34px;border-radius:13px;background:#fff3c7;color:#805719;font-weight:900}.grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}.grid3{display:grid;grid-template-columns:1.5fr .6fr .6fr;gap:14px;margin-bottom:12px}.row{display:flex;gap:10px;align-items:center;justify-content:space-between;flex-wrap:wrap}.add-row{margin-top:16px;justify-content:flex-start}label{display:block;font-weight:800;margin:12px 0 7px}input,textarea,select{width:100%;border:1px solid var(--line);border-radius:16px;padding:12px 14px;background:#fff;color:var(--text);font:inherit}textarea{min-height:120px}.checkline{display:flex;align-items:center;gap:10px;font-weight:700}.checkline input{width:auto}.notice,.success{border-radius:20px;padding:16px 18px;margin:14px 0}.notice.error{background:#fff0ee;color:#923d3d;border:1px solid #ffd3cf}.success{background:#ecfff1;color:#21663d;border:1px solid #cff1d7}.auth-card{margin-top:50px}.footer{text-align:center;color:var(--muted);margin-top:32px}.score-big{font-size:4rem;line-height:1;font-weight:1000;color:var(--brand)}.stat-card{display:grid;place-items:center;text-align:center}.tabs{display:flex;gap:10px;overflow:auto;padding-bottom:8px}.tab{white-space:nowrap}.table-wrap{overflow:auto;border-radius:20px;border:1px solid var(--line)}.track-table{width:100%;border-collapse:collapse;background:#fff}.track-table th,.track-table td{border-bottom:1px solid var(--line);padding:12px;text-align:center}.track-table th:first-child,.track-table td:first-child{text-align:left;position:sticky;left:0;background:#fff;z-index:1}.check{width:28px;height:28px;accent-color:var(--brand)}.special{min-width:90px;text-align:center}.pill{display:inline-flex;align-items:center;gap:8px;background:#f3faf5;border:1px solid #dcefe2;border-radius:999px;padding:8px 12px}.score-list{display:grid;gap:12px}.score-item{display:grid;grid-template-columns:auto 1fr auto;gap:13px;align-items:center;padding:13px;border:1px solid var(--line);border-radius:18px;background:#fbfdfb}.progress{height:18px;border-radius:999px;background:#e5efdf;overflow:hidden;border:1px solid #d7e8d0}.progress span{display:block;height:100%;background:linear-gradient(90deg,#41ad6c,#ffd05d);border-radius:999px}.milestone{padding:13px 14px;border-radius:18px;background:#fbf7e8;border:1px solid #f1dfab;margin:10px 0}.milestone.done{background:#edfced;border-color:#ccefcf}.milestone-row{display:grid;grid-template-columns:1fr auto;gap:12px;align-items:center}.copybox{margin-top:16px}.copybox input{font-size:.92rem}.mobile-entry-list{display:none}.child-entry-card{background:#fbfdfb;border:1px solid var(--line);border-radius:20px;padding:16px;margin:12px 0}.factor-chips{display:flex;gap:8px;flex-wrap:wrap;margin:8px 0 12px}.chip-check{display:inline-flex;align-items:center;gap:8px;margin:0;background:#f3faf5;border:1px solid #dcefe2;border-radius:999px;padding:9px 12px}.chip-check input{width:auto;accent-color:var(--brand)}.danger-zone{border-color:#ffd0cc;background:#fffafa}.team-badge{font-size:2rem;font-weight:1000;padding:20px;border-radius:24px;background:#f3faf5;text-align:center}.public-hero .score-big{font-size:6rem}.display-mode{background:#102117;color:#fff}.display-mode .wrap{width:min(1400px,96vw)}.display-mode .hero-card,.display-mode .card{background:rgba(255,255,255,.95);color:#203128}.display-mode .hero h1{font-size:clamp(3rem,8vw,7rem)}.display-mode .lead{font-size:1.6rem}.display-mode .score-item,.display-mode .milestone{font-size:1.25rem}.display-mode .footer,.display-mode .nav{display:none}@media(max-width:860px){.hero,.grid,.features{grid-template-columns:1fr}.grid3{grid-template-columns:1fr}.nav{align-items:flex-start;flex-direction:column}.hero-card,.card,.auth-card,.feature{padding:20px}.table-wrap{display:none}.mobile-entry-list{display:block}.row{align-items:stretch}.row>*{flex:1 1 auto}.hero h1{font-size:2.35rem}.score-big{font-size:3rem}}@media(max-width:520px){.wrap{width:min(95vw,520px);padding-top:18px}.nav-links{width:100%}.nav-links .btn,.nav-links a{flex:1}.btn{width:100%}.hero-card,.card,.auth-card,.feature{border-radius:20px}.tabs .btn{width:auto}.milestone-row{grid-template-columns:1fr}.score-item{grid-template-columns:auto 1fr}.score-item>b:last-child{grid-column:2}}
.dashboard-list{display:flex;flex-direction:column;gap:14px}.dash-item{display:flex;justify-content:space-between;gap:18px;align-items:center;padding:16px;border:1px solid rgba(15,23,42,.10);border-radius:20px;background:rgba(255,255,255,.72)}.dash-actions{display:flex;gap:8px;flex-wrap:wrap;justify-content:flex-end}.team-badge{display:inline-flex;align-items:center;gap:8px;padding:12px 16px;border-radius:999px;background:#ecfdf5;font-weight:800}.center{text-align:center}.narrow{max-width:780px}.wide{width:100%;justify-content:center}@media(max-width:760px){.dash-item{display:block}.dash-actions{justify-content:flex-start;margin-top:12px}.nav-links{gap:8px}.nav-links a{font-size:14px}}

.stats-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;margin:18px 0}.mini-stat{display:flex;flex-direction:column;gap:4px;text-align:center}.mini-stat b{font-size:2.1rem;color:var(--brand)}.mini-stat span{color:var(--muted);font-weight:800}.factor-stat{display:grid;gap:8px;padding:13px 0;border-bottom:1px solid var(--line)}.factor-stat:last-child{border-bottom:0}.bar-chart{display:grid;gap:12px}.bar-row{display:grid;grid-template-columns:90px 1fr 60px;gap:12px;align-items:center}.bar{height:22px;border-radius:999px;background:#e5efdf;overflow:hidden;border:1px solid #d7e8d0}.bar span{display:block;height:100%;background:linear-gradient(90deg,#41ad6c,#ffd05d);border-radius:999px}.table-wrap.always{display:block}.score-item:hover{transform:translateY(-1px);text-decoration:none}@media(max-width:860px){.stats-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.bar-row{grid-template-columns:72px 1fr 48px}}@media(max-width:520px){.stats-grid{grid-template-columns:1fr}.mini-stat{text-align:left}.bar-row{grid-template-columns:1fr}.bar-row b{text-align:right}}
/* v6 product hardening */
.stat-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(145px,1fr));gap:14px;margin:24px 0}.stat{background:#fff;border:1px solid rgba(30,41,59,.08);border-radius:20px;padding:18px;box-shadow:0 12px 30px rgba(15,23,42,.06)}.stat b{display:block;font-size:2rem;line-height:1;color:#14532d}.stat span{color:#64748b;font-size:.9rem}.table-wrap{overflow:auto}table{width:100%;border-collapse:separate;border-spacing:0 8px}th{text-align:left;color:#64748b;font-size:.85rem;font-weight:700;padding:6px 10px}td{background:#f8fafc;padding:10px;border-top:1px solid #e2e8f0;border-bottom:1px solid #e2e8f0}td:first-child{border-left:1px solid #e2e8f0;border-radius:12px 0 0 12px}td:last-child{border-right:1px solid #e2e8f0;border-radius:0 12px 12px 0}.btn.danger{background:#dc2626;color:#fff}.btn.small{padding:8px 10px;font-size:.85rem}.inline-form{display:flex;gap:10px;align-items:end;flex-wrap:wrap}.inline-form input{max-width:340px}.checklist{display:grid;gap:10px}.checkrow{display:flex;gap:10px;align-items:center;padding:10px 12px;border-radius:14px;background:#f8fafc}.checkrow.ok{border:1px solid #bbf7d0}.checkrow.bad{border:1px solid #fecaca;background:#fff7f7}.center{text-align:center}.footer a{color:inherit}


/* v7 PWA, mobile quick entry and share tools */
.today-card { border: 1px solid rgba(47,125,70,.18); }
.today-list { display:grid; gap:12px; }
.today-item { display:flex; justify-content:space-between; align-items:center; gap:12px; padding:12px; border-radius:18px; background:rgba(47,125,70,.06); }
.qr-share { margin-top:16px; display:flex; align-items:center; gap:14px; padding:12px; border-radius:20px; background:#fff; border:1px solid rgba(47,125,70,.14); }
.qr-share img { width:104px; height:104px; border-radius:14px; background:#fff; }
.mini-share { margin-top:14px; display:inline-flex; padding:8px 12px; border-radius:999px; background:rgba(255,255,255,.7); border:1px solid rgba(47,125,70,.16); font-weight:700; }
.stepper { display:flex; align-items:center; gap:8px; }
.stepper .special { max-width:90px; text-align:center; }
.step-btn { width:42px; height:42px; border:0; border-radius:14px; font-size:1.3rem; font-weight:900; background:#e7f6dd; color:#215f35; box-shadow:0 6px 16px rgba(21,63,36,.10); }
.step-btn:active { transform:translateY(1px) scale(.98); }
.install-pwa-btn[hidden] { display:none!important; }
@media (max-width: 760px) {
  .today-item { align-items:stretch; flex-direction:column; }
  .today-item .btn { width:100%; text-align:center; }
  .qr-share { flex-direction:column; text-align:center; }
  .qr-share img { width:180px; height:180px; }
  .chip-check span { min-height:44px; display:flex; align-items:center; }
  .child-entry-card { scroll-margin-top:16px; }
  .tabs { max-height:168px; overflow:auto; padding-bottom:6px; }
  input.check, .check { width:28px; height:28px; }
}
.display-mode .public-hero h1 { font-size: clamp(3rem, 8vw, 7rem); }
.display-mode .progress { height:30px; }
.display-mode .score-item { font-size:1.25rem; padding:18px; }
.team-badge { display:inline-flex; font-size:1.25rem; font-weight:900; background:#fff2bc; padding:12px 16px; border-radius:20px; }

/* v9 Offline-Synchronisation */
.sync-status{margin:12px 0 18px;padding:12px 14px;border-radius:16px;background:#edf7ef;border:1px solid #cfe8d4;color:#245a32;font-weight:700}
.sync-status.offline{background:#fff0f0;border-color:#ffcaca;color:#8b1d1d}
.sync-status.pending{background:#fff8e6;border-color:#f5d77a;color:#775200}
.sync-status.syncing{background:#eef4ff;border-color:#c8d8ff;color:#234a89}
.sync-status.ok{background:#edf7ef;border-color:#cfe8d4;color:#245a32}
@media(max-width:760px){#sync-now-btn,#offline-save-btn{width:100%;justify-content:center}.sync-status{position:sticky;top:8px;z-index:5;box-shadow:0 8px 18px rgba(0,0,0,.08)}}

/* v10 language switcher */
.language-switcher{display:inline-flex;align-items:center;margin:0}
.language-switcher select{border:1px solid rgba(47,125,70,.22);border-radius:999px;padding:9px 12px;background:#fff;font-weight:800;color:#26583a;box-shadow:0 8px 22px rgba(31,79,51,.08)}
.nav .language-switcher select{max-width:130px}
/* v11 team roles */
.inline-form{display:inline-flex;gap:.4rem;align-items:center;margin:0}.inline-form select{min-width:130px}.team-role-badge{display:inline-flex;align-items:center;gap:.3rem;border-radius:999px;background:#eef8f0;color:#225d34;padding:.25rem .6rem;font-weight:700;font-size:.9rem}.invite-card{border:1px dashed rgba(47,125,70,.35);background:linear-gradient(135deg,#f7fff9,#fffdf4)}

/* v12 Vorlagen & Saison-Assistent */
.template-card{display:flex;flex-direction:column;gap:10px;align-items:flex-start}
.template-card .wide{margin-top:auto;width:100%;text-align:center}
.season-options{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:12px;margin:14px 0}
.season-option{border:1px solid rgba(47,125,70,.16);border-radius:18px;padding:14px;background:rgba(255,255,255,.72)}

/* ===== v13 Gamification ===== */
.gamified-hero{align-items:stretch}.big-progress{height:18px;border-radius:999px;overflow:hidden;background:#e6f3ea}.big-progress span{display:block;height:100%;background:linear-gradient(90deg,#58c878,#ffd166,#f77f00);border-radius:999px;transition:width .5s ease}.level-card{text-align:center;display:flex;flex-direction:column;align-items:center;justify-content:center;position:relative;overflow:hidden}.level-card:before{content:"";position:absolute;inset:-40%;background:radial-gradient(circle,#fff9 0,#fff0 55%);transform:rotate(12deg)}.level-card>*{position:relative}.level-ring{--p:calc(var(--level-progress)*1%);width:128px;height:128px;border-radius:50%;display:grid;place-items:center;background:conic-gradient(#ffd166 var(--p),#dceee2 0);box-shadow:0 20px 45px #1232;margin-bottom:12px}.level-ring:after{content:"";position:absolute;width:92px;height:92px;border-radius:50%;background:#fff}.level-ring span{position:relative;z-index:1;font-size:42px}.section-title{display:flex;justify-content:space-between;gap:16px;align-items:center;flex-wrap:wrap}.badge-board{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:14px}.achievement{border:1px solid #dbe9df;border-radius:22px;padding:16px;min-height:150px;display:flex;flex-direction:column;gap:7px;background:linear-gradient(145deg,#fff,#f8fbf8);box-shadow:0 12px 28px #1231}.achievement.unlocked{border-color:#ffd166;background:linear-gradient(145deg,#fffdf2,#f5fff7)}.achievement.locked{opacity:.72;filter:saturate(.75)}.ach-emoji{font-size:34px}.mini-progress{height:8px;border-radius:999px;background:#e4eee7;overflow:hidden;margin-top:auto}.mini-progress span{display:block;height:100%;border-radius:999px;background:#58c878}.gamified-score .rank{font-size:20px}.top-rank{background:#fff2c2!important;color:#6b4b00!important}.celebration-hero{min-height:78vh;display:grid;place-items:center;position:relative;overflow:hidden}.celebration-card{text-align:center;max-width:760px;padding:46px;border-radius:36px;background:linear-gradient(145deg,#fff,#fff8df);box-shadow:0 30px 90px #1233;position:relative;z-index:1;border:1px solid #ffe49a}.celebrate-emoji{font-size:88px;animation:bounce .9s ease infinite alternate}.celebrate-page{background:radial-gradient(circle at 20% 10%,#fff0c7 0,#fff0 30%),radial-gradient(circle at 80% 30%,#d8f8e1 0,#fff0 30%),#f8fbf8}.confetti,.confetti:before,.confetti:after{position:absolute;inset:0;content:"";background-image:radial-gradient(circle,#f77f00 0 5px,transparent 6px),radial-gradient(circle,#58c878 0 4px,transparent 5px),radial-gradient(circle,#6c63ff 0 4px,transparent 5px),radial-gradient(circle,#ffd166 0 6px,transparent 7px);background-size:120px 140px,160px 170px,190px 150px,220px 210px;animation:confetti 7s linear infinite;opacity:.75}.confetti:before{transform:translateY(-25%);animation-duration:9s}.confetti:after{transform:translateY(-50%);animation-duration:11s}@keyframes confetti{to{background-position:0 900px,0 820px,0 760px,0 880px}}@keyframes bounce{from{transform:translateY(0) rotate(-4deg)}to{transform:translateY(-10px) rotate(4deg)}}.display-mode .wrap{max-width:1500px}.display-mode .hero-card h1{font-size:clamp(48px,7vw,110px)}.display-mode .lead{font-size:clamp(22px,3vw,42px)}.display-mode .score-item{font-size:clamp(20px,2vw,34px);padding:22px}.display-mode .achievement{font-size:1.25rem}.display-mode .level-ring{width:180px;height:180px}.display-mode .level-ring:after{width:132px;height:132px}.display-mode .level-ring span{font-size:60px}.team-badge{display:inline-flex;padding:10px 16px;border-radius:999px;background:#e6f3ea;font-weight:700}@media(max-width:760px){.level-ring{width:104px;height:104px}.level-ring:after{width:76px;height:76px}.level-ring span{font-size:34px}.celebration-card{padding:28px;border-radius:26px}.celebrate-emoji{font-size:64px}.badge-board{grid-template-columns:1fr 1fr}.achievement{min-height:135px;padding:13px}}
.mini-ach-list{display:flex;gap:6px;margin-top:6px;flex-wrap:wrap}.mini-ach{font-size:22px;display:inline-grid;place-items:center;width:32px;height:32px;border-radius:50%;background:#fff3c9}.mini-ach.muted{background:#eef3ef;filter:grayscale(1)}


/* v13.1 Final Polish */
:root{
  --jt-green:#2f7d46;
  --jt-green-dark:#205b34;
  --jt-mint:#eaf8ef;
  --jt-cream:#fff9ed;
  --jt-sand:#f7e8c7;
  --jt-text:#213328;
  --jt-muted:#637567;
  --jt-border:#dfe9df;
  --jt-danger:#b42318;
  --jt-warning:#ad6800;
  --jt-ok:#1f7a3f;
}
body{background:linear-gradient(180deg,#f6fff8 0%,#fffaf0 42%,#ffffff 100%);color:var(--jt-text)}
.nav{position:sticky;top:0;z-index:20;background:rgba(255,255,255,.88);backdrop-filter:blur(14px);border:1px solid rgba(223,233,223,.7);box-shadow:0 12px 34px rgba(31,89,50,.07)}
.logo-mark{display:inline-flex;align-items:center;justify-content:center;width:36px;height:36px;border-radius:14px;background:linear-gradient(135deg,#e6f7ec,#ffe9b8);box-shadow:inset 0 0 0 1px rgba(47,125,70,.12)}
.hero{align-items:stretch}.hero-card,.card,.feature,.auth-card{border:1px solid var(--jt-border);box-shadow:0 18px 50px rgba(31,89,50,.09)}
.hero-card{background:radial-gradient(circle at 15% 15%,#fff3cb 0,#fffdf5 34%,#eefaf2 100%)}
.btn{border-radius:999px;font-weight:800;box-shadow:0 8px 18px rgba(47,125,70,.16)}
.btn.secondary{box-shadow:none}.badge{border-radius:999px;background:#eefaf2;color:var(--jt-green-dark);font-weight:800}.notice{border-radius:18px;border:1px solid var(--jt-border)}
.notice.error{border-color:#ffd0ca;background:#fff1ef;color:var(--jt-danger)}.notice.warning{border-color:#ffe3a3;background:#fff8e6;color:var(--jt-warning)}.notice.ok,.success{border-color:#bfe8cc;background:#eefaf2;color:var(--jt-ok)}
input,select,textarea{border:1px solid var(--jt-border);border-radius:14px;background:#fff;transition:border-color .15s,box-shadow .15s}input:focus,select:focus,textarea:focus{outline:none;border-color:#72b983;box-shadow:0 0 0 4px rgba(47,125,70,.13)}
.footer{border-top:1px solid var(--jt-border);padding-top:18px;margin-top:34px}.legal-grid,.check-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:14px}.check-item{border:1px solid var(--jt-border);border-radius:18px;padding:16px;background:#fff}.check-item strong{display:block;margin-bottom:5px}.check-ok{border-color:#bfe8cc;background:#f2fbf5}.check-warn{border-color:#ffe3a3;background:#fffaf0}.check-bad{border-color:#ffd0ca;background:#fff4f2}.small-code{font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;background:#f5f7f5;border:1px solid var(--jt-border);border-radius:10px;padding:2px 6px}.mail-preview{white-space:pre-wrap;background:#f8fbf8;border:1px solid var(--jt-border);border-radius:18px;padding:16px;line-height:1.55}.final-list li{margin:.45rem 0}.legal-placeholder{border-left:5px solid #f0b429;background:#fff9e8;padding:14px 16px;border-radius:14px;margin:14px 0}.hero-mini{padding:28px;border-radius:26px;background:linear-gradient(135deg,#eaf8ef,#fff7df);border:1px solid var(--jt-border)}
@media(max-width:720px){.nav{position:static}.nav-links{gap:8px}.hero-card,.card,.feature,.auth-card{box-shadow:0 12px 30px rgba(31,89,50,.07)}.actions{gap:8px}.btn{width:100%;justify-content:center}.nav .btn{width:auto}}
:root{--bg:#f8faf5;--bg2:#e9f7ef;--card:#ffffff;--text:#203128;--muted:#6f7f74;--brand:#2f8f5b;--brand2:#ffbd4a;--danger:#c64b4b;--line:#e2eadf;--shadow:0 18px 50px rgba(32,49,40,.10);--radius:26px}*{box-sizing:border-box}body{margin:0;font-family:Inter,ui-sans-serif,system-ui,-apple-system,"Segoe UI",Arial,sans-serif;background:radial-gradient(circle at 10% 0%,#fff7d7 0,#fff7d700 35%),radial-gradient(circle at 90% 10%,#d8f6e4 0,#d8f6e400 38%),var(--bg);color:var(--text)}a{color:var(--brand);text-decoration:none}a:hover{text-decoration:underline}.wrap{width:min(1180px,94vw);margin:0 auto;padding:28px 0 54px}.narrow{width:min(620px,94vw)}.nav{display:flex;align-items:center;justify-content:space-between;gap:18px;margin-bottom:24px}.logo{display:flex;align-items:center;gap:10px;font-weight:900;font-size:1.15rem;color:var(--text)}.logo-mark{display:grid;place-items:center;width:42px;height:42px;border-radius:15px;background:linear-gradient(135deg,#b9f4cc,#ffe5a4);box-shadow:var(--shadow)}.nav-links{display:flex;align-items:center;gap:12px;flex-wrap:wrap}.hero{display:grid;grid-template-columns:1.6fr .8fr;gap:22px;align-items:stretch;margin:12px 0 24px}.hero-card,.card,.auth-card,.feature{background:rgba(255,255,255,.88);border:1px solid rgba(226,234,223,.85);border-radius:var(--radius);box-shadow:var(--shadow);padding:28px;backdrop-filter:blur(10px)}.hero-card{position:relative;overflow:hidden;background:linear-gradient(135deg,#ffffff 0,#f4fff7 55%,#fff6d9 100%)}.hero-card:after{content:"";position:absolute;right:-70px;bottom:-80px;width:230px;height:230px;border-radius:50%;background:linear-gradient(135deg,#90e5a5,#ffd36f);opacity:.35}.badge{display:inline-flex;align-items:center;gap:8px;padding:8px 13px;border-radius:999px;background:#ecfff1;color:#21663d;font-weight:800;border:1px solid #d3f4dc}.hero h1{font-size:clamp(2.1rem,5vw,4.8rem);line-height:1;margin:18px 0 12px;letter-spacing:-.05em}.lead{font-size:1.18rem;line-height:1.55;color:#415248}.muted{color:var(--muted)}.center{text-align:center}.actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:18px}.btn,button.btn{border:0;border-radius:16px;background:linear-gradient(135deg,var(--brand),#45b875);color:#fff;font-weight:900;padding:12px 18px;box-shadow:0 9px 22px rgba(47,143,91,.22);cursor:pointer;display:inline-flex;align-items:center;justify-content:center;text-decoration:none}.btn:hover{text-decoration:none;transform:translateY(-1px)}.btn.secondary{background:#eef7f0;color:#27563b;box-shadow:none;border:1px solid #d9eadf}.btn.warn{background:#fff0ee;color:var(--danger);border:1px solid #ffd0cc;box-shadow:none}.wide{width:100%}.features{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.feature .icon{font-size:2.2rem}.feature h2,.card h2{margin:8px 0 10px}.stepper{display:grid;gap:14px}.step{display:flex;gap:13px;align-items:flex-start}.step-no,.rank{display:grid;place-items:center;flex:0 0 auto;width:34px;height:34px;border-radius:13px;background:#fff3c7;color:#805719;font-weight:900}.grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}.grid3{display:grid;grid-template-columns:1.5fr .6fr .6fr;gap:14px;margin-bottom:12px}.row{display:flex;gap:10px;align-items:center;justify-content:space-between;flex-wrap:wrap}.add-row{margin-top:16px;justify-content:flex-start}label{display:block;font-weight:800;margin:12px 0 7px}input,textarea,select{width:100%;border:1px solid var(--line);border-radius:16px;padding:12px 14px;background:#fff;color:var(--text);font:inherit}textarea{min-height:120px}.checkline{display:flex;align-items:center;gap:10px;font-weight:700}.checkline input{width:auto}.notice,.success{border-radius:20px;padding:16px 18px;margin:14px 0}.notice.error{background:#fff0ee;color:#923d3d;border:1px solid #ffd3cf}.success{background:#ecfff1;color:#21663d;border:1px solid #cff1d7}.auth-card{margin-top:50px}.footer{text-align:center;color:var(--muted);margin-top:32px}.score-big{font-size:4rem;line-height:1;font-weight:1000;color:var(--brand)}.stat-card{display:grid;place-items:center;text-align:center}.tabs{display:flex;gap:10px;overflow:auto;padding-bottom:8px}.tab{white-space:nowrap}.table-wrap{overflow:auto;border-radius:20px;border:1px solid var(--line)}.track-table{width:100%;border-collapse:collapse;background:#fff}.track-table th,.track-table td{border-bottom:1px solid var(--line);padding:12px;text-align:center}.track-table th:first-child,.track-table td:first-child{text-align:left;position:sticky;left:0;background:#fff;z-index:1}.check{width:28px;height:28px;accent-color:var(--brand)}.special{min-width:90px;text-align:center}.pill{display:inline-flex;align-items:center;gap:8px;background:#f3faf5;border:1px solid #dcefe2;border-radius:999px;padding:8px 12px}.score-list{display:grid;gap:12px}.score-item{display:grid;grid-template-columns:auto 1fr auto;gap:13px;align-items:center;padding:13px;border:1px solid var(--line);border-radius:18px;background:#fbfdfb}.progress{height:18px;border-radius:999px;background:#e5efdf;overflow:hidden;border:1px solid #d7e8d0}.progress span{display:block;height:100%;background:linear-gradient(90deg,#41ad6c,#ffd05d);border-radius:999px}.milestone{padding:13px 14px;border-radius:18px;background:#fbf7e8;border:1px solid #f1dfab;margin:10px 0}.milestone.done{background:#edfced;border-color:#ccefcf}.milestone-row{display:grid;grid-template-columns:1fr auto;gap:12px;align-items:center}.copybox{margin-top:16px}.copybox input{font-size:.92rem}.mobile-entry-list{display:none}.child-entry-card{background:#fbfdfb;border:1px solid var(--line);border-radius:20px;padding:16px;margin:12px 0}.factor-chips{display:flex;gap:8px;flex-wrap:wrap;margin:8px 0 12px}.chip-check{display:inline-flex;align-items:center;gap:8px;margin:0;background:#f3faf5;border:1px solid #dcefe2;border-radius:999px;padding:9px 12px}.chip-check input{width:auto;accent-color:var(--brand)}.danger-zone{border-color:#ffd0cc;background:#fffafa}.team-badge{font-size:2rem;font-weight:1000;padding:20px;border-radius:24px;background:#f3faf5;text-align:center}.public-hero .score-big{font-size:6rem}.display-mode{background:#102117;color:#fff}.display-mode .wrap{width:min(1400px,96vw)}.display-mode .hero-card,.display-mode .card{background:rgba(255,255,255,.95);color:#203128}.display-mode .hero h1{font-size:clamp(3rem,8vw,7rem)}.display-mode .lead{font-size:1.6rem}.display-mode .score-item,.display-mode .milestone{font-size:1.25rem}.display-mode .footer,.display-mode .nav{display:none}@media(max-width:860px){.hero,.grid,.features{grid-template-columns:1fr}.grid3{grid-template-columns:1fr}.nav{align-items:flex-start;flex-direction:column}.hero-card,.card,.auth-card,.feature{padding:20px}.table-wrap{display:none}.mobile-entry-list{display:block}.row{align-items:stretch}.row>*{flex:1 1 auto}.hero h1{font-size:2.35rem}.score-big{font-size:3rem}}@media(max-width:520px){.wrap{width:min(95vw,520px);padding-top:18px}.nav-links{width:100%}.nav-links .btn,.nav-links a{flex:1}.btn{width:100%}.hero-card,.card,.auth-card,.feature{border-radius:20px}.tabs .btn{width:auto}.milestone-row{grid-template-columns:1fr}.score-item{grid-template-columns:auto 1fr}.score-item>b:last-child{grid-column:2}}
.dashboard-list{display:flex;flex-direction:column;gap:14px}.dash-item{display:flex;justify-content:space-between;gap:18px;align-items:center;padding:16px;border:1px solid rgba(15,23,42,.10);border-radius:20px;background:rgba(255,255,255,.72)}.dash-actions{display:flex;gap:8px;flex-wrap:wrap;justify-content:flex-end}.team-badge{display:inline-flex;align-items:center;gap:8px;padding:12px 16px;border-radius:999px;background:#ecfdf5;font-weight:800}.center{text-align:center}.narrow{max-width:780px}.wide{width:100%;justify-content:center}@media(max-width:760px){.dash-item{display:block}.dash-actions{justify-content:flex-start;margin-top:12px}.nav-links{gap:8px}.nav-links a{font-size:14px}}

.stats-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;margin:18px 0}.mini-stat{display:flex;flex-direction:column;gap:4px;text-align:center}.mini-stat b{font-size:2.1rem;color:var(--brand)}.mini-stat span{color:var(--muted);font-weight:800}.factor-stat{display:grid;gap:8px;padding:13px 0;border-bottom:1px solid var(--line)}.factor-stat:last-child{border-bottom:0}.bar-chart{display:grid;gap:12px}.bar-row{display:grid;grid-template-columns:90px 1fr 60px;gap:12px;align-items:center}.bar{height:22px;border-radius:999px;background:#e5efdf;overflow:hidden;border:1px solid #d7e8d0}.bar span{display:block;height:100%;background:linear-gradient(90deg,#41ad6c,#ffd05d);border-radius:999px}.table-wrap.always{display:block}.score-item:hover{transform:translateY(-1px);text-decoration:none}@media(max-width:860px){.stats-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.bar-row{grid-template-columns:72px 1fr 48px}}@media(max-width:520px){.stats-grid{grid-template-columns:1fr}.mini-stat{text-align:left}.bar-row{grid-template-columns:1fr}.bar-row b{text-align:right}}
/* v6 product hardening */
.stat-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(145px,1fr));gap:14px;margin:24px 0}.stat{background:#fff;border:1px solid rgba(30,41,59,.08);border-radius:20px;padding:18px;box-shadow:0 12px 30px rgba(15,23,42,.06)}.stat b{display:block;font-size:2rem;line-height:1;color:#14532d}.stat span{color:#64748b;font-size:.9rem}.table-wrap{overflow:auto}table{width:100%;border-collapse:separate;border-spacing:0 8px}th{text-align:left;color:#64748b;font-size:.85rem;font-weight:700;padding:6px 10px}td{background:#f8fafc;padding:10px;border-top:1px solid #e2e8f0;border-bottom:1px solid #e2e8f0}td:first-child{border-left:1px solid #e2e8f0;border-radius:12px 0 0 12px}td:last-child{border-right:1px solid #e2e8f0;border-radius:0 12px 12px 0}.btn.danger{background:#dc2626;color:#fff}.btn.small{padding:8px 10px;font-size:.85rem}.inline-form{display:flex;gap:10px;align-items:end;flex-wrap:wrap}.inline-form input{max-width:340px}.checklist{display:grid;gap:10px}.checkrow{display:flex;gap:10px;align-items:center;padding:10px 12px;border-radius:14px;background:#f8fafc}.checkrow.ok{border:1px solid #bbf7d0}.checkrow.bad{border:1px solid #fecaca;background:#fff7f7}.center{text-align:center}.footer a{color:inherit}


/* v7 PWA, mobile quick entry and share tools */
.today-card { border: 1px solid rgba(47,125,70,.18); }
.today-list { display:grid; gap:12px; }
.today-item { display:flex; justify-content:space-between; align-items:center; gap:12px; padding:12px; border-radius:18px; background:rgba(47,125,70,.06); }
.qr-share { margin-top:16px; display:flex; align-items:center; gap:14px; padding:12px; border-radius:20px; background:#fff; border:1px solid rgba(47,125,70,.14); }
.qr-share img { width:104px; height:104px; border-radius:14px; background:#fff; }
.mini-share { margin-top:14px; display:inline-flex; padding:8px 12px; border-radius:999px; background:rgba(255,255,255,.7); border:1px solid rgba(47,125,70,.16); font-weight:700; }
.stepper { display:flex; align-items:center; gap:8px; }
.stepper .special { max-width:90px; text-align:center; }
.step-btn { width:42px; height:42px; border:0; border-radius:14px; font-size:1.3rem; font-weight:900; background:#e7f6dd; color:#215f35; box-shadow:0 6px 16px rgba(21,63,36,.10); }
.step-btn:active { transform:translateY(1px) scale(.98); }
.install-pwa-btn[hidden] { display:none!important; }
@media (max-width: 760px) {
  .today-item { align-items:stretch; flex-direction:column; }
  .today-item .btn { width:100%; text-align:center; }
  .qr-share { flex-direction:column; text-align:center; }
  .qr-share img { width:180px; height:180px; }
  .chip-check span { min-height:44px; display:flex; align-items:center; }
  .child-entry-card { scroll-margin-top:16px; }
  .tabs { max-height:168px; overflow:auto; padding-bottom:6px; }
  input.check, .check { width:28px; height:28px; }
}
.display-mode .public-hero h1 { font-size: clamp(3rem, 8vw, 7rem); }
.display-mode .progress { height:30px; }
.display-mode .score-item { font-size:1.25rem; padding:18px; }
.team-badge { display:inline-flex; font-size:1.25rem; font-weight:900; background:#fff2bc; padding:12px 16px; border-radius:20px; }

/* v9 Offline-Synchronisation */
.sync-status{margin:12px 0 18px;padding:12px 14px;border-radius:16px;background:#edf7ef;border:1px solid #cfe8d4;color:#245a32;font-weight:700}
.sync-status.offline{background:#fff0f0;border-color:#ffcaca;color:#8b1d1d}
.sync-status.pending{background:#fff8e6;border-color:#f5d77a;color:#775200}
.sync-status.syncing{background:#eef4ff;border-color:#c8d8ff;color:#234a89}
.sync-status.ok{background:#edf7ef;border-color:#cfe8d4;color:#245a32}
@media(max-width:760px){#sync-now-btn,#offline-save-btn{width:100%;justify-content:center}.sync-status{position:sticky;top:8px;z-index:5;box-shadow:0 8px 18px rgba(0,0,0,.08)}}

/* v10 language switcher */
.language-switcher{display:inline-flex;align-items:center;margin:0}
.language-switcher select{border:1px solid rgba(47,125,70,.22);border-radius:999px;padding:9px 12px;background:#fff;font-weight:800;color:#26583a;box-shadow:0 8px 22px rgba(31,79,51,.08)}
.nav .language-switcher select{max-width:130px}
/* v11 team roles */
.inline-form{display:inline-flex;gap:.4rem;align-items:center;margin:0}.inline-form select{min-width:130px}.team-role-badge{display:inline-flex;align-items:center;gap:.3rem;border-radius:999px;background:#eef8f0;color:#225d34;padding:.25rem .6rem;font-weight:700;font-size:.9rem}.invite-card{border:1px dashed rgba(47,125,70,.35);background:linear-gradient(135deg,#f7fff9,#fffdf4)}

/* v12 Vorlagen & Saison-Assistent */
.template-card{display:flex;flex-direction:column;gap:10px;align-items:flex-start}
.template-card .wide{margin-top:auto;width:100%;text-align:center}
.season-options{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:12px;margin:14px 0}
.season-option{border:1px solid rgba(47,125,70,.16);border-radius:18px;padding:14px;background:rgba(255,255,255,.72)}

/* ===== v13 Gamification ===== */
.gamified-hero{align-items:stretch}.big-progress{height:18px;border-radius:999px;overflow:hidden;background:#e6f3ea}.big-progress span{display:block;height:100%;background:linear-gradient(90deg,#58c878,#ffd166,#f77f00);border-radius:999px;transition:width .5s ease}.level-card{text-align:center;display:flex;flex-direction:column;align-items:center;justify-content:center;position:relative;overflow:hidden}.level-card:before{content:"";position:absolute;inset:-40%;background:radial-gradient(circle,#fff9 0,#fff0 55%);transform:rotate(12deg)}.level-card>*{position:relative}.level-ring{--p:calc(var(--level-progress)*1%);width:128px;height:128px;border-radius:50%;display:grid;place-items:center;background:conic-gradient(#ffd166 var(--p),#dceee2 0);box-shadow:0 20px 45px #1232;margin-bottom:12px}.level-ring:after{content:"";position:absolute;width:92px;height:92px;border-radius:50%;background:#fff}.level-ring span{position:relative;z-index:1;font-size:42px}.section-title{display:flex;justify-content:space-between;gap:16px;align-items:center;flex-wrap:wrap}.badge-board{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:14px}.achievement{border:1px solid #dbe9df;border-radius:22px;padding:16px;min-height:150px;display:flex;flex-direction:column;gap:7px;background:linear-gradient(145deg,#fff,#f8fbf8);box-shadow:0 12px 28px #1231}.achievement.unlocked{border-color:#ffd166;background:linear-gradient(145deg,#fffdf2,#f5fff7)}.achievement.locked{opacity:.72;filter:saturate(.75)}.ach-emoji{font-size:34px}.mini-progress{height:8px;border-radius:999px;background:#e4eee7;overflow:hidden;margin-top:auto}.mini-progress span{display:block;height:100%;border-radius:999px;background:#58c878}.gamified-score .rank{font-size:20px}.top-rank{background:#fff2c2!important;color:#6b4b00!important}.celebration-hero{min-height:78vh;display:grid;place-items:center;position:relative;overflow:hidden}.celebration-card{text-align:center;max-width:760px;padding:46px;border-radius:36px;background:linear-gradient(145deg,#fff,#fff8df);box-shadow:0 30px 90px #1233;position:relative;z-index:1;border:1px solid #ffe49a}.celebrate-emoji{font-size:88px;animation:bounce .9s ease infinite alternate}.celebrate-page{background:radial-gradient(circle at 20% 10%,#fff0c7 0,#fff0 30%),radial-gradient(circle at 80% 30%,#d8f8e1 0,#fff0 30%),#f8fbf8}.confetti,.confetti:before,.confetti:after{position:absolute;inset:0;content:"";background-image:radial-gradient(circle,#f77f00 0 5px,transparent 6px),radial-gradient(circle,#58c878 0 4px,transparent 5px),radial-gradient(circle,#6c63ff 0 4px,transparent 5px),radial-gradient(circle,#ffd166 0 6px,transparent 7px);background-size:120px 140px,160px 170px,190px 150px,220px 210px;animation:confetti 7s linear infinite;opacity:.75}.confetti:before{transform:translateY(-25%);animation-duration:9s}.confetti:after{transform:translateY(-50%);animation-duration:11s}@keyframes confetti{to{background-position:0 900px,0 820px,0 760px,0 880px}}@keyframes bounce{from{transform:translateY(0) rotate(-4deg)}to{transform:translateY(-10px) rotate(4deg)}}.display-mode .wrap{max-width:1500px}.display-mode .hero-card h1{font-size:clamp(48px,7vw,110px)}.display-mode .lead{font-size:clamp(22px,3vw,42px)}.display-mode .score-item{font-size:clamp(20px,2vw,34px);padding:22px}.display-mode .achievement{font-size:1.25rem}.display-mode .level-ring{width:180px;height:180px}.display-mode .level-ring:after{width:132px;height:132px}.display-mode .level-ring span{font-size:60px}.team-badge{display:inline-flex;padding:10px 16px;border-radius:999px;background:#e6f3ea;font-weight:700}@media(max-width:760px){.level-ring{width:104px;height:104px}.level-ring:after{width:76px;height:76px}.level-ring span{font-size:34px}.celebration-card{padding:28px;border-radius:26px}.celebrate-emoji{font-size:64px}.badge-board{grid-template-columns:1fr 1fr}.achievement{min-height:135px;padding:13px}}
.mini-ach-list{display:flex;gap:6px;margin-top:6px;flex-wrap:wrap}.mini-ach{font-size:22px;display:inline-grid;place-items:center;width:32px;height:32px;border-radius:50%;background:#fff3c9}.mini-ach.muted{background:#eef3ef;filter:grayscale(1)}


/* v13.1 Final Polish */
:root{
  --jt-green:#2f7d46;
  --jt-green-dark:#205b34;
  --jt-mint:#eaf8ef;
  --jt-cream:#fff9ed;
  --jt-sand:#f7e8c7;
  --jt-text:#213328;
  --jt-muted:#637567;
  --jt-border:#dfe9df;
  --jt-danger:#b42318;
  --jt-warning:#ad6800;
  --jt-ok:#1f7a3f;
}
body{background:linear-gradient(180deg,#f6fff8 0%,#fffaf0 42%,#ffffff 100%);color:var(--jt-text)}
.nav{position:sticky;top:0;z-index:20;background:rgba(255,255,255,.88);backdrop-filter:blur(14px);border:1px solid rgba(223,233,223,.7);box-shadow:0 12px 34px rgba(31,89,50,.07)}
.logo-mark{display:inline-flex;align-items:center;justify-content:center;width:36px;height:36px;border-radius:14px;background:linear-gradient(135deg,#e6f7ec,#ffe9b8);box-shadow:inset 0 0 0 1px rgba(47,125,70,.12)}
.hero{align-items:stretch}.hero-card,.card,.feature,.auth-card{border:1px solid var(--jt-border);box-shadow:0 18px 50px rgba(31,89,50,.09)}
.hero-card{background:radial-gradient(circle at 15% 15%,#fff3cb 0,#fffdf5 34%,#eefaf2 100%)}
.btn{border-radius:999px;font-weight:800;box-shadow:0 8px 18px rgba(47,125,70,.16)}
.btn.secondary{box-shadow:none}.badge{border-radius:999px;background:#eefaf2;color:var(--jt-green-dark);font-weight:800}.notice{border-radius:18px;border:1px solid var(--jt-border)}
.notice.error{border-color:#ffd0ca;background:#fff1ef;color:var(--jt-danger)}.notice.warning{border-color:#ffe3a3;background:#fff8e6;color:var(--jt-warning)}.notice.ok,.success{border-color:#bfe8cc;background:#eefaf2;color:var(--jt-ok)}
input,select,textarea{border:1px solid var(--jt-border);border-radius:14px;background:#fff;transition:border-color .15s,box-shadow .15s}input:focus,select:focus,textarea:focus{outline:none;border-color:#72b983;box-shadow:0 0 0 4px rgba(47,125,70,.13)}
.footer{border-top:1px solid var(--jt-border);padding-top:18px;margin-top:34px}.legal-grid,.check-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:14px}.check-item{border:1px solid var(--jt-border);border-radius:18px;padding:16px;background:#fff}.check-item strong{display:block;margin-bottom:5px}.check-ok{border-color:#bfe8cc;background:#f2fbf5}.check-warn{border-color:#ffe3a3;background:#fffaf0}.check-bad{border-color:#ffd0ca;background:#fff4f2}.small-code{font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;background:#f5f7f5;border:1px solid var(--jt-border);border-radius:10px;padding:2px 6px}.mail-preview{white-space:pre-wrap;background:#f8fbf8;border:1px solid var(--jt-border);border-radius:18px;padding:16px;line-height:1.55}.final-list li{margin:.45rem 0}.legal-placeholder{border-left:5px solid #f0b429;background:#fff9e8;padding:14px 16px;border-radius:14px;margin:14px 0}.hero-mini{padding:28px;border-radius:26px;background:linear-gradient(135deg,#eaf8ef,#fff7df);border:1px solid var(--jt-border)}
@media(max-width:720px){.nav{position:static}.nav-links{gap:8px}.hero-card,.card,.feature,.auth-card{box-shadow:0 12px 30px rgba(31,89,50,.07)}.actions{gap:8px}.btn{width:100%;justify-content:center}.nav .btn{width:auto}}
