:root{--ink:#202925;--muted:#69736e;--paper:#fffdf8;--cream:#f2eee4;--green:#234b3d;--green2:#477061;--gold:#d7a33f;--line:#d8ddd9;--shadow:0 14px 36px rgba(29,55,46,.11);--radius:22px;--font-scale:1}*{box-sizing:border-box}html{font-size:calc(16px * var(--font-scale));background:var(--cream)}body{margin:0;color:var(--ink);font-family:system-ui,-apple-system,"Segoe UI",Roboto,Arial,sans-serif;background:radial-gradient(circle at 95% 0,#e2eee7 0,transparent 35%),var(--cream);min-height:100vh}.app-shell{width:min(100%,760px);min-height:100vh;margin:auto;background:rgba(255,253,248,.9);padding-bottom:94px}.topbar{position:sticky;top:0;z-index:5;display:flex;align-items:center;justify-content:space-between;padding:15px 18px 11px;background:rgba(255,253,248,.94);backdrop-filter:blur(12px);border-bottom:1px solid rgba(35,75,61,.08)}.brand{border:0;background:none;text-align:left;padding:0;color:inherit}.brand strong{display:block;font-family:Georgia,serif;font-size:1.35rem}.eyebrow{display:block;color:var(--green2);font-size:.68rem;font-weight:800;letter-spacing:.08em;text-transform:uppercase}.quiet-progress{border:1px solid #ccd8d1;background:#fff;color:var(--green);border-radius:999px;min-width:38px;height:38px;font-weight:850}main{padding:18px}.start-card{min-height:calc(100vh - 190px);display:flex;flex-direction:column;justify-content:center;padding:8px 4px 30px}.start-hero{display:flex;align-items:end;justify-content:space-between;gap:16px;max-width:620px;margin-bottom:12px}.start-icon{width:78px;height:78px;border-radius:22px;object-fit:cover;box-shadow:var(--shadow)}.jupp-start{width:132px;height:132px;object-fit:cover;object-position:top;border-radius:28px}.start-eyebrow,.stage-label{color:var(--green2);font-size:.75rem;font-weight:850;letter-spacing:.08em;text-transform:uppercase}.start-card h1{font:700 clamp(2.05rem,9vw,3.6rem)/1.04 Georgia,serif;margin:10px 0 18px;max-width:650px}.start-card>p{font-size:1.12rem;line-height:1.65;max-width:620px;color:#3c4742}.via-intro{max-width:620px;margin:12px 0 2px;padding:16px 18px;border:1px solid #d9cfac;border-radius:17px;background:#fff8e7;line-height:1.5}.via-intro strong{display:block}.via-intro details{margin-top:8px}.via-intro summary{cursor:pointer;color:var(--green);font-weight:850}.via-intro p{margin:10px 0 0;color:#3c4742}.start-actions{display:flex;flex-wrap:wrap;gap:10px;margin-top:18px}.start-note{font-size:.82rem!important;color:var(--muted)!important;margin-top:18px}.primary,.secondary,.text-button{border:0;border-radius:14px;padding:13px 16px;font:inherit;font-weight:850}.primary{background:var(--green);color:#fff}.secondary{background:#e8ece9;color:var(--ink)}.secondary[disabled],.primary[disabled]{opacity:.4}.text-button{background:transparent;color:var(--green);text-decoration:underline;text-underline-offset:4px}.card{background:var(--paper);border:1px solid rgba(35,75,61,.12);border-radius:var(--radius);padding:20px;box-shadow:var(--shadow)}.journey-peek h2,.card h2,.card h3,.page-title,.section-title{font-family:Georgia,serif}.journey-peek h2{font-size:2rem;margin:8px 0 12px}.journey-peek p{line-height:1.65}.journey-gallery{display:grid;grid-template-columns:repeat(2,1fr);gap:10px;margin:18px 0 24px}.journey-gallery figure{margin:0;position:relative;border-radius:14px;overflow:hidden;background:#e7ebe8}.journey-gallery img{display:block;width:100%;height:145px;object-fit:cover}.journey-gallery figcaption{position:absolute;left:7px;bottom:7px;padding:5px 8px;border-radius:999px;background:rgba(255,255,255,.9);font-size:.72rem;font-weight:850}.back-link{border:0;background:none;color:var(--green);padding:0 0 18px;font:inherit;font-weight:800}.orientation{display:flex;justify-content:space-between;align-items:end;gap:12px;margin:2px 2px 12px}.orientation span,.orientation small{font-size:.76rem;color:var(--muted)}.orientation strong{display:block;font-family:Georgia,serif;font-size:1.2rem;margin-top:2px}.route-map{padding:12px 4px 14px;margin-bottom:8px;opacity:.72}.route-map-full{margin:22px 0;opacity:1}.route-track{height:24px;position:relative;margin:0 8px}.route-track:before{content:"";position:absolute;left:0;right:0;top:11px;height:3px;border-radius:8px;background:#d8ddd9}.route-track>i{position:absolute;left:0;top:11px;height:3px;background:var(--gold);border-radius:8px}.walker{position:absolute;top:2px;transform:translateX(-50%);color:var(--green);font-size:1rem;z-index:2}.route-point{position:absolute;top:7px;width:11px;height:11px;border:2px solid #fff;border-radius:50%;background:#a7b5ae;transform:translateX(-50%);box-shadow:0 0 0 1px #a7b5ae}.route-point.city{background:var(--green);box-shadow:0 0 0 1px var(--green)}.route-point.nature{border-radius:3px;transform:translateX(-50%) rotate(45deg);background:var(--gold);box-shadow:0 0 0 1px var(--gold)}.route-labels{display:flex;justify-content:space-between;font-size:.7rem;color:var(--muted)}.lesson-card{position:relative}.jupp-lesson{float:right;width:104px;height:104px;margin:-4px -3px 9px 14px;border-radius:24px;object-fit:cover;object-position:top}.lesson-card h2{font-size:1.72rem;line-height:1.18;margin:8px 0 14px}.answer{font-size:1.08rem;line-height:1.62;margin:0 0 18px}.examples{display:grid;clear:both;gap:8px;margin:14px 0 18px}.example{padding:12px 14px;border-radius:14px;background:#eef4f0;font-weight:760}.focus{display:inline-block;padding:8px 12px;background:#fff3d9;border-radius:999px;color:#6c4d11;font-weight:850}.exercise{border-top:1px solid var(--line);padding-top:18px;margin-top:18px}.exercise h3{font-size:1.18rem;margin:0 0 12px}.choices{display:grid;gap:10px}.choice{width:100%;text-align:left;border:2px solid #dbe2de;background:#fff;border-radius:14px;padding:13px 14px;font:inherit;font-weight:750;color:var(--ink)}.choice.correct{background:#e8f5ed;border-color:#4b8d68}.choice.wrong{background:#fff0ef;border-color:#b95f55}.feedback{min-height:1.5em;margin:12px 0 0;font-weight:750}.actions{display:flex;gap:10px;margin-top:18px}.actions .primary{flex:1}.topic-jumps{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin-top:12px}.topic-jumps>:only-child{grid-column:1/-1}.lesson-links{display:flex;justify-content:center;flex-wrap:wrap;gap:12px 18px;margin-top:18px}.lesson-links button{border:0;background:none;color:var(--muted);font:inherit;font-size:.78rem;text-decoration:underline}.concept-box{margin:20px 0 4px;padding:18px;border-radius:18px;background:#f7f1df;border:1px solid #e2cf9d}.concept-label{display:inline-block;padding:5px 9px;border-radius:999px;background:var(--gold);font-size:.7rem;font-weight:900;text-transform:uppercase}.concept-box h3{font-size:1.45rem;margin:10px 0}.concept-row{padding:10px 0;border-top:1px solid rgba(108,77,17,.18)}.concept-row b{display:block;color:#6c4d11}.concept-row p{margin:3px 0 0;line-height:1.5}.concept-example{margin-top:10px;padding:11px 12px;background:#fffaf0;border-radius:12px;line-height:1.5}.compass{margin:0 0 12px;padding:12px;border:1px solid #d9e0dc;border-radius:16px;background:#f7faf8}.compass>span{display:block;font-size:.68rem;font-weight:850;color:var(--green2);text-transform:uppercase;letter-spacing:.07em;margin-bottom:9px}.compass>div{display:grid;grid-auto-flow:column;grid-auto-columns:minmax(0,1fr);gap:4px}.compass b{min-width:0;padding:7px 3px;border-radius:11px;color:#8b9691;font-size:.66rem;line-height:1.25;text-align:center;font-weight:700;-webkit-hyphens:auto;hyphens:auto;overflow-wrap:break-word}.compass b i{display:block;font-style:normal;font-size:1rem}.compass b.reached{color:var(--green)}.compass b.active{background:#e5efe9;color:var(--green);outline:1px solid #c5d7cd}.discovery-card{min-height:calc(100vh - 190px);display:flex;flex-direction:column;justify-content:center;align-items:center;text-align:center;padding:30px 18px}.skip-discovery{align-self:flex-end;border:0;background:none;color:var(--muted);font:inherit}.discovery-card>span{font-size:.75rem;color:var(--green2);font-weight:850;text-transform:uppercase}.discovery-card h2{font:700 2rem Georgia,serif;margin:8px 0}.discovery-photo{display:block;width:min(100%,560px);aspect-ratio:16/10;object-fit:cover;border-radius:20px;box-shadow:var(--shadow);margin:8px 0}.discovery-card p{max-width:520px;line-height:1.65}.discovery-card small{margin-top:12px;color:var(--muted)}.chapter-head{display:flex;align-items:start;justify-content:space-between;gap:14px}.chapter-head>div{flex:1}.chapter-head img{width:122px;height:122px;border-radius:26px;object-fit:cover;object-position:top}.chapter-list{display:grid;gap:12px}.chapter-card{width:100%;display:grid;gap:4px;text-align:left;border:1px solid var(--line);background:var(--paper);border-radius:18px;padding:17px;color:var(--ink);font:inherit;box-shadow:0 6px 20px rgba(29,55,46,.06)}.chapter-card>span{color:var(--green2);font-size:.72rem;font-weight:900;text-transform:uppercase;letter-spacing:.06em}.chapter-card strong{font:700 1.22rem Georgia,serif}.chapter-card small{color:#3c4742;line-height:1.45}.chapter-card em{margin-top:4px;color:var(--muted);font-size:.72rem;font-style:normal}.page-title{font-size:1.9rem;margin:4px 0 6px}.page-intro{color:var(--muted);line-height:1.5;margin:0 0 18px}.searchbox input{width:100%;border:2px solid #d5ddd8;border-radius:14px;padding:13px 14px;font:inherit;background:#fff}.list,.glossary{display:grid;gap:10px}.knowledge-item{width:100%;border:1px solid var(--line);background:var(--paper);border-radius:16px;padding:14px;text-align:left;color:var(--ink);font:inherit}.knowledge-item strong{display:block;margin-bottom:4px}.knowledge-item small{color:var(--muted);line-height:1.4}.status-dot{float:right;width:10px;height:10px;border-radius:50%;background:#c9cfcc}.status-dot.done{background:#4b8d68}.section-title{font-size:1.25rem;margin:24px 0 10px}.glossary details{background:var(--paper);border:1px solid var(--line);border-radius:15px;padding:0 14px}.glossary summary{padding:14px 0;font-weight:850}.glossary p{line-height:1.5}.empty{padding:26px;text-align:center;color:var(--muted);border:1px dashed #bac4bf;border-radius:16px}.setting{display:flex;justify-content:space-between;gap:18px;align-items:center;padding:16px 0;border-bottom:1px solid var(--line)}.setting:last-child{border-bottom:0}.setting strong{display:block}.setting small{color:var(--muted)}select,.danger{font:inherit;border-radius:11px;padding:9px 10px}.danger{border:1px solid #b95f55;background:#fff;color:#8a352d;font-weight:750}.bottom-nav{position:fixed;z-index:10;bottom:0;left:50%;transform:translateX(-50%);width:min(100%,760px);display:grid;grid-template-columns:repeat(5,1fr);gap:3px;padding:8px 6px calc(8px + env(safe-area-inset-bottom));background:rgba(255,253,248,.96);backdrop-filter:blur(14px);border-top:1px solid rgba(35,75,61,.12)}.bottom-nav button{border:0;background:transparent;color:var(--muted);min-height:58px;border-radius:14px;display:grid;place-items:center;align-content:center;gap:2px;font:inherit}.bottom-nav span{font-size:1.15rem}.bottom-nav b{font-size:.66rem}.bottom-nav button.active{background:#e8f0eb;color:var(--green)}.modal-backdrop{position:fixed;inset:0;z-index:50;display:grid;place-items:center;padding:20px;background:rgba(20,35,29,.72)}.pause-dialog{width:min(100%,430px);background:var(--paper);border-radius:24px;padding:26px;text-align:center}.pause-icon{font-size:3rem}.pause-dialog h2{font-family:Georgia,serif}.pause-dialog p{line-height:1.58}@media(min-width:640px){main{padding:26px}.topbar{padding:18px 26px 12px}.card{padding:26px}.choices{grid-template-columns:repeat(3,1fr)}.chapter-list{grid-template-columns:repeat(2,1fr)}}@media(max-width:480px){.journey-gallery{grid-template-columns:1fr}.journey-gallery img{height:180px}.chapter-head img{width:96px;height:96px}.jupp-lesson{width:88px;height:88px}.lesson-links{flex-direction:column;gap:8px}.orientation{align-items:start}.orientation small{text-align:right}}@media(prefers-reduced-motion:no-preference){.card,.start-card,.discovery-card{animation:rise .28s ease-out}@keyframes rise{from{opacity:0;transform:translateY(7px)}to{opacity:1;transform:none}}}body.reduce-motion *{animation:none!important;transition:none!important}
.term-tip{background:none;border:0;padding:0 1px;margin:0;font:inherit;font-weight:800;color:var(--green2);text-decoration:underline;text-decoration-style:dotted;text-decoration-thickness:2px;text-underline-offset:3px;cursor:pointer;border-radius:4px}
.term-tip:hover,.term-tip:focus-visible{color:var(--gold);outline:none;background:rgba(215,163,63,.14)}
.term-bubble{position:absolute;z-index:50;max-width:min(280px,80vw);background:var(--green);color:#fffdf8;padding:12px 14px;border-radius:14px;box-shadow:var(--shadow);font-size:.92rem;line-height:1.45}
.term-bubble b{display:block;font-family:Georgia,serif;font-size:1.05rem;margin-bottom:4px;color:var(--gold)}
.term-bubble p{margin:0}
.term-bubble::before{content:'';position:absolute;top:-6px;left:18px;width:12px;height:12px;background:var(--green);transform:rotate(45deg)}
@media(prefers-reduced-motion:no-preference){.term-bubble{animation:tipIn .12s ease-out}@keyframes tipIn{from{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:translateY(0)}}}
.decl-table{display:grid;gap:2px;margin:18px 0 4px;border-radius:16px;overflow:hidden;background:var(--line);box-shadow:var(--shadow)}
.decl-row{display:contents}
.decl-cell{background:#fffdf8;padding:9px 11px;font-size:.92rem;display:flex;align-items:center;font-weight:700}
.decl-head .decl-cell{background:var(--cream);font-weight:800}
.decl-fam{flex-direction:column;align-items:flex-start;gap:2px}
.decl-fam small{color:var(--muted);font-weight:400;font-size:.72rem}
.decl-case{flex-direction:column;align-items:flex-start;gap:2px}
.decl-case small{color:var(--muted);font-weight:400;font-size:.72rem}
.decl-active .decl-cell{background:#f7f1df}
.decl-active .decl-case{background:var(--gold);color:#fff}
.decl-active .decl-case small{color:rgba(255,255,255,.85)}
.decl-block{margin:18px 0 4px}
.decl-block .decl-table{margin:0 0 4px}
.decl-tip{margin:10px 0 0;padding:10px 12px;background:#eef4f0;border-radius:12px;font-size:.88rem;line-height:1.5;color:var(--ink)}
.decl-tip b{color:var(--green)}
.version-badge{display:block;margin-top:1px;font-size:.66rem;font-weight:600;letter-spacing:.02em;color:var(--muted);opacity:.8}
.decl-end{color:#1a5788;font-weight:800;text-decoration:underline;text-decoration-thickness:2px;text-underline-offset:2px;text-decoration-color:#7fb2d9;padding-left:1px}
.decl-legend{margin:10px 0 0;padding:10px 12px;background:#eef4f0;border-radius:12px;font-size:.82rem;line-height:1.55;color:var(--ink)}
.decl-legend-stem{font-weight:700}
.decl-legend-end{color:#1a5788;font-weight:800}
.de-article{color:#a3781f;font-weight:800;margin-right:5px}
.de-legend-article{color:#a3781f;font-weight:800}
.decl-de-latin{display:block;margin-top:3px;font-size:.72rem;font-weight:400;color:var(--muted)}
.learn-table-block{clear:both;margin:22px 0 4px}
.learn-table-block>h3{margin:0 0 10px;font-size:1.18rem}
.learn-table .decl-cell{white-space:normal;line-height:1.35}
@media(max-width:600px){
 .decl-block,.learn-table-block{overflow-x:auto;padding-bottom:4px}
 .decl-block .decl-table,.learn-table-block .decl-table{min-width:560px}
 .decl-block .decl-legend,.decl-block .decl-tip,.learn-table-block .decl-legend{min-width:560px}
}
.legal-footer{display:flex;justify-content:center;gap:22px;padding:8px 18px 28px;color:var(--muted);font-size:.78rem}
.legal-footer a,.legal-page a{color:var(--green);text-underline-offset:3px}
.legal-page{width:min(100%,760px);margin:auto;padding:26px 18px 50px}
.legal-page .card{padding:clamp(20px,5vw,38px)}
.legal-page h1{font:700 clamp(2rem,7vw,2.8rem)/1.1 Georgia,serif;margin:0 0 24px}
.legal-page h2{font:700 1.2rem/1.25 Georgia,serif;margin:28px 0 8px}
.legal-page p{line-height:1.65;margin:8px 0}
.concept-loop-panel{margin-top:16px;padding:16px;border:1px solid #d7dfda;border-radius:16px;background:#f7faf8;clear:both}.concept-loop-panel p{line-height:1.55;margin:0 0 12px}.concept-loop-panel em{font-style:normal;font-weight:850;color:var(--green)}.concept-loop-kicker{display:block;margin-bottom:8px;color:var(--green2);font-size:.72rem;font-weight:900;letter-spacing:.06em;text-transform:uppercase}.concept-loop-example{margin:10px 0 14px;padding:12px 14px;border-radius:13px;background:#fff3d9;font-weight:780;line-height:1.45}.concept-loop-panel h4{margin:0 0 10px;font:700 1.05rem Georgia,serif}.concept-loop-choices{display:grid;gap:9px}.concept-loop-actions{display:flex;flex-wrap:wrap;gap:9px;margin-top:12px}.concept-loop-action{font-size:.92rem}.concept-loop-feedback{margin-top:10px!important}.concept-loop-explain{border-color:#e2cf9d;background:#fffaf0}
.legal-back{display:inline-block;margin:0 0 18px;font-weight:800}
.legal-links{display:flex;justify-content:center;gap:24px;margin-top:22px}
.legal-note{margin-top:28px!important;color:var(--muted);font-size:.9rem}

.toolkit-box{max-width:620px;margin:14px 0 4px;padding:14px 16px;border:1px solid #cfdcd3;border-radius:17px;background:#eef5f0;line-height:1.5}
.toolkit-box strong{display:block;color:var(--green)}
.toolkit-box p{margin:6px 0 8px;color:#3c4742}
.toolkit-box a{color:var(--green);font-weight:800}
.part-title{font:700 1.3rem Georgia,serif;margin:22px 0 2px}
.table-fold{border:1px solid var(--line);border-radius:16px;background:var(--paper);margin:0 0 10px;padding:4px 12px}
.table-fold>summary{cursor:pointer;font-weight:850;color:var(--green);padding:10px 0}
.table-fold .learn-table-block h3{display:none}
.placement h2{font:700 1.4rem Georgia,serif;margin:6px 0}
@media(max-width:600px){.learn-table-block .decl-table,.learn-table-block .decl-legend{min-width:0}.learn-table .decl-cell{padding:7px 5px;font-size:.8rem;overflow-wrap:break-word}}

/* ---- Vollversion (grambau) ---- */
.vv-schloss{font-style:normal;margin-left:4px}
.vv-karte .vv-thema{color:var(--muted,#5b6575);margin:4px 0 10px}
.vv-code{display:grid;gap:6px;margin:12px 0}
.vv-code label{font-weight:700}
.vv-code-reihe{display:flex;gap:8px;flex-wrap:wrap}
.vv-code input{flex:1 1 160px;min-width:0;font:inherit;padding:10px 12px;border:1px solid #c9d1de;border-radius:10px;text-transform:uppercase;letter-spacing:.04em}
.vv-code small{color:var(--muted,#5b6575)}
.vv-meldung{min-height:1.4em;margin:8px 0 0;font-weight:600}
.vv-meldung.gut{color:#1c7c3c}
.vv-status{margin-top:18px}
.vv-mehr{margin:22px 0 8px;display:grid;gap:8px}
.vv-mehr h3{margin:0 0 4px}
.vv-mehr-eintrag{display:grid;gap:2px;padding:12px 14px;border:1px solid #d9dfe8;border-radius:12px;text-decoration:none;color:inherit;background:var(--card,#fff)}
.vv-mehr-eintrag span{color:var(--muted,#5b6575);font-size:.95em}
.vv-appstore{margin:10px 0 0}

.vv-werkstatt{display:grid;gap:4px;margin:6px 0 14px;padding:14px 16px;border:1px solid #c9d8cf;border-radius:14px;background:#eef6f1;color:inherit;text-decoration:none}
.vv-werkstatt span{color:var(--muted,#5b6575);font-size:.95em}
