@font-face{font-family:EB Garamond;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/eb-garamond-latin-400-normal-BCNrxLz_.woff2)format("woff2"),url(/assets/eb-garamond-latin-400-normal-maQnHeKB.woff)format("woff")}@font-face{font-family:EB Garamond;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/eb-garamond-latin-500-normal-DehAIUv0.woff2)format("woff2"),url(/assets/eb-garamond-latin-500-normal-DZU8xF9o.woff)format("woff")}@font-face{font-family:EB Garamond;font-style:italic;font-display:swap;font-weight:400;src:url(/assets/eb-garamond-latin-400-italic-DSEbMgZu.woff2)format("woff2"),url(/assets/eb-garamond-latin-400-italic-CDFyLPXJ.woff)format("woff")}:root{--bg:#f4f1ed;--paper:#fff;--paper-edge:#e6e1da;--ink:#1a2630;--ink-soft:#3f4d58;--muted:#64768a;--line:#d9d3cb;--accent:#275d6f;--accent-ink:#fff;--gold:#4a8199;--ok:#2f6f5a;--bad:#a3443a;--shadow:0 1px 2px #1a263014, 0 8px 24px #1a263014;--serif:"EB Garamond", "Iowan Old Style", "Palatino Linotype", Georgia, serif;--sans:system-ui, -apple-system, "Segoe UI", Roboto, sans-serif;--radius:14px;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}@media (prefers-color-scheme:dark){:root:not([data-theme=light]){--bg:#0d1a22;--paper:#1a2630;--paper-edge:#24343f;--ink:#e6ecef;--ink-soft:#c2cdd4;--muted:#8ea3b6;--line:#2a3a46;--accent:#6fa8be;--accent-ink:#0d1a22;--gold:#4f8299;--ok:#7cc59c;--bad:#ec8b7d;--shadow:0 1px 2px #0000004d, 0 8px 24px #00000040;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}}:root[data-theme=dark]{--bg:#0d1a22;--paper:#1a2630;--paper-edge:#24343f;--ink:#e6ecef;--ink-soft:#c2cdd4;--muted:#8ea3b6;--line:#2a3a46;--accent:#6fa8be;--accent-ink:#0d1a22;--gold:#4f8299;--ok:#7cc59c;--bad:#ec8b7d;--shadow:0 1px 2px #0000004d, 0 8px 24px #00000040;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}*,:before,:after{box-sizing:border-box}html{-webkit-text-size-adjust:100%;-webkit-tap-highlight-color:transparent}body{background:var(--bg);color:var(--ink);font-family:var(--sans);margin:0;font-size:16px;line-height:1.5}a{color:var(--accent)}button{font:inherit;color:inherit}:focus-visible{outline:2px solid var(--gold);outline-offset:2px}.shell{max-width:560px;min-height:100dvh;padding:env(safe-area-inset-top) 0 env(safe-area-inset-bottom);flex-direction:column;margin:0 auto;display:flex}.header{align-items:center;gap:8px;padding:10px 12px 6px 16px;display:flex}.header-mark{color:var(--accent);display:inline-flex}.header-title{font-family:var(--serif);letter-spacing:.01em;flex:1;margin:0;font-size:1.6rem;font-weight:500}.header-nav{gap:2px;display:flex}.icon-btn{width:44px;height:44px;color:var(--ink-soft);cursor:pointer;background:0 0;border:0;border-radius:50%;justify-content:center;align-items:center;display:inline-flex}.icon-btn:hover{background:color-mix(in srgb, var(--ink) 6%, transparent)}.main{flex-direction:column;flex:1;padding:0 16px 16px;display:flex}.practice{flex-direction:column;flex:1;gap:14px;display:flex}.score-card{background:var(--paper);border:1px solid var(--paper-edge);border-radius:var(--radius);box-shadow:var(--shadow);margin:0;padding:12px 12px 8px}.score-caption{font-family:var(--serif);color:var(--muted);justify-content:center;gap:6px;font-size:.95rem;font-style:italic;display:flex}.score{color:var(--ink);justify-content:center;display:flex}.score svg{width:100%;height:auto;max-height:52dvh}.score-placeholder{min-height:260px;color:var(--muted);align-items:center}.reveal{text-align:center;animation:.35s ease-out fade-in}.reveal-title{font-family:var(--serif);margin:0;font-size:1.35rem;font-weight:500;line-height:1.25}.reveal-composer{font-family:var(--serif);color:var(--ink-soft);margin:2px 0 0;font-size:1.1rem;font-style:italic}.reveal-meta{color:var(--muted);margin:6px 0 0;font-size:.8rem}.badge,.notice{border:1px solid var(--gold);color:var(--gold);letter-spacing:.04em;text-transform:uppercase;border-radius:999px;margin:8px 0 0;padding:2px 10px;font-size:.75rem;display:inline-block}.notice{text-transform:none;letter-spacing:0;border-radius:10px;padding:10px 12px;font-size:.9rem;display:block}.controls{background:linear-gradient(to bottom, transparent, var(--bg) 18px);flex-direction:column;gap:12px;margin-top:auto;padding:12px 0 8px;display:flex;position:sticky;bottom:0}.prompt{text-align:center;font-family:var(--serif);color:var(--ink-soft);margin:0;font-size:1.1rem}.control-row{align-items:center;gap:10px;display:flex}.fork-btn{border:1.5px solid var(--gold);background:var(--paper);width:84px;height:84px;box-shadow:var(--shadow);cursor:pointer;border-radius:50%;flex-direction:column;flex:none;justify-content:center;align-items:center;transition:transform 80ms;display:flex}.fork-btn:active{transform:scale(.95)}.fork-btn-note{font-family:var(--serif);color:var(--accent);font-size:2rem;line-height:1}.fork-btn-hz{color:var(--muted);margin-top:2px;font-size:.72rem}.fork-btn-small{width:52px;height:52px}.fork-btn-small .fork-btn-note{font-size:1.4rem}.btn{cursor:pointer;border:1px solid #0000;border-radius:999px;justify-content:center;align-items:center;gap:8px;min-height:52px;padding:0 20px;font-size:1rem;font-weight:600;text-decoration:none;transition:transform 80ms,opacity .2s;display:inline-flex}.btn:active:not(:disabled){transform:scale(.98)}.btn:disabled{opacity:.5;cursor:default}.btn-grow{flex:1}.btn-primary{background:var(--accent);color:var(--accent-ink)}.btn-secondary{background:var(--paper);border-color:var(--line);color:var(--ink)}.btn-ghost{color:var(--ink-soft);background:0 0}.btn-danger{border-color:var(--bad);color:var(--bad);background:0 0;align-self:flex-start}.voices{flex-direction:column;gap:8px;margin:0;padding:0;list-style:none;display:flex}.voice{background:var(--paper);border:1px solid var(--paper-edge);border-radius:12px;align-items:center;gap:8px;padding:4px 6px 4px 4px;transition:border-color .2s,box-shadow .2s;display:flex}.voice.is-sounding{border-color:var(--gold);box-shadow:0 0 0 2px color-mix(in srgb, var(--gold) 35%, transparent)}.voice-play{cursor:pointer;text-align:left;min-height:48px;color:var(--ink-soft);background:0 0;border:0;border-radius:10px;flex:1;align-items:center;gap:10px;padding:0 10px;display:flex}.voice-label{color:var(--ink);flex:1;font-weight:500}.voice-note{font-family:var(--serif);color:var(--accent);text-align:right;min-width:3ch;font-size:1.35rem}.rating{gap:6px;display:flex}.rate{border:1px solid var(--line);width:46px;height:46px;color:var(--muted);cursor:pointer;background:0 0;border-radius:50%;justify-content:center;align-items:center;display:inline-flex}.rate-ok.is-on{background:var(--ok);border-color:var(--ok);color:var(--paper)}.rate-bad.is-on{background:var(--bad);border-color:var(--bad);color:var(--paper)}.report-link{min-height:44px;color:var(--muted);align-self:center;align-items:center;gap:6px;font-size:.85rem;text-decoration:none;display:inline-flex}.empty{text-align:center;font-family:var(--serif);flex-direction:column;align-items:center;gap:16px;margin:auto 0;font-size:1.15rem;display:flex}.page{flex-direction:column;gap:12px;display:flex}.section-title{font-family:var(--serif);border-bottom:1px solid var(--line);margin:16px 0 0;padding-bottom:4px;font-size:1.25rem;font-weight:500}.muted{color:var(--muted)}.small{margin:0;font-size:.85rem}.field{border:0;min-width:0;margin:0;padding:0}.field-label{color:var(--ink-soft);margin-bottom:6px;padding:0;font-size:.9rem}.segmented{flex-wrap:wrap;gap:6px;display:flex}.segment{border:1px solid var(--line);background:var(--paper);cursor:pointer;border-radius:999px;min-height:44px;padding:0 14px}.segment.is-on{background:var(--accent);border-color:var(--accent);color:var(--accent-ink)}.segment:disabled{opacity:.4;cursor:default}.settings-footer{text-align:center;margin-top:24px}.stat-hero{flex-direction:column;align-items:center;padding:20px 0 8px;display:flex}.stat-hero-value{font-family:var(--serif);color:var(--accent);font-size:3.4rem;line-height:1}.stat-hero-label{color:var(--muted);margin-top:6px;font-size:.9rem}.range-bars{flex-direction:column;gap:10px;margin:0;padding:0;list-style:none;display:flex}.range-bar{grid-template-columns:4.5rem 1fr 3.5rem;align-items:center;gap:10px;display:grid}.range-bar-track{background:var(--paper-edge);border-radius:999px;height:10px;overflow:hidden}.range-bar-fill{background:var(--accent);border-radius:999px;height:100%;display:block}.range-bar-value{text-align:right;font-variant-numeric:tabular-nums}.trend{background:var(--paper);border:1px solid var(--paper-edge);border-radius:var(--radius);margin:0;padding:10px}.trend svg{width:100%;height:auto;display:block}.trend-grid{stroke:var(--line);stroke-width:1px}.trend-line{fill:none;stroke:var(--accent);stroke-width:2px;stroke-linejoin:round;stroke-linecap:round}.trend-dot{fill:var(--accent)}.trend-axis{color:var(--muted);justify-content:space-between;font-size:.75rem;display:flex}.stat-facts{grid-template-columns:1fr 1fr;gap:10px;margin:8px 0;display:grid}.stat-facts div{background:var(--paper);border:1px solid var(--paper-edge);border-radius:12px;padding:10px 12px}.stat-facts dt{color:var(--muted);font-size:.8rem}.stat-facts dd{font-family:var(--serif);margin:0;font-size:1.6rem}.source-list{flex-direction:column;gap:10px;margin:0;padding:0;list-style:none;display:flex}.source-title{font-family:var(--serif);font-size:1.05rem;display:block}.source-meta{color:var(--muted);font-size:.8rem;display:block}.impressum{font-style:normal}.intro-backdrop{z-index:10;background:#0d1a2280;justify-content:center;align-items:flex-end;padding:16px;animation:.2s ease-out fade-in;display:flex;position:fixed;inset:0}.intro{background:var(--paper);width:100%;max-width:480px;box-shadow:var(--shadow);padding:24px 20px calc(16px + env(safe-area-inset-bottom));text-align:center;border-radius:20px;flex-direction:column;align-items:center;gap:10px;display:flex}.intro:focus{outline:none}.intro-mark{color:var(--accent)}.intro-title{font-family:var(--serif);margin:0;font-size:1.6rem;font-weight:500}.intro-text{color:var(--ink-soft);min-height:6.5em;margin:0}.intro-dots{gap:6px;margin:4px 0 8px;display:flex}.intro-dot{background:var(--line);border-radius:50%;width:7px;height:7px}.intro-dot.is-on{background:var(--accent)}.intro .control-row{width:100%}@keyframes fade-in{0%{opacity:0;transform:translateY(4px)}}@media (prefers-reduced-motion:reduce){*{transition:none!important;animation:none!important}}.intro .field{width:100%}.intro .field-label{text-align:center;width:100%}.intro .segmented{justify-content:center}
