@font-face{font-family:Title;src:url(assets/title.woff2)}@font-face{font-family:Body;src:url(assets/body.woff2)}*{box-sizing:border-box}body{margin:0;background:#eeeadf;color:#213f49;font-family:Body,system-ui}main{max-width:1500px;margin:auto;padding:24px 42px}header{display:flex;align-items:center;gap:20px;border-bottom:1px solid #213f4930;padding-bottom:20px}.wordmark{font:700 38px Title;text-decoration:none;color:inherit}.wordmark span{color:#b47737}.eyebrow{font-size:10px;letter-spacing:.18em;font-weight:600}.status{margin-left:auto;font-size:10px;letter-spacing:.08em}.status i{display:inline-block;width:6px;height:6px;border-radius:100%;background:#b77d46;margin-right:7px}.intro{display:flex;justify-content:space-between;align-items:end;padding:28px 0 25px}.intro .eyebrow{margin:0 0 12px}h1{font:500 clamp(38px,5vw,68px)/.95 Title;margin:0}h1 em{font-weight:400;color:#936c42}.lede{font-size:13px;line-height:1.7;margin:0 0 3px}.stage{position:relative;border-radius:6px;overflow:hidden;background:#244953;box-shadow:0 12px 35px #213f4920}canvas{display:block;width:100%;aspect-ratio:16/9;outline:none;touch-action:none}.hud{position:absolute;top:0;left:0;right:0;display:flex;align-items:center;gap:20px;padding:20px 24px;color:#fff4da;background:linear-gradient(#122f43b0,transparent);font-size:12px;pointer-events:none}.hud button{pointer-events:auto}#chapter{letter-spacing:.1em;font-size:10px}#quest{margin:auto}#health{color:#f4c483;letter-spacing:5px;font-size:20px}button{font:inherit;cursor:pointer;color:inherit}#pause{border:1px solid #fff5;background:#16364860;border-radius:100%;width:30px;height:30px}.panel{position:absolute;left:7%;top:50%;transform:translateY(-50%);color:#fff3d9;max-width:410px}.panel h2{font:500 clamp(30px,4.5vw,64px)/1 Title;margin:18px 0}.panel p{font-size:14px;line-height:1.7;max-width:320px;color:#edf2e7}.primary{background:#f3dfb7;border:0;color:#213f49;padding:15px 25px;border-radius:3px;margin:12px 0 16px;display:block;font-weight:600}.primary:disabled{opacity:.5}.small{font-size:10px;opacity:.7}.toast{position:absolute;bottom:40px;left:50%;transform:translateX(-50%);background:#122d41e8;border:1px solid #fff3;color:#fff2d6;padding:11px 20px;font-size:13px;border-radius:4px;pointer-events:none;opacity:0;transition:opacity .2s;text-align:center;max-width:90%}.toast.show{opacity:1}.touch{position:absolute;bottom:12px;left:12px;right:12px;display:none;justify-content:space-between;pointer-events:none}.touch>div{display:flex;gap:7px}.touch button{pointer-events:auto;border:1px solid #fff8;background:#133447ba;color:white;border-radius:10px;width:45px;height:44px;touch-action:none;font-size:23px;user-select:none}.touch button.active{background:#c58e45}footer{display:flex;align-items:center;justify-content:space-between;padding-top:14px;font-size:11px}footer p{margin:0}footer b{letter-spacing:.05em;font-size:10px}footer span{padding:0 12px;color:#aa834a}#restart{background:none;border:0;border-bottom:1px solid #213f4950;padding:7px 0}.footnote{font-size:10px;color:#687a7b;line-height:1.7;max-width:850px}.footnote span{white-space:nowrap}[hidden]{display:none!important}@media(pointer:coarse){.stage.playing .touch{display:flex}}@media(max-width:650px){main{padding:14px}.status{display:none}header{padding-bottom:10px}.intro{padding:22px 0 18px}.lede{display:none}h1{font-size:38px}.panel h2{font-size:28px;margin:8px 0}.panel{max-width:58%}.panel p{font-size:10px;line-height:1.45;margin:8px 0}.panel .eyebrow,.small{font-size:7px}.primary{padding:9px 14px;font-size:11px;margin:5px 0}.hud{padding:9px;gap:8px;font-size:9px}#chapter{font-size:8px}#health{font-size:14px;letter-spacing:2px}footer{gap:12px;align-items:start}footer p{line-height:1.7;max-width:75%}.toast{font-size:10px;bottom:62px;padding:7px 10px}}@media(prefers-reduced-motion:reduce){.toast{transition:none}}
.chapter-actions{display:flex;gap:18px;margin:0 0 18px}.chapter-actions button{padding:0 0 5px;border:0;border-bottom:1px solid #f1dbad66;background:none;color:#f1dbad;font-size:11px}.chapter-actions button:disabled{opacity:.4}.score-controls{display:flex;justify-content:space-between;align-items:center;gap:24px;padding:20px 0;border-bottom:1px solid #213f4920;margin-bottom:14px;font-size:11px}.score-controls>div,.score-controls nav{display:flex;align-items:center;gap:18px}.score-controls button{border:1px solid #213f4950;border-radius:20px;padding:9px 16px;background:transparent}.score-controls button[aria-pressed=true]{background:#213f49;color:#eee7d8}.score-controls label{display:flex;align-items:center;gap:8px;color:#607573}.score-controls input{width:84px;accent-color:#946c40}.score-controls a,.development-links a{color:inherit;text-decoration:none;border-bottom:1px solid #213f4940;padding-bottom:4px}.score-controls nav span{color:#607573}.development-links{display:flex;gap:22px;padding-bottom:20px;font-size:11px}.touch button{width:40px}.panel{max-width:470px}.panel p{max-width:370px}.stage:focus-within{outline:2px solid #b79455;outline-offset:3px}button:focus-visible,a:focus-visible{outline:2px solid #b79455;outline-offset:4px}@media(max-width:800px){.score-controls{align-items:start;flex-direction:column;gap:16px}.score-controls nav{flex-wrap:wrap}.chapter-actions{gap:12px;margin-bottom:9px}.chapter-actions button{font-size:9px}.touch{gap:8px}.touch>div{gap:4px}.touch button{width:36px;height:36px;font-size:19px}.panel .small{display:none}.hud #quest{max-width:40%;text-align:right}.development-links{flex-wrap:wrap}}@media(max-width:500px){.intro{padding:15px 0}.panel p{display:none}.panel{max-width:68%}.chapter-actions button{font-size:8px}.touch button{width:30px;height:31px}.touch{left:6px;right:6px;bottom:6px}.hud #chapter{font-size:6px}.hud #quest{font-size:7px}.toast{bottom:42px}}
.stage.touch-enabled.playing .touch{display:flex}#touch-toggle{background:transparent;border:1px solid #213f4940;border-radius:14px;padding:5px 10px;white-space:nowrap}#touch-toggle[aria-pressed=true]{background:#213f49;color:#eee7d8}@media(max-height:500px) and (orientation:landscape){main:has(.stage.game-started){padding:8px}main:has(.stage.game-started)>header,main:has(.stage.game-started)>.intro{display:none}.stage.game-started{max-width:calc((100svh - 18px)*16/9);margin-inline:auto}.stage.playing .touch button{width:44px;height:40px}.stage.playing .hud{padding:9px 14px}.stage.playing .toast{bottom:60px}}
@media(max-width:500px) and (orientation:portrait){.touch{position:relative;left:auto;right:auto;bottom:auto;padding:10px 12px;background:#173745;align-items:center}.touch>div:last-child{display:grid;grid-template-columns:repeat(3,44px);gap:7px}.touch button{width:44px;height:44px;font-size:21px}.touch>div:first-child{gap:7px}.stage.touch-enabled .toast{bottom:128px}footer{flex-wrap:wrap}footer p{max-width:100%;width:100%}.panel{top:102px;transform:translateY(-50%)}}
@media(max-width:500px) and (pointer:coarse){.stage.playing .toast{bottom:128px}}

#help{position:fixed;z-index:20;inset:50% auto auto 50%;transform:translate(-50%,-50%);margin:0;width:min(560px,94vw);max-height:90svh;overflow:auto;background:#163743;color:#f1dfb9;border:1px solid #aa8a55;border-radius:8px;padding:24px;box-shadow:0 0 0 100vmax #071923d9}#help h2{font:36px Title;margin:0 0 18px}#help dl{display:grid;grid-template-columns:135px 1fr;gap:12px;font-size:13px}#help dd{margin:0;color:#deded1}#help p{font-size:12px;line-height:1.6}#help button{background:#e4cfa5;color:#163743;padding:10px 18px;border:0;border-radius:4px}.score-controls>div{flex-wrap:wrap}

.practice{display:flex;align-items:center;gap:8px;font-size:11px;margin:0 0 18px}.practice select,.practice button{background:#163743;color:#f1dfb9;border:1px solid #f1dfb955;border-radius:3px;padding:7px}.practice label{font-size:10px}@media(max-width:650px){.practice{font-size:9px;margin:5px 0}.practice label{display:none}.practice select,.practice button{padding:4px}.panel h2{font-size:24px}}
.stage:not(.playing) .toast{display:none}

[hidden]{display:none!important}.campaign-menu{padding:18px 0;border-bottom:1px solid #213f4930}.campaign-menu>div{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.campaign-menu label{font-size:12px}.campaign-menu select,.campaign-menu button{font:inherit;font-size:12px;border:1px solid #213f4940;border-radius:20px;padding:9px 14px;background:transparent;color:inherit}.campaign-menu #continue{background:#213f49;color:#eee7d8}.campaign-menu p{font-size:11px;opacity:.7;margin-bottom:0}.embedded-game{background:#eee7d8}.embedded-game main{max-width:none;padding:8px 12px}.embedded-game main>header,.embedded-game .intro,.embedded-game .development-links,.embedded-game .footnote,.embedded-game .score-controls nav,.embedded-game .practice{display:none}.embedded-game .score-controls{padding:10px 0}.embedded-game footer{margin:10px 0}.embedded-game footer p{font-size:10px}.embedded-game .campaign-menu{padding:10px 0}.embedded-game .stage{border-radius:8px}@media(max-width:600px){.campaign-menu select{max-width:65vw}.campaign-menu>div{gap:6px}.campaign-menu label{width:100%}.embedded-game .panel{max-width:90%;left:5%;top:45%;}.embedded-game .panel h2{font-size:23px}.embedded-game .panel .primary{font-size:12px;padding:8px 12px}}

.release-game .practice{display:none}

.embedded-game .stage.game-started{max-width:min(100%,calc((var(--host-height,100vh) - 24px)*16/9));margin-inline:auto}

/* A reserved status rail outside the canvas keeps feet, traps and touch clear. */
.game-status{min-height:66px;padding:12px 4px;border-bottom:1px solid #213f4930;display:grid;grid-template-columns:minmax(140px,1fr) 3fr;align-items:start;gap:18px;font-size:12px;line-height:1.5}.game-status>span{font-size:10px;letter-spacing:.04em;opacity:.65}.game-status .toast{position:static;transform:none;max-width:none;padding:0;border:0;background:none;color:inherit;text-align:left;opacity:1;transition:none;border-radius:0}.game-status .toast:empty:before{content:'Enter starten · H Tastenhilfe'}@media(max-width:600px){.game-status{grid-template-columns:1fr;gap:3px;min-height:88px;font-size:11px}}

.status-meta{display:grid;gap:3px;font-size:10px;line-height:1.4;opacity:.7}.status-meta #quest{margin:0;font-size:11px}
