.gleis{fill:none;stroke:#f5f5f01a;stroke-width:2px;stroke-linecap:round}.gleis-akzent{stroke:var(--accent);stroke-width:2px;opacity:.38;stroke-dasharray:220 2600;animation:14s linear infinite gleis-puls}@keyframes gleis-puls{0%{stroke-dashoffset:2820px}to{stroke-dashoffset:0}}.signal{fill:var(--accent);opacity:.4;animation:3.4s ease-in-out infinite signal-blinken}.signal-spaeter{animation-delay:1.7s}@keyframes signal-blinken{0%,to{opacity:.14}50%{opacity:.5}}.auswahl{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);overflow:hidden}.auswahl-laden{color:var(--text-dim);align-items:center;gap:12px;padding:20px 18px;display:flex}.auswahl-zeile{cursor:pointer;min-height:60px;color:var(--text-dim);-webkit-tap-highlight-color:transparent;align-items:center;padding:12px 18px 12px 0;transition:background-color .15s,color .15s;display:flex;position:relative}.auswahl-zeile:active{background:#f5f5f00f}.auswahl-zeile+.auswahl-zeile:before{content:"";background:var(--border);height:1px;position:absolute;top:0;left:52px;right:0}.auswahl-zeile input[type=radio]{opacity:0;pointer-events:none;width:1px;height:1px;margin:0;position:absolute}.auswahl-haken{width:52px;color:var(--accent);flex:none;place-items:center;display:grid}.auswahl-haken svg{opacity:0;width:21px;height:21px;transition:opacity .15s,transform .15s;transform:scale(.7)}.auswahl-zeile.gewaehlt{color:var(--text)}.auswahl-zeile.gewaehlt .auswahl-haken svg{opacity:1;transform:scale(1)}.auswahl-text{min-width:0;font-size:1rem;line-height:1.35}.auswahl-text small{color:var(--text-leise);margin-top:2px;font-size:.8rem;font-weight:400;display:block}.auswahl-zeile:has(input:focus-visible){box-shadow:inset 0 0 0 2px var(--accent);background:#f1ee0f17}.seite{z-index:1;flex-direction:column;min-height:100dvh;display:flex;position:relative}.mitte{width:100%;max-width:460px;margin:0 auto;padding:0 18px}.mitte-weit{width:100%;max-width:1100px;margin:0 auto;padding:0 18px}.formularseite{flex-direction:column;flex:1;justify-content:center;padding:40px 0 56px;display:flex}.marke{letter-spacing:.02em;text-transform:uppercase;color:var(--text);align-items:baseline;gap:3px;font-size:1.15rem;font-weight:900;text-decoration:none;display:flex}.marke .punkt{color:var(--accent)}h1{letter-spacing:-.01em;font-size:clamp(1.5rem,6vw,1.9rem);font-weight:900;line-height:1.15}h2{font-size:1.15rem;font-weight:800;line-height:1.25}.hut{letter-spacing:.16em;text-transform:uppercase;color:var(--accent);font-size:.72rem;font-weight:700}.lead{color:var(--text-dim);font-size:1rem}.klein{color:var(--text-dim);font-size:.86rem}.leise{color:var(--text-leise);font-size:.8rem}.karte{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);padding:22px}.btn{border:2px solid var(--accent);min-height:52px;color:var(--text);cursor:pointer;-webkit-tap-highlight-color:transparent;background:0 0;border-radius:999px;justify-content:center;align-items:center;gap:10px;padding:12px 26px;font-family:inherit;font-size:1rem;font-weight:700;text-decoration:none;transition:transform .15s,background-color .2s,color .2s,box-shadow .2s;display:inline-flex}.btn:active{transform:translateY(1px)scale(.99)}.btn:disabled{opacity:.5;cursor:not-allowed;transform:none}.btn-primary{background:var(--accent);color:var(--accent-ink)}.btn-primary:hover:not(:disabled){box-shadow:var(--shadow-accent)}.btn-ghost{border-color:var(--border-input);color:var(--text)}.btn-ghost:hover:not(:disabled){border-color:var(--accent)}.btn-link{min-height:44px;font:inherit;color:var(--text-dim);text-underline-offset:3px;cursor:pointer;background:0 0;border:none;padding:6px 2px;font-size:.9rem;text-decoration:underline}.btn-link:hover{color:var(--text)}.btn-breit{width:100%}.btn-klein{white-space:nowrap;cursor:pointer;min-height:38px;color:var(--text);-webkit-tap-highlight-color:transparent;background:0 0;border:2px solid #0000;border-radius:999px;justify-content:center;align-items:center;padding:0 16px;font-family:inherit;font-size:.86rem;font-weight:700;line-height:1;text-decoration:none;transition:transform .15s,background-color .2s,color .2s,box-shadow .2s;display:inline-flex}.btn-klein:active{transform:translateY(1px)scale(.98)}.btn-klein-signal{background:var(--accent);border-color:var(--accent);color:var(--accent-ink)}.btn-klein-signal:hover{box-shadow:var(--shadow-accent)}.btn-klein-dezent{color:var(--text-dim);background:0 0;border-color:#f1ee0f8c}.btn-klein-dezent:hover{border-color:var(--accent);color:var(--text)}.feld{margin-bottom:18px}.feld>label:not(.kasten),.feldgruppe>legend,.feld-titel{letter-spacing:.04em;text-transform:uppercase;color:var(--text-dim);margin-bottom:7px;font-size:.82rem;font-weight:700;display:block}.feld input[type=text],.feld input[type=email],.feld input[type=tel],.feld input[type=password],.feld select,.feld textarea{background:var(--surface);border:1px solid var(--border-input);border-radius:var(--radius-s);width:100%;min-height:52px;color:var(--text);padding:13px 15px;font-family:inherit;font-size:1rem}.feld select{appearance:none;background-image:linear-gradient(45deg, transparent 50%, var(--text-dim) 50%), linear-gradient(135deg, var(--text-dim) 50%, transparent 50%);background-position:calc(100% - 20px) calc(50% + 2px),calc(100% - 14px) calc(50% + 2px);background-repeat:no-repeat;background-size:6px 6px,6px 6px;padding-right:42px}.feld textarea{resize:vertical;min-height:96px}.feld input::placeholder,.feld textarea::placeholder{color:var(--text-leise)}.feld input:focus,.feld select:focus,.feld textarea:focus{border-color:var(--accent);outline:none;box-shadow:0 0 0 3px #f1ee0f29}.feld-hinweis{color:var(--text-leise);margin-top:6px;font-size:.8rem}.kasten{border:1px solid var(--border);border-radius:var(--radius-s);cursor:pointer;min-height:48px;color:var(--text-dim);text-transform:none;letter-spacing:normal;-webkit-tap-highlight-color:transparent;background:#f5f5f008;align-items:flex-start;gap:14px;padding:12px 14px;font-size:.94rem;font-weight:400;line-height:1.45;transition:border-color .15s,background-color .15s;display:flex}.kasten:active{background:#f5f5f00f}.kasten:has(input:checked){color:var(--text);background:#f1ee0f0f;border-color:#f1ee0f73}.kasten:has(input:focus-visible){border-color:var(--accent);box-shadow:0 0 0 3px #f1ee0f29}.kasten input[type=checkbox]{width:22px;height:22px;accent-color:var(--accent);cursor:pointer;flex:none;margin-top:1px}.kasten>span{flex:1;min-width:0}.kasten strong{color:var(--text);font-weight:700}.meldung{border-radius:var(--radius-s);border:1px solid;margin-bottom:18px;padding:13px 15px;font-size:.92rem}.meldung-fehler{color:var(--fehler);background:#ff8f7a1a;border-color:#ff8f7a80}.meldung-info{border-color:var(--border-input);color:var(--text-dim);background:#f5f5f00d}.meldung-erfolg{color:var(--erfolg);background:#8ee27a17;border-color:#8ee27a80}.kopf{z-index:10;min-height:var(--kopf-hoehe);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-bottom:1px solid var(--border);background:#1a1a1aeb;justify-content:space-between;align-items:center;gap:12px;padding:9px 14px;display:flex;position:sticky;top:0}.kopf-nav{align-items:center;gap:8px;display:flex}@media (width<=380px){.kopf .marke span{font-size:.95rem}.kopf-nav{gap:6px}.kopf-nav .btn-klein{padding:0 12px;font-size:.82rem}}.laden{min-height:60dvh;color:var(--text-dim);justify-content:center;align-items:center;gap:12px;font-size:.94rem;display:flex}.spinner{border:2px solid var(--border-input);border-top-color:var(--accent);border-radius:50%;flex:none;width:20px;height:20px;animation:.7s linear infinite dreh}@keyframes dreh{to{transform:rotate(360deg)}}.schritte{align-items:center;gap:7px;margin-bottom:18px;display:flex}.schritte i{background:var(--border-input);border-radius:50%;width:7px;height:7px}.schritte i.jetzt{background:var(--accent);border-radius:999px;width:22px}.schritte i.fertig{background:#f1ee0f73}.netz{z-index:0;pointer-events:none;opacity:.5;width:100%;height:100%;position:fixed;inset:0}@media (width>=700px){.formularseite{padding:64px 0}.karte{padding:28px}}.wz-bereich{isolation:isolate;position:relative}.wz-bereich:after{content:"";z-index:2;pointer-events:none;-webkit-user-select:none;user-select:none;background-image:var(--wz-bild);opacity:var(--wz-deckkraft,.07);background-repeat:repeat;position:absolute;inset:0}@media (width<=640px){.wz-bereich:after{opacity:calc(var(--wz-deckkraft,.07) * .9)}}@media print{.wz-bereich:after{opacity:.22}}.wz-bereich .wz-inhalt{-webkit-user-select:none;user-select:none;-webkit-touch-callout:none}.eintrag{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-s);width:100%;min-height:68px;color:var(--text);text-align:left;font:inherit;cursor:pointer;-webkit-tap-highlight-color:transparent;align-items:center;gap:14px;padding:15px 16px;text-decoration:none;transition:border-color .15s,background-color .15s,transform .15s;display:flex}.eintrag:active{background:var(--surface-hoch);transform:translateY(1px)scale(.995)}.eintrag:hover{border-color:#f1ee0f66}.eintrag-still{cursor:default;opacity:.62}.eintrag-still:hover{border-color:var(--border)}.eintrag-still:active{background:var(--surface);transform:none}.eintrag-text{flex:1;min-width:0}.eintrag-titel{font-weight:700;line-height:1.3;display:block}.eintrag-meta{color:var(--text-leise);margin-top:3px;font-size:.8rem;line-height:1.35;display:block}.eintrag-pfeil{border-top:2px solid var(--text-leise);border-right:2px solid var(--text-leise);flex:none;width:9px;height:9px;transform:rotate(45deg)}.eintrag-marke{width:38px;height:38px;color:var(--accent);background:#f1ee0f1a;border:1px solid #f1ee0f47;border-radius:50%;flex:none;place-items:center;font-size:.8rem;font-weight:800;display:grid}.eintrag-marke-fertig{color:var(--erfolg);background:#8ee27a1f;border-color:#8ee27a66}.karte-link{color:inherit;-webkit-tap-highlight-color:transparent;text-decoration:none;transition:border-color .15s,background-color .15s,transform .15s;display:block}.karte-link:hover{border-color:#f1ee0f66}.karte-link:active{background:var(--surface-hoch);transform:translateY(1px)scale(.995)}.gruppe-titel{letter-spacing:.14em;text-transform:uppercase;color:var(--text-leise);margin:26px 0 10px;font-size:.74rem;font-weight:700}.gruppe-titel:first-of-type{margin-top:0}.fortschritt{background:#f5f5f021;border-radius:999px;height:6px;overflow:hidden}.fortschritt i{background:var(--accent);border-radius:999px;height:100%;transition:width .3s;display:block}.fortschritt-fein{height:4px}.zaehlzeile{color:var(--text-leise);font-variant-numeric:tabular-nums;justify-content:space-between;align-items:baseline;gap:12px;margin-bottom:8px;font-size:.78rem;display:flex}.zurueck{min-height:44px;font:inherit;color:var(--text-dim);cursor:pointer;background:0 0;border:none;align-items:center;gap:8px;padding:4px 2px;font-size:.86rem;text-decoration:none;display:inline-flex}.zurueck:hover{color:var(--text)}.zurueck:before{content:"";border-bottom:2px solid;border-left:2px solid;width:8px;height:8px;transform:rotate(45deg)}.spieler{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);padding:22px 18px 18px}.spieler-leiste{--anteil:0;appearance:none;cursor:pointer;background:0 0;width:100%;height:34px;margin:4px 0 0;display:block}.spieler-leiste::-webkit-slider-runnable-track{background:linear-gradient(to right, var(--accent) calc(var(--anteil) * 100%), #f5f5f029 0);border-radius:999px;height:6px}.spieler-leiste::-webkit-slider-thumb{appearance:none;background:var(--accent);border:none;border-radius:50%;width:20px;height:20px;margin-top:-7px}.spieler-leiste::-moz-range-track{background:#f5f5f029;border-radius:999px;height:6px}.spieler-leiste::-moz-range-progress{background:var(--accent);border-radius:999px;height:6px}.spieler-leiste::-moz-range-thumb{background:var(--accent);border:none;border-radius:50%;width:20px;height:20px}.spieler-leiste:focus-visible::-webkit-slider-thumb{box-shadow:0 0 0 5px #f1ee0f47}.spieler-leiste:focus-visible::-moz-range-thumb{box-shadow:0 0 0 5px #f1ee0f47}.spieler-leiste:focus{outline:none}.spieler-zeit{color:var(--text-leise);font-variant-numeric:tabular-nums;justify-content:space-between;font-size:.78rem;display:flex}.spieler-knoepfe{justify-content:center;align-items:center;gap:22px;margin:18px 0 6px;display:flex}.spieler-play{background:var(--accent);width:74px;height:74px;color:var(--accent-ink);cursor:pointer;-webkit-tap-highlight-color:transparent;border:none;border-radius:50%;flex:none;place-items:center;transition:transform .15s,box-shadow .2s;display:grid}.spieler-play:hover:not(:disabled){box-shadow:var(--shadow-accent)}.spieler-play:active{transform:scale(.95)}.spieler-play:disabled{opacity:.45;cursor:not-allowed}.spieler-play svg{fill:currentColor;width:30px;height:30px}.spieler-sprung{border:2px solid var(--border-input);width:56px;height:56px;color:var(--text);font:inherit;font-variant-numeric:tabular-nums;cursor:pointer;-webkit-tap-highlight-color:transparent;background:0 0;border-radius:50%;flex:none;place-items:center;font-size:.82rem;font-weight:800;transition:border-color .15s,transform .15s;display:grid}.spieler-sprung:hover:not(:disabled){border-color:var(--accent)}.spieler-sprung:active{transform:scale(.95)}.spieler-sprung:disabled{opacity:.45;cursor:not-allowed}.tempo{justify-content:center;gap:8px;margin-top:4px;display:flex}.tempo button{border:1px solid var(--border-input);min-height:40px;color:var(--text-dim);font:inherit;cursor:pointer;-webkit-tap-highlight-color:transparent;background:0 0;border-radius:999px;padding:0 15px;font-size:.84rem;font-weight:700;transition:border-color .15s,color .15s,background-color .15s}.tempo button.jetzt{border-color:var(--accent);color:var(--text);background:#f1ee0f1f}.lernkarte{perspective:1400px;cursor:pointer;-webkit-tap-highlight-color:transparent;background:0 0;border:none;width:100%;padding:0;display:block}.lernkarte-innen{min-height:44vh;transform-style:preserve-3d;transition:transform .5s cubic-bezier(.2,.7,.3,1);display:grid}.lernkarte.gedreht .lernkarte-innen{transform:rotateY(180deg)}.lernkarte-seite{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);backface-visibility:hidden;text-align:center;flex-direction:column;grid-area:1/1;justify-content:center;align-items:center;gap:14px;padding:30px 24px;display:flex}.lernkarte-rueck{background:var(--surface-hoch);border-color:#f1ee0f3d;transform:rotateY(180deg)}.lernkarte-hut{letter-spacing:.16em;text-transform:uppercase;color:var(--text-leise);font-size:.7rem;font-weight:700}.lernkarte-text{color:var(--text);font-size:1.22rem;font-weight:700;line-height:1.4}.lernkarte-rueck .lernkarte-text{font-size:1.05rem;font-weight:500;line-height:1.55}.lernkarte-wink{color:var(--text-leise);margin-top:4px;font-size:.78rem}.karten-urteil{grid-template-columns:1fr 1fr;gap:10px;margin-top:16px;display:grid}.karten-urteil .btn{padding:12px 14px}.stand-raster{grid-template-columns:repeat(3,1fr);gap:10px;margin:18px 0 22px;display:grid}.stand-kachel{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-s);text-align:center;padding:14px 10px}.stand-kachel b{font-variant-numeric:tabular-nums;font-size:1.5rem;font-weight:900;line-height:1.1;display:block}.stand-kachel span{letter-spacing:.08em;text-transform:uppercase;color:var(--text-leise);margin-top:2px;font-size:.72rem;display:block}.stand-gelernt b{color:var(--erfolg)}.stand-schwierig b{color:var(--fehler)}.stern{width:44px;height:44px;color:var(--text-leise);cursor:pointer;-webkit-tap-highlight-color:transparent;background:0 0;border:none;border-radius:50%;flex:none;place-items:center;padding:0;transition:color .15s,transform .15s;display:grid}.stern:hover{color:var(--text-dim)}.stern:active{transform:scale(.9)}.stern.an{color:var(--accent)}.stern svg{stroke:currentColor;stroke-width:1.8px;stroke-linejoin:round;fill:none;width:23px;height:23px}.stern.an svg{fill:currentColor}.stat-balken{background:#f5f5f01a;border-radius:999px;height:8px;margin-top:8px;display:flex;overflow:hidden}.stat-balken i{height:100%;display:block}.stat-balken .gut{background:var(--erfolg)}.stat-balken .schlecht{background:var(--fehler)}.stat-zeile{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-s);align-items:flex-start;gap:12px;padding:14px 16px;display:flex}.stat-zeile-text{flex:1;min-width:0}.stat-zeile-titel{font-weight:700;line-height:1.35;display:block}.stat-zeile-zahlen{color:var(--text-leise);font-variant-numeric:tabular-nums;margin-top:3px;font-size:.8rem;display:block}.sortierung{flex-wrap:wrap;gap:8px;margin-bottom:16px;display:flex}.sortierung button{border:1px solid var(--border-input);min-height:40px;color:var(--text-dim);font:inherit;cursor:pointer;-webkit-tap-highlight-color:transparent;background:0 0;border-radius:999px;padding:0 14px;font-size:.84rem;font-weight:700;transition:border-color .15s,color .15s,background-color .15s}.sortierung button.jetzt{border-color:var(--accent);color:var(--text);background:#f1ee0f1f}.quiz-frage{margin:14px 0 16px;font-size:1.12rem;font-weight:700;line-height:1.4}.quiz-optionen{gap:10px;display:grid}.quiz-option{background:var(--surface);border:1px solid var(--border-input);border-radius:var(--radius-s);min-height:56px;color:var(--text-dim);cursor:pointer;-webkit-tap-highlight-color:transparent;align-items:flex-start;gap:13px;padding:15px 16px;font-size:.97rem;line-height:1.45;transition:border-color .15s,background-color .15s,color .15s;display:flex;position:relative}.quiz-option input{opacity:0;pointer-events:none;width:1px;height:1px;position:absolute}.quiz-option:active{background:var(--surface-hoch)}.quiz-option:has(input:focus-visible){outline:3px solid var(--accent);outline-offset:2px}.quiz-haken{border:2px solid var(--border-input);color:#0000;border-radius:50%;flex:none;place-items:center;width:24px;height:24px;margin-top:1px;display:grid}.quiz-option-multi .quiz-haken{border-radius:7px}.quiz-haken svg{stroke:currentColor;fill:none;stroke-width:3px;stroke-linecap:round;stroke-linejoin:round;width:15px;height:15px}.quiz-option:where(:has(input:checked)){border-color:var(--accent);color:var(--text);background:#f1ee0f12}.quiz-option:where(:has(input:checked)) .quiz-haken{border-color:var(--accent);background:var(--accent);color:var(--accent-ink)}.quiz-option-richtig{border-color:var(--erfolg);color:var(--text);background:#8ee27a1a}.quiz-option-richtig .quiz-haken{border-color:var(--erfolg);background:var(--erfolg);color:#14320c}.quiz-option-daneben{border-color:var(--fehler);color:var(--text);background:#ff8f7a17}.quiz-option-daneben .quiz-haken{border-color:var(--fehler);background:var(--fehler);color:#3a120a}.quiz-option-daneben .quiz-haken svg{display:none}.quiz-option-daneben .quiz-haken:after{content:"✕";font-size:.76rem;font-weight:900;line-height:1}.quiz-option-fest{cursor:default}.quiz-option-fest:active{background:inherit}.quiz-aufloesung{border-radius:var(--radius-s);border:1px solid;margin-top:16px;padding:14px 16px;font-size:.92rem;line-height:1.55}.quiz-aufloesung-gut{background:#8ee27a14;border-color:#8ee27a73}.quiz-aufloesung-schlecht{background:#ff8f7a14;border-color:#ff8f7a73}.quiz-aufloesung b{margin-bottom:4px;display:block}.quiz-aufloesung-gut b{color:var(--erfolg)}.quiz-aufloesung-schlecht b{color:var(--fehler)}.quiz-fuss{padding:14px 18px calc(14px + env(safe-area-inset-bottom));background:linear-gradient(to top, var(--bg) 62%, #1a1a1a00);margin:20px -18px 0;position:sticky;bottom:0}.ergebnis-ring{background:conic-gradient(var(--accent) calc(var(--anteil) * 360deg), #f5f5f01f 0);border-radius:50%;place-items:center;width:148px;height:148px;margin:6px auto 18px;display:grid}.ergebnis-ring>span{background:var(--bg);font-variant-numeric:tabular-nums;border-radius:50%;place-items:center;width:118px;height:118px;font-size:1.9rem;font-weight:900;display:grid}.ergebnis-liste{gap:8px;margin-top:18px;display:grid}.ergebnis-zeile{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-s);color:var(--text-dim);align-items:flex-start;gap:11px;padding:12px 14px;font-size:.9rem;line-height:1.45;display:flex}.ergebnis-zeichen{border-radius:50%;flex:none;place-items:center;width:20px;height:20px;margin-top:1px;font-size:.72rem;font-weight:900;display:grid}.ergebnis-gut .ergebnis-zeichen{color:var(--erfolg);background:#8ee27a2e}.ergebnis-schlecht .ergebnis-zeichen{color:var(--fehler);background:#ff8f7a2e}@media (width>=700px){.lernkarte-innen{min-height:340px}.quiz-fuss{background:0 0;margin:22px 0 0;padding:0;position:static}}
